第三章 单链表 题目和答案

合集下载

链表练习题及答案

链表练习题及答案

1、已知L是带表头的单链表,其P结点既不是首元结点,也不是尾元结点,a.删除p结点的直接后继的语句是11,3,14b.删除p结点的直接前驱的语句是10,12,8,11,3,14c.删除p结点的语句序列是10,7,3,14d.删除首元结点的语句序列是12,10,13,14e.删除尾元结点的语句序列是9,11,3,14(1)p=p->next;(2) p->next=p;(3)p->next=p->next->next;(4)p=p->next->next;(5)while(p)p=p->next;(6)whlie(Q->next){p=Q;Q=Q->next;}(7)while(p->next!=Q)p=p->next;(8)while(p->next->next!=Q)p=p->next;(9)while(p->next->next)p=p->next;(10)Q=p;(11)Q=p->next;(12)p=L;(13)L=L->next;(14)free(Q);2、已知L是带表头的单链表,其P结点既不是首元结点,也不是尾元结点,a.在p结点后插入s结点的语句序列是4,1b.在p结点前插入s结点的语句序列是7,11,8,4,1c.在表首插入s结点的语句序列是5,12d.在表尾插入s结点的语句序列是7,9,4,1或11,9,1,61.p-> next =s;2.p-> next=p-> next-> next;3.p->next=s->next;4.s->next=p-> next;5.s-> next=L;6.s->next=NULL;7.q=p ;8.while(p->next!=q) p=p->next;9.while(p->next!=NULL) p=p->next;10.p =q;11.p=L;12.L=s;13.L=P;3、已知P结点是某双向链表的中间结点,从下列提供的答案中选择合适的语句序列a.在P结点后插入S结点的语句序列是12,7,3,6b.在P结点前插入S结点的语句序列是13,8,5,4c.删除p结点的直接后继结点的语句序列是15,1,11,18d.删除p结点的直接前驱结点的语句序列是16,2,10,18e.删除p结点的语句序列是9,14,171.P->next=P->next->next;2.P->priou=P->priou->priou;3.P->next=S;4.P->priou=S;5.S->next=P;6.S->priou=P;7.S->next=P->next;8.S->priou=P->priou;9.P->priou->next=P->next;10.P->priou->next=P;11.P->next->priou=P;12.P->next->priou=S;13.P->priou->next=S;14.P->next->priou=P->priou;15.Q=p->next;16.Q=P->priou;17.free(P);18.free(Q);。

数据结构(C语言版)第三四章习题答案解析

数据结构(C语言版)第三四章习题答案解析

第3章栈和队列习题1.选择题(1)若让元素1,2,3,4,5依次进栈,则出栈次序不可能出现在()种情况。

A.5,4,3,2,1 B.2,1,5,4,3 C.4,3,1,2,5 D.2,3,5,4,1(2)若已知一个栈的入栈序列是1,2,3,…,n,其输出序列为p1,p2,p3,…,pn,若p1=n,则pi为()。

A.i B.n-i C.n-i+1 D.不确定(3)数组Q[n]用来表示一个循环队列,f为当前队列头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数小于n,计算队列中元素个数的公式为()。

A.r-f B.(n+f-r)%n C.n+r-f D.(n+r-f)%n (4)链式栈结点为:(data,link),top指向栈顶.若想摘除栈顶结点,并将删除结点的值保存到x中,则应执行操作()。

