数据结构实验指导

8
合合合合合合 合合合合合合合合合合合合 合合合合合合 合合合合合合合合合合合合 合合合合合合合合 实实 实实实实实 合合合 合合 合合合合合合合合合合合合合合 ([email protected] ) 2009 合 3 合

Upload: carson-silva

Post on 31-Dec-2015

35 views

Category:

Documents


1 download

DESCRIPTION

数据结构实验指导. ( 实验一 单链表实验 ) 胡学钢 张晶 合肥工业大学计算机与信息学院 ( [email protected] ) 2009 年 3 月. 实验一 单链表实验. 1 .1 实验目的 ( 1 )理解线性表的链式存储结构。 ( 2 )熟练掌握动态链表结构及有关算法的设计。 ( 3 )根据具体问题的需要,设计出合理的表示数据的链表结构,并设计相关算法。. 实验一 单链表实验. 1.2 实验任务 说明 1 :本次实验中的链表结构均为 带头结点的单链表 。 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 数据结构实验指导

合肥工业大学 人工智能与数据挖掘研究室合肥工业大学 人工智能与数据挖掘研究室

数据结构实验指导

(实验一 单链表实验)胡学钢 张晶

合肥工业大学计算机与信息学院([email protected])

2009年 3月

Page 2: 数据结构实验指导

合肥工业大学 人工智能与数据挖掘研究室合肥工业大学 人工智能与数据挖掘研究室

实验一 单链表实验1 .1 实验目的

( 1 )理解线性表的链式存储结构。( 2 )熟练掌握动态链表结构及有关算法的设计。( 3 )根据具体问题的需要,设计出合理的表示数据的

链表结构,并设计相关算法。

Page 3: 数据结构实验指导

合肥工业大学 人工智能与数据挖掘研究室合肥工业大学 人工智能与数据挖掘研究室

实验一 单链表实验1.2 实验任务说明 1 :本次实验中的链表结构均为带头结点的单链表。说明 2 :为使实验程序简洁直观,下面的部分实验程序中将所需要的函

数以调用库函数的形式给出,并假设将库函数放在程序文件“ linklist.h” 中,同时假设该库函数文件中定义了链表结构中的指针类型为link ,结点类型为 node ,并定义了部分常用运算。

例如构建链表、以某种方式显示链表、从文件中读入一个链表、跟踪访问链表结点等。

各运算的名称较为直观,并有相应的注释,因而易于理解和实现。

读者在上机实验时,需要自己设计出所涉及到的库函数,或者将函数放在实验程序中,以方便实验程序的调试。如时间紧的话,也可到作者的网站下载以供参考(不完全相同)。

Page 4: 数据结构实验指导

合肥工业大学 人工智能与数据挖掘研究室合肥工业大学 人工智能与数据挖掘研究室

实验一 单链表实验编写算法实现下列问题的求解。<1> 求链表中第 i 个结点的指针(函数),若不存在,则返回 NULL 。实验测试数据基本要求:

第一组数据:链表长度 n≥10 , i 分别为 5 , n , 0 , n+1 , n+2第二组数据:链表长度 n=0 , i 分别为 0 , 2

<2> 在第 i 个结点前插入值为 x 的结点。实验测试数据基本要求:

第一组数据:链表长度 n≥10 , x=100, i 分别为 5,n,n+1,0,1,n+2第二组数据:链表长度 n=0 , x=100 , i=5

Page 5: 数据结构实验指导

合肥工业大学 人工智能与数据挖掘研究室合肥工业大学 人工智能与数据挖掘研究室

实验一 单链表实验<3> 删除链表中第 i个元素结点。实验测试数据基本要求:

第一组数据:链表长度 n≥10 , i分别为 5,n,1,n+1,0 第二组数据:链表长度 n=0 , i=5

<4> 在一个递增有序的链表 L中插入一个值为 x的元素,并保持其递增有序特性。

实验测试数据基本要求:链表元素为 ( 10,20,30,40,50,60,70,80,90,100 ) ,x 分别为 25, 85 , 110 和 8

Page 6: 数据结构实验指导

合肥工业大学 人工智能与数据挖掘研究室合肥工业大学 人工智能与数据挖掘研究室

实验一 单链表实验<5> 将单链表L中的奇数项和偶数项结点分解开,并分别连

成一个带头结点的单链表,然后再将这两个新链表同时输出在屏幕上,并保留原链表的显示结果,以便对照求解结果。

实验测试数据基本要求:第一组数据:链表元素为 ( 1,2,3,4,5,6,7,8,9,10,20,

30,40,50,60 )第二组数据:链表元素为 ( 10,20,30,40,50,60,70,80,

90,100 )

Page 7: 数据结构实验指导

合肥工业大学 人工智能与数据挖掘研究室合肥工业大学 人工智能与数据挖掘研究室

实验一 单链表实验<6> 求两个递增有序链表 L1 和 L2 中的公共元素,并以同样方式连接成

链表 L3 。实验测试数据基本要求:

第一组第一个链表元素为 ( 1 , 3 , 6 , 10 , 15 , 16 , 17 , 18 , 19 , 2

0 )第二个链表元素为 ( 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 18 ,

20 , 30 )第二组

第一个链表元素为 ( 1 , 3 , 6 , 10 , 15 , 16 , 17 , 18 , 19 , 20 )

第二个链表元素为 ( 2 , 4 , 5 , 7 , 8 , 9 , 12 , 22 )第三组

第一个链表元素为 ()第二个链表元素为 ( 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 )

Page 8: 数据结构实验指导

合肥工业大学 人工智能与数据挖掘研究室合肥工业大学 人工智能与数据挖掘研究室

谢谢!