#include <iostream>
using namespace std;
//C++单向链表模板
class MyListForward
{
private:
struct ListNode
{
int val;
ListNode *next;
ListNode(int x):val(x),next(nullptr){} //这句话是什么意思呢
};
ListNode* head;
public:
MyListForward():head(nullptr){} //这句话是什么意思呢
具体是哪里没懂?
给的代码是一个经典的链表节点定义,首先明确链表这个概念,单链表可以理解为每个节点是一个小盒子,然后每个盒子都会有一个单项链条连向后一个盒子,这样所有盒子就凑成了一条单向(只能从头访问到尾)链表
单链表里面每个节点都会保存两个值,一个是该节点本身的数据(可以是任意类型,也可以是一系列的值),另一个就是指向下一个节点的指针(用于遍历该链表)