A.x=top->data;top=top->link; B.top=top->link;x=top->link;C.x=top;top=top->link; D.x=top->link;(5)设有一个递归算法如下int fact(int n) { //n大于等于0if(n<=0) return 1;else return n*fact(n-1); } 则计算fact(n)需要调用该函数的次数为()。

A.n+1 B.n-1 C. nD. n+2(6)栈在()中有所应用。

A.递归调用 B.函数调用 C.表达式求值 D.前三个选项都有(7)为解决计算机主机与打印机间速度不匹配问题,通常设一个打印数据缓冲区。

主机将要输出的数据依次写入该缓冲区,而打印机则依次从该缓冲区中取出数据。

该缓冲区的逻辑结构应该是()。

A.队列 B.栈 C.线性表 D.有序表(8)设栈S和队列Q的初始状态为空,元素e1、e2、e3、e4、e5和e6依次进入栈S,一个元素出栈后即进入Q,若6个元素出队的序列是e2、e4、e3、e6、e5和e1,则栈S的容量至少应该是()。

单向链表的选择题

单向链表的选择题

关于单向链表的选择题:1.单向链表中,删除一个节点需要的时间复杂度是_______。

A. O(1)B. O(n)C. O(log n)D. O(n^2)2.在单向链表中,插入一个节点需要的时间复杂度是_______。

A. O(1)B. O(n)C. O(log n)D. O(n^2)3.单向链表相比于数组,其优点是_______。

A. 查找速度快B. 插入和删除操作方便C. 存储空间少D. 可以动态扩展4.在单向链表中,若要查找某个节点,则时间复杂度为_______。

A. O(1)B. O(n)C. O(log n)D. O(n^2)5.单向链表的一个缺点是_______。

A. 查找速度慢B. 插入和删除操作不方便C. 存储空间大D. 不能动态扩展6.在单向链表中,要插入一个新的节点,需要修改哪几个节点的指针?A. 新节点本身B. 新节点的父节点C. 新节点的子节点D. 新节点的兄弟节点7.在单向链表中,删除一个节点后,如何处理被删除节点的后继节点的指针?A. 置为空B. 指向被删除节点的父节点C. 指向被删除节点的下一个节点D. 保持不变8.单向链表与双向链表的主要区别是什么?A. 单向链表的节点只有一个指针,而双向链表的节点有两个指针B. 单向链表的节点只能沿一个方向遍历,而双向链表的节点可以沿两个方向遍历C. 单向链表的节点比双向链表的节点更小D. 单向链表的节点没有颜色,而双向链表的节点有颜色9.在单向链表中,如何找到中间的节点?A. 需要遍历整个链表B. 无法找到中间的节点,只能找到第n个节点C. 只能找到头节点和尾节点D. 需要知道头节点的地址和链表的长度10.在单向链表中,插入一个新节点时,需要注意哪些问题?A. 只需要考虑新节点的数据B. 需要考虑新节点的指针指向问题C. 需要考虑新节点的颜色问题D. 需要考虑新节点的年龄问题。

数据结构-C语言版:单链表例题

数据结构-C语言版:单链表例题
单链表例题Байду номын сангаас
delmax是用类程序设计语言描述的,删除带表 头结点的单链表 lk 中数据域值最大的结点的算法。 链表中的结点 node 包括一个整型数据域 data 和一 个指向后继结点的指针 域 next,如图所示。
data next
lk
node
类程序设计语言描述形式 p 指向的结点的数据域用 p^.data表示、指针域用 p^. next 表示。算法中,“←”为赋值号,nil 为空指 针。
据域值最大结点的
(前
{ m←p^.data;
驱结点或后继结点)。
(3); } q←p; p←p^.next }
6)若算法中的链表是循环单链表,
则程序中的“p<>nil”这个条件应
改为

7)设 lk 单链表中的结点数据域值
q←r^.next;
依次为 3,1,7,5,4,则程序执
(4); dispose(q)
Algorithm delmaxl(lk) //lk 为单链表的头指针//
{ r←lk;
// m 为整型量//
p←lk^. next;
//p,q,r 为辅助指针//
if p<>nil
{ m←p^.data;
(1);
p←p^.next;
while p<>nil
{ if
(2)
回答以下问题:
5)该算法中的 r 变量最终指向数
行结束时,m=

}
}
参考答案
(1) q←p (2) p^.data>m (3) r←q (4) r^.next←q^.next (5) 前驱结点 (6) p!=lk (7) 7

数据结构单元练习习题选解

数据结构单元练习习题选解

第1章习题选解一、选择题1-1 下列关于数据和逻辑结构的叙述中,哪一个是不正确的()。

A ) 数据的逻辑结构是数据间关系的描述B) 数据的逻辑结构抽象反映数据元素间的逻辑关系C) 数据的逻辑结构具体反映数据在计算机中的存储方式D) 数据的逻辑结构分为线性结构和非线性结构【解析】本题考点是数据结构的组成。

