飞行日记之数据结构与算法分析——单链表的创建
单链表的创建
单链表的创建一般主流分为两种创建方式:头插法和尾插法。
- 头插法:将新节点插入到链表头节点之后,最终链表节点顺序与插入节点顺序相反(这里头节点不存储具体值)。
- 尾插法:将新节点插入到链表尾节点之后,最终链表节点顺序与插入节点顺序一致。
头插法
1)创建头节点,维护head指针(引用)来指向头节点; 2)newNode表示待插入节点,维护newnode指向新节点; 3) case1:当链表为空时,即首次插入新节点,将head.next指向新插入节点,即head.next = newNode;
case2:如果不是首次插入新节点,将新节点插入到head和head.next指向节点之间,即 newnode.next = head.next;
head.next = newNode;
尾插法
1)创建头节点,维护head指针(引用)来指向头节点; 2)newNode表示待插入节点,维护tail指针,指示链表尾节点,当tail.next == null时,表示tail指向尾节点; 3) case1:当链表为空时,即首次插入新节点,将head.next指向新插入节点,即head.next = newNode;
case2:如果不是首次插入新节点,需要遍历整个链表定位到尾节点,并将新节点插入到尾节点之后,即 tail.next = newNode;
Quiet and Quick, Salute!