链表是一种通过指针串联起的线性结构,每个节点由两部分组成:一个数据域,一个指针域(存放指向下一节点的指针),最后一个节点的指针域指向null。 链表入口节点是头结点head。 双链表:两个指针域,指向下一节点和上一节点。(向前向后查询) 循环链表:首尾相连。 存储方式:通过指针,可以散乱的分布数据。 定义链表 手写链表: struct ListNode { int val; ListNode *next; ListNide() : val(0), next(NULL){}; ListNode(int x) : val(x), next(NULL){}; ListNide(int x, ListNode *next) : val(x), next(next){}; } struct ListNode { int val; ListNode *next; ListNode(int x) : val(x), next(NULL){}; }; 可以不定义构造函数,C++默认生成一个构造函数,但是 这个构造函数不会初始化任何成员变量。 通过自己定义构造函数初始化节点:...