数据结构包括 3 个方面的内容:数据的逻辑结构、数据的存储结构、数据的运算。

数据的逻辑结构是数据关系的描述,只抽象反映数据元素间的逻辑关系,而不管在计算机中的存储方式;数据结构包括线性结构和非线性结构。

数据的存储结构是逻辑结构在计算机中的存储实现。

数据的运算是逻辑结构相应的各种运算。

【答案】 C1-2 以下关于数据的存储结构的叙述中哪一条是正确的()。

A) 数据的存储结构是数据间关系的抽象描述B) 数据的存储结构是逻辑结构在计算机存储器中的实现C) 数据的存储结构分为线性结构和非线性结构D) 数据的存储结构对数据运算的具体实现没有影响【解析】本题的考点是数据结构的组成。

数据结构包括 3 个方面的内容:数据的逻辑结构、数据的存储结构、数据的运算。

数据的逻辑结构是数据关系的描述,只抽象反映数据元素间的逻辑关系,而不管在计算机中的存储方式;数据的逻辑结构包括线性结构和非线性结构。

数据的存储结构是逻辑结构在计算机中的存储实现。

数据的运算是逻辑结构相应的各种运算,每一种逻辑结构都有一个运算的集合。

【答案】 B二、简答题1-1 数据结构的存储方式有哪几种?【解析】常用的存储表示方法有四种:1 、顺序存储方法:它是把逻辑上相邻的结点存储在物理位置相邻的存储单元里,结点间的逻辑关系由存储单元的邻接关系来体现。

由此得到的存储表示称为顺序存储结构,通常借助程序语言的数组描述。

2 、链接存储方法:它不要求逻辑上相邻的结点在物理位置上亦相邻,结点间的逻辑关系是由附加的指针字段表示。

由此得到的存储表示称为链式存储结构, 通常借助于程序语言的指针类型描述。

数据结构练习题第三章栈、队列和数组习题及答案

数据结构练习题第三章栈、队列和数组习题及答案

第三章栈、队列和数组一、名词解释:1.栈、栈顶、栈底、栈顶元素、空栈2.顺序栈3.链栈4.递归5.队列、队尾、队头6.顺序队7.循环队8.队满9.链队10.随机存储结构11.特殊矩阵12.稀疏矩阵13.对称方阵14.上(下)三角矩阵二、填空题:1.栈修改的原则是_________或称________,因此,栈又称为________线性表。

在栈顶进行插入运算,被称为________或________,在栈顶进行删除运算,被称为________或________。

2.栈的基本运算至少应包括________、________、________、________、________五种。

3.对于顺序栈,若栈顶下标值top=0,此时,如果作退栈运算,则产生“________”。

4.对于顺序栈而言,在栈满状态下,如果此时在作进栈运算,则会发生“________”。

5.一般地,栈和线性表类似有两种实现方法,即________实现和________实现。

6.top=0表示________,此时作退栈运算,则产生“________”;top=sqstack_maxsize-1表示________,此时作进栈运算,则产生“________”。

7.以下运算实现在顺序栈上的初始化,请在________处用适当的句子予以填充。

int InitStack(SqStackTp *sq){ ________;return(1);}8.以下运算实现在顺序栈上的进栈,请在________处用适当的语句予以填充。

Int Push(SqStackTp *sq,DataType x){ if(sp->top==sqstack_maxsize-1}{error(“栈满”);return(0);}else{________________:________________=x;return(1);}}9.以下运算实现在顺序栈上的退栈,请在________________用适当句子予以填充。

单链表考研题库

单链表考研题库

单链表考研题库 1. 单链表的基本概念 - 什么是单链表? - 单链表与数组有何不同?

2. 单链表的实现 - 如何使用类和对象实现单链表? - 描述单链表节点的一般结构。

3. 单链表的遍历 - 如何遍历单链表? - 遍历单链表的时间复杂度是多少?

4. 单链表的插入操作 - 如何在单链表的头部插入一个新节点? - 如何在单链表的尾部插入一个新节点? - 如何在单链表的中间插入一个新节点?

5. 单链表的删除操作 - 如何删除单链表的头部节点? - 如何删除单链表的尾部节点? - 如何删除单链表中的特定节点?

6. 单链表的反转 - 描述单链表反转的过程。 - 反转单链表的时间复杂度是多少?

7. 单链表的查找 - 如何在单链表中查找一个特定值的节点? - 查找操作的时间复杂度是多少?

8. 单链表的排序 - 描述几种常见的单链表排序方法。 - 每种排序方法的时间复杂度是多少?

9. 单链表的合并 - 如何合并两个已排序的单链表? - 合并操作的时间复杂度是多少?

10. 单链表的循环引用问题 - 什么是循环引用? - 如何检测单链表中是否存在循环引用?

11. 单链表的空间复杂度分析 - 单链表的空间复杂度是多少? - 与数组相比,单链表在空间使用上有何优势?

12. 单链表的动态内存管理 - 如何在单链表中管理动态分配的内存? - 如何避免内存泄漏?

13. 单链表的应用场景 - 描述单链表在实际应用中的一些场景。 - 为什么在这些场景中选择使用单链表?

结束语 通过上述题目的练习,同学们可以更深入地理解单链表的工作原理和应用场景。单链表作为一种基础的数据结构,在计算机科学中有着广泛的应用。掌握单链表的实现和操作对于深入学习更高级的数据结构和算法非常重要。希望这些题目能够帮助同学们在考研复习中取得更好的成绩。

单链表、双链表、循环链表和静态链表的习题

单链表、双链表、循环链表和静态链表的习题

单链表、双链表、循环链表和静态链表的习题一、单项选择题1.关于线性表的顺序存储结构和链式存储结构的描述中,正确的是()。

Ⅰ.线性表的顺序存储结构优于其链式存储结构Ⅱ.链式存储结构比顺序存储结构能更方便地表示各种逻辑结构Ⅲ.如频繁使用插入和删除结点操作,顺序存储结构更优于链式存储结构Ⅳ.顺序存储结构和链式存储结构都可以进行顺序存取A. Ⅰ、Ⅱ、ⅢB. Ⅱ、ⅣC. Ⅱ、ⅢD. Ⅲ、Ⅳ2.对于一个线性表既要求能够进行较快速地插入和删除,又要求存储结构能反映数据之间的逻辑关系,则应该用()。

A.顺序存储方式B.链式存储方式C.散列存储方式D.以上均可以3.对于顺序存储的线性表,其算法的时间复杂度为O(1)的运算应该是()。

A.将n个元素从小到大排序B.删除第i个元素(1<i<n)C.改变第i个元素的值(1<=i<=n)D.在第i个元素后插入一个新元素(1<=i<=n)4.下列关于线性表说法正确的是()。

Ⅰ.顺序存储方式只能用于存储线性结构Ⅱ.取线性表的第i个元素的时间同i的大小有关Ⅲ.静态链表需要分配较大的连续空间,插入和删除不需要移动元素Ⅳ.在一个长度为n的有序单链表中插入一个新结点并仍保持有序的时间复杂度为O(n) Ⅴ.若用单链表来表示队列,则应该选用带尾指针的循环链表A. Ⅰ、ⅡB.Ⅰ、Ⅲ、Ⅳ、ⅤC. Ⅳ、ⅤD. Ⅲ、Ⅳ、Ⅴ5.设线性表中有2n个元素,()在单链表上实现要比在顺序表上实现效率更高。

A.删除所有值为x的元素B.在最后一个元素的后面插入一个新元素C.顺序输出前k个元素D.交换第i个元素和第2n-i-l个元素的值(i=0,…, n-1)6.在一个单链表中,已知q所指结点是p所指结点的前驱结点,若在q和p之间插入结点s,则执行()。

A .s->next=p->next;p->next=s; B.p->next=s->next; s->next=p;C. q->next=s;s->next=p;D. p->next=s;s->next=q;7.给定有n个元素的一维数组,建立一个有序单链表的最低时间复杂度是()。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第2章 自测卷答案 一、填空

1.顺序表中逻辑上相邻的元素的物理位置 相互 相邻。单链表中逻辑上相邻的元素的物理位置 不 相邻。

2.在单链表中,除了首元结点外,任一结点的存储位置由 其直接前驱结点值域 指示。 3. 在n个结点的单链表中要删除已知结点*p,需找到它的 地址 。 二、判断正误(在正确的说法后面打勾,反之打叉) 1. 链表的每个结点中都恰好包含一个指针。 X 2. 链表的物理存储结构具有同链表一样的顺序。X 3. 链表的删除算法很简单,因为当删除链中某个结点后,计算机会自动地将后续的各个单元向前移动。X 4. 线性表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。Y 5. 顺序表结构适宜于进行顺序存取,而链表适宜于进行随机存取。 Y 6. 顺序存储方式的优点是存储密度大,且插入、删除运算效率高。X 7. 线性表在物理存储空间中也一定是连续的。X 8. 线性表在顺序存储时,逻辑上相邻的元素未必在存储的物理位置次序上相邻。X 9. 顺序存储方式只能用于存储线性结构。X 10. 线性表的逻辑顺序与存储顺序总是一致的。X

三、单项选择题 ( A)1. 链接存储的存储结构所占存储空间: (A) 分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针 (B) 只有一部分,存放结点值 (C) 只有一部分,存储表示结点间关系的指针 (D) 分两部分,一部分存放结点值,另一部分存放结点所占单元数

(B )2. 链表是一种采用 存储结构存储的线性表; (A)顺序 (B)链式 (C)星式 (D)网状

( D )3. 线性表若采用链式存储结构时,要求内存中可用存储单元的地址: (A)必须是连续的 (B)部分地址必须是连续的 (C)一定是不连续的 (D)连续或不连续都可以

(B )4. 线性表L在 情况下适用于使用链式结构实现。 (A)需经常修改L中的结点值 (B)需不断对L进行删除插入 (C)L中含有大量的结点 (D)L中结点结构复杂

( C)5. 单链表的存储密度 (A)大于1; (B)等于1; (C)小于1; (D)不能确定

( A)6、在单链表的一个结点中有 个指针。 2

A、1 B、2 C、3 D、4 ( D )7、设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用 最节省时间。 A、单链表 B、单循环链表 C、带尾指针的单循环链表 D、带头结点的双循环链表 (B )8、在单链表指针为p的结点之后插入指针为s的结点,正确的操作是 。 A、p->next=s;s->next=p->next; B、s->next=p->next;p->next=s; C、p->next=s;p->next=s->next; D、p->next=s->next;p->next=s; (C )9、对于一个头指针为head的带头结点的单链表,判定该表为空表的条件是 。 A、head==NULL B、head→next==NULL C、head→next==head D、head!=NULL (head指向谁的) ( c )10、在双向链表指针p的结点前插入一个指针q的结点操作是 。 A、p->prior=q;q->next=p;p->prior->next=q;q->prior=q; B、p->prior=q;p->prior->next=q;q->next=p;q->prior=p->prior; C、q->next=p;q->prior=p->prior;p->Prior->next=q;p->prior=q; D、q->prior=p->prior;q->next=q;p->prior=q;p->prior=q; (A )11、在一个单链表中,若删除P所指结点的后续结点,则执行 。 A、p-next=p->next->next; B、p=p->next;p->next=p->next->next; C、p->next=p->next; D、p=p->next->next; ( A )12、不带头结点的单链表head为空的判定条件是。 A、head=NULL B、head->next=NULL C、head->next=head D、head!=NULL ( B )13、链表不具有的特点是 。 A、插入、删除不需要移动元素 B、可随机访问任一元素 C、不必事先估计存储空间 D、所需空间与线性长度成正比

× )1. 链表的每个结点中都恰好包含一个指针。 答:错误。链表中的结点可含多个指针域,分别存放多个指针。例如,双向链表中的结点可以含有两个指针域,分别存放指向其直接前趋和直接后继结点的指针。

( × )2. 链表的物理存储结构具有同链表一样的顺序。错,链表的存储结构特点是无序,而链表的示意图有序。

( × )3. 链表的删除算法很简单,因为当删除链中某个结点后,计算机会自动地将后续的各个单元向前移动。错,链表的结点不会移动,只是指针内容改变。

( × )4. 线性表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。

错,混淆了逻辑结构与物理结构,链表也是线性表!且即使是顺序表,也能存放记录型数据。 3

( × )5. 顺序表结构适宜于进行顺序存取,而链表适宜于进行随机存取。 错,正好说反了。顺序表才适合随机存取,链表恰恰适于“顺藤摸瓜” ( × )6. 顺序存储方式的优点是存储密度大,且插入、删除运算效率高。 错,前一半正确,但后一半说法错误,那是链式存储的优点。顺序存储方式插入、删除运算效率较低,在表长为n的顺序表中,插入和删除一个数据元素,平均需移动表长一半个数的数据元素。

( × )7. 线性表在物理存储空间中也一定是连续的。 错,线性表有两种存储方式,顺序存储和链式存储。后者不要求连续存放。 ( × )8. 线性表在顺序存储时,逻辑上相邻的元素未必在存储的物理位置次序上相邻。 错误。线性表有两种存储方式,在顺序存储时,逻辑上相邻的元素在存储的物理位置次序上也相邻。

( × )9. 顺序存储方式只能用于存储线性结构。 错误。顺序存储方式不仅能用于存储线性结构,还可以用来存放非线性结构,例如完全二叉树是属于非线性结构,但其最佳存储方式是顺序存储方式。(后一节介绍)

( × )10. 线性表的逻辑顺序与存储顺序总是一致的。 错,理由同7。链式存储就无需一致。 三、填空题 1、在带头结点的单链表L中,若要删除第一个元素,则需要执行下列三条语句:_______________;L→next=U→next;free(U)。

2、在单链表L中,若要在指针P所指结点之后插入由指针S所指的结点,则需执行下列语句:S->next=P->next;______________;

3、在带有头结点的单链表L中,第一个元素结点的指针是_____________。 4、双循环链表L中由指针P所指向的某结点为尾结点的条件是_______________。 1. 【严题集2.2①】在顺序表中插入或删除一个元素,需要平均移动 表中一半元素,具体移动的元素个数与 表长和该元素在表中的位置 有关。

2. 线性表中结点的集合是 有限 的,结点间的关系是 一对一 的。 3. 向一个长度为n的向量的第i个元素(1≤i≤n+1)之前插入一个元素时,需向后移动 n-i+1 个元素。 4

4. 向一个长度为n的向量中删除第i个元素(1≤i≤n)时,需向前移动 n-i 个元素。 5. 在顺序表中访问任意一结点的时间复杂度均为 O(1) ,因此,顺序表也称为 随机存取 的数据结构。

6. 【严题集2.2①】顺序表中逻辑上相邻的元素的物理位置 必定相邻。单链表中逻辑上相邻的元素的物理位置 不一定 相邻。

7. 【严题集2.2①】在单链表中,除了首元结点外,任一结点的存储位置由 其直接前驱结点的链域的值 指示。

8.在n个结点的单链表中要删除已知结点*p,需找到它的前驱结点的地址,其时间复杂度为O(n)。

四、算法设计题 1、设有两个单链表L和L1,各结点结构如下: 试画出该链表的结构图,并编写算法,判断单链表L1是否与单链表L相同,相同返回1,不同返回0。

五、简答题 1. 【严题集2.3②】试比较顺序存储结构和链式存储结构的优缺点。在什么情况下用顺序表比链表好?

答:① 顺序存储时,相邻数据元素的存放地址也相邻(逻辑与物理统一);要求内存中可用存储单元的地址必须是连续的。

优点:存储密度大(=1?),存储空间利用率高。缺点:插入或删除元素时不方便。 ②链式存储时,相邻数据元素可随意存放,但所占存储空间分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针

优点:插入或删除元素时很方便,使用灵活。缺点:存储密度小(<1),存储空间利用率低。 顺序表适宜于做查找这样的静态操作;链表宜于做插入、删除这样的动态操作。 若线性表的长度变化不大,且其主要操作是查找,则采用顺序表; 若线性表的长度变化较大,且其主要操作是插入、删除操作,则采用链表。

2 .【严题集2.1①】描述以下三个概念的区别:头指针、头结点、首元结点(第一个元素结点)。在单链表中设置头结点的作用是什么?

data next

相关文档
最新文档