单链表
实验目的:
(1)熟练掌握线性表的单链式存储结构及在其上实现线性表的各种基本运算的方法。
(2)掌握和理解本实验中出现的一些基本的C语言语句。
(3)体会算法在程序设计中的重要性。
实验内容:
(1)设计一算法,逆置带头结点的动态单链表head。要求利用原表的结点空间,并要求用尽可能少的时间完成。
(2)设有两个按元素值递增有序的单链表A和B,编一程序将A表和B表归并成一个新的递增有序的单链表C(值相同的元素均保留在C表中),并要求利用原表的空间存放C。
已知一个有序单链表(从小到大排列),表头指针为head,编写一个函数向该单链表中插入一个元素为x的节点,使插入后该单链表仍有序。
有一个单链表(不同结点的数据域值可能相同),其头指针为head,编写一个函数计算数据域为x的结点个数。
已知p是指向单向循环链表最后一个结点的指针,试编写只包含一个循环的算法,将线性表(a1,a2,…,an-1,an)改造为(a1,a2,…,an-1,an,an-1,…,a2,a1)。【北京理工大学2005十四、1(5分)】