摘要:
1、单循环链表 将单链表中终端结点的指针端由空指针改为指向头节点,就使整个单链表形成一个环,这种头尾相接的单链表称为单循环链表,简称循环链表。 其实循环链表和单链表的主要差异就在于循环的判断条件上,原来是判断 p->next是否为空,现在则是p->next不等于头结点,则循环未结束。 2、双向链表 阅读全文
摘要:
快慢指针: 定义两个指针,一个快,一个慢,可以有多种用途。例如:快速找到位置长度单链表中的中间结点;对于循环链表中利用快慢指针也可以判断是否存在环。 快速找到位置长度单链表中的中间结点: 1)使用一个指针,先索引一遍获取总长度,再取长度一半去循环获取到中间值;O(3L/2)。 2)使用两个指针,快指 阅读全文
摘要:
1.编程实现单链表的建立/测长/打印 typedef struct student { int data; struct student *next; }node; node *creat() { node *head, *p, *s; int x, cycle = 1; head = (node 阅读全文