注意头指针和头节点区别
单链表:
带头节点:head->next = null
不带头节点:head = null
头指针指向链表第一个节点 头节点是链表第一个节点(不带数据)
双链表:
带头节点:head->next = null
不带头节点:head = null
和单链表类似
循环单链表:
终端节点指针指向第一个节点(可能是头节点)
带头节点:head->next = head
不带头节点:head = null
循环双链表:
第一个节点piror指向终端节点,终端节点next指向第一个节点(可能是头节点)
带头节点:head->next = head 或 head->piror = head
不带头节点:head = null
静态链表:
链表节点空间相当于整个内存 ,静态链表来自一个结构体数组
数组中的每个节点有两个分量:
数据元素分量data
指针分量(储存数组下标的整型变量)
插入删除顺序表平均移动一半元素,平均时间复杂度O(n)