单链表(Singly LInked LIst)
单链表(Singly Linked List) 单链表是比较常见的链表类型。其中每个节点都有一个指向序列下一个节点的指针。这意味着,对链表执行遍历时,只能在一个方向上从头到尾的遍历;为了能够访问链表中的最后一个节点,我们需要遍历链表中的所有元素。 单链表最后一个节点的指针域通常为NULL,在遍历到这个节点时,它指定当前链表已经结束,没有其它要遍历的节点了。 单链表的实现 定义节点 节点由两个部分组成,一个部分存储本身的数据,另一部分存储序列中下一个节点所在的内存地址。为了简单表示,我们使用一个整数作为节点的数据域,节点的数据域不仅仅局限于一个数值,可以是其它复杂的数据类型。 在C语言中,节点被定义为structure.该节点中的一个节点指向同类节点的另外一个节点。 struct Node { int data ; struct Node * next ; } * head = NULL ; 首先使用所需变量名创建一个新的节点,我们将其称之为newNode: struct Node * newNode ; 可以使用箭头字符访问存储在此Node中的数据: newNode -> data 同样的,使用执行节点的 *next 成员访问当前序列中的下一个节点: newNode -> next 头指针节点 头指针节点用于链表的第一个节点,用于标识链表的起点,并为链表的遍历提供入口。