习题2.4 递增的整数序列链表的插入(15 分) 本题要求实现一个函数,在递增的整数序列链表(带头结点)中插入一个新整数,并保持该序列的有序性。 函数接口定义: List Insert( List L, ElementType X ); 其中List结构定义如下: typedef struct No ...
分类:
其他好文 时间:
2017-09-12 23:17:07
阅读次数:
2281
1. 如果一个链表结点数大于等于2,把首节点变为尾结点 2. 将单循环链表拆成两个单循环链表 3. 有一个递增有序的顺序表va。将 x 插入到顺序表的适当位置上,保持顺序表有序 4. 在带头结点的单链表结构上实现线性表操作 Locate(L,x) ...
分类:
其他好文 时间:
2017-08-31 14:33:18
阅读次数:
119
我在之前一篇博客《C语言实现单链表(不带头结点)节点的插入》中具体实现了怎样在一个不带头结点的单链表中进行节点的插入。可是在实际应用中,带头结点的链表更为经常使用。更为方便。今天我们就要来使用带头结点的单链表进行节点的插入。演示样例代码上传至 https://github.com/chenyufen ...
分类:
编程语言 时间:
2017-08-13 10:07:22
阅读次数:
175
对单链表进行增删改查是最主要的操作。我在上一篇博客《C语言实现链表节点的删除》实现了删除单链表中的某个节点。这里我们要来实如今某个位置插入节点。演示样例代码上传至https://github.com/chenyufeng1991/InsertList 。核心代码例如以下:Node *InsertTo ...
分类:
编程语言 时间:
2017-08-11 13:32:55
阅读次数:
172
本文介绍数据结构与算法的知识,相信很多人在学校都学习过,同时为了贴近实际,文章直接附上编译通过可直接使用的源码。 一、数据结构 1.线性表: 1)带头结点的链表 1 /****************************************************************** ...
分类:
编程语言 时间:
2017-08-04 15:23:22
阅读次数:
198
链表的构建事实上也就是不断插入节点的过程。而节点的插入能够分为头插法和尾插法。头插法就是在头结点后插入该节点,始终把该节点作为第一个节点。尾插法就是在链表的最后一个节点处插入元素,作为最后一个节点。假设想要了解链表的概念和其它链表操作。请參考《数据结构与算法之链表》《C语言实现链表的基本操作》两篇文 ...
分类:
其他好文 时间:
2017-07-14 09:58:08
阅读次数:
847
我在之前一篇博客《C语言实现单链表节点的删除(不带头结点)》中具体实现了怎样在一个不带头结点的单链表的删除一个节点,在这一篇博客中我改成了带头结点的单链表。代码演示样例上传至 https://github.com/chenyufeng1991/DeleteLinkedList_HeadNode。删除 ...
分类:
编程语言 时间:
2017-07-07 22:43:54
阅读次数:
275
问题描写叙述 在带头结点的单链表L中。删除全部值为x的结点,并释放其空间,假设值为x的结点不唯一,试编写算法实现以上的操作 算法思想 使用指针p指向数据域为x的结点。使用指针pre指向指针p所指结点的前驱结点,从前向后进行遍历。假设指针p指向的结点的数据域为x,则删除。假设指针p指向的结点的数据域不 ...
分类:
其他好文 时间:
2017-07-02 13:04:03
阅读次数:
143
所实现的循环单链表的结构例如以下图所看到的: 循环单链表的实现,和上一篇文章单链表的实现大致同样点击打开链接,略有差别: 1:循环推断的条件不再是s == NULL或者s->next == NULL,而是他们是否等于头指针。2: 断开链表时的处理,尾节点的next不是NULL,而是指向头结点 详细细 ...
分类:
编程语言 时间:
2017-06-30 15:33:01
阅读次数:
394
定义单链表的结点 我们采用的单链表是带头结点的。 需要遍历一遍链表,在遍历过程中,把遍历的节点一次插入到头部。在这个过程之后,第一个节点成了最后节点,因此要特殊处理,改其后继为NULL。 测试代码: 参考:http://blog.csdn.net/kangroger/article/details/ ...
分类:
编程语言 时间:
2017-06-20 14:59:16
阅读次数:
148