《数据结构》实验一_第1页
《数据结构》实验一_第2页
《数据结构》实验一_第3页
《数据结构》实验一_第4页
《数据结构》实验一_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第 1 页 共 6 页 华北水利水电大学 数据结构 实验报告 2016 2017 学年学年 第第 二二 学期学期 2016 级级 计算机科学与技术 专升本 计算机科学与技术 专升本 专业专业 班级 计科 学号 姓名 孔芬 实验一 线性表及其应用 一 实验目的 1 掌握用 C 语言调试程序的基本方法 2 掌握线性表的基本运算 如插入 删除等 二 实验内容 1 编写一个程序 实现顺序表的各种基本运算 在此基础上完成如下功能 1 初始化顺序表 L 2 依次在顺序表 L 中插入元素 a b c e 3 输出顺序表 L 4 输出顺序表 L 的长度 5 输出顺序表 L 的第 3 个元素 6 输出元素 a 的位置 7 在第 4 个元素之前插入元素 f 8 输出顺序表 L 9 删除第 3 个元素 10 输出顺序表 L 2 设带头结点的单链表 ha 和 hb 中结点数据域值按从小到大顺序排列 且各自链表内无重复的结点 要求 1 建立两个单链表 ha 和 hb 要求 ha 和 hb 都是递增有序的 2 将单链表 ha 合并到单链表 hb 中 且归并后的 hb 链表内无重复的结点 结点值仍保持从小到大 顺序排列 3 输出合并后单链表 hb 中每个结点的数据域值 三 实验要求 1 C 完成算法设计和程序设计并上机调试通过 2 撰写实验报告 提供实验结果和数据 3 写出算法设计小结和心得 四 程序源代码 第一题代码 include stdio h include malloc h define MaxSize 50 typedef struct char data MaxSize int length SqList void InitList SqList L length 0 第 2 页 共 6 页 void DispList SqList L int i for i 0 ilength i printf c L data i printf n int ListLength SqList L return L length bool ListEmpty SqList L return L length 0 bool getelem SqList L int i if iL length return false else printf c L data i return true int LocateElem SqList L char m int i 0 while ilength if i L length return 0 else return i 1 bool ListInsert SqList if iL length 1 return false i for j L length j i j L data j L data j 1 L data i m L length 第 3 页 共 6 页 return true bool ListDelete SqList if iL length return false i for j i jlength 1 j L data j L data j 1 L length return true void DestroyList SqList void main SqList A printf 2 依次在顺序表 L 中插入元素 a b c e n InitList A ListInsert A 1 a ListInsert A 2 b ListInsert A 3 c ListInsert A 4 d ListInsert A 5 e printf 3 输出顺序表 L DispList A printf 4 输出顺序表 L 的长度为 d n ListLength A ListEmpty A printf 5 输出顺序表的第 3 个元素 getelem A 3 printf n printf 6 输出元素 a 的位置 d n LocateElem A 97 printf 7 在第 4 个元素之前插入元素 f ListInsert A 4 f printf n printf 8 输出顺序表 L DispList A printf 9 删除第 3 个元素 ListDelete A 3 printf n printf 10 输出顺序表 L DispList A 第 4 页 共 6 页 DestroyList A 第二题代码 include include typedef int ElemType typedef struct node ElemType data struct node next SLink void CreateListR SLink int i sl SLink malloc sizeof SLink r sl for i 0 idata a i r next s r s r next NULL SLink hebing SLink ha SLink hb SLink pa ha next pb hb next hc tc hc ha hc next NULL tc hc while pa NULL tc pa pa pa next else if pa data pb data tc next pb tc pb pb pb next 第 5 页 共 6 页 else tc next pa tc pa pa pa next pb pb next tc next NULL if pa NULL tc next pa if pb NULL tc next pb return hc void DispList SLink sl SLink p sl next while p NULL printf d p data printf p p next printf n void main SLink s1 s2 int a 10 b 10 int n 10 printf 单链表 hb 的的元素分别为 for int j 0 j n j b j 2 j 2 printf d b j printf printf n printf 单链表 hb 的的元素分别为 for int i 0 i n i a i 2 i 1 printf d a i 第 6 页 共 6 页 printf printf n CreateListR s1 a n CreateListR s2 b n s2 hebing s1 s2 DispList s2 五 程序运行情况 采用截图方式给出运行结果 第一题运行结果 第二题运行结果 六 小结 包括收获 心得体会 存在的问题及解决问题的方法 建议等 包

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论