在链表中删除相同节点.doc
《在链表中删除相同节点.doc》由会员分享,可在线阅读,更多相关《在链表中删除相同节点.doc(21页珍藏版)》请在文库网上搜索。
1、数据结构上机实验报告题目:在链表中删除相同节点学生姓名 学生学号 学院名称 计算机学院 专 业 计算机科学与技术 时 间 I目 录第一章 需求分析 .11.1 原题表述 .11.2 问题解决方案 .1第二章 概要设计 .22.1 抽象数据类型 .22.2 主要算法描述 .22.3 主要算法分析 .3第三章 详细设计 .43.1 程序代码 .4第四章 调试分析 .74.1 出现的问题及解决方法 .7第五章 测试分析 .85.1 测试样例 .8第六章 未来展望与思考 .9计算机学院 2013 级数据结构上机实验报告1第 1 章 需求分析1.1 原题表述假设有两个无序的双向循环链表 A 和 B,结构
2、体为:前驱指针 left,后继指针 right,数据 date。将它们的头指针分别设为:pHeadA,pHeadB,输入 A 和 B 的数值,新建链表,接着构造函数,删除两个链表中相同的节点。1.2 问题解决方案1、需要构建双循环链表,对于输入的链表,需要删除重复的结点,需要删除结点的函数。2、首先把 A 中含有与 B 中相同的数据节点找出来组成一个新的链表 C3、遍历链表 C,删除 A 和 B 的所有和 C 中节点值相同的节点。解决方案要求:(1)输入参数:pA、pB 两个链表(2)输出参数:A 和 B 中所有相同数据节点组成的链表 C(3)输出参数:删除与 C 中节点值相同节点之后的链表
3、A 和 B计算机学院 2013 级数据结构上机实验报告2第二章 概要设计2.1 抽象数据类型ADT DNode 数据对象:D = a i = ai | ai ElemSet,i = 1,2,3,n, n = 0数据关系:S = | ai -1 ,ai D, i = 2,3,4,,n基本操作:CreatList(typedef struct DNoteListData data;struct DNote * left, * right;DblNode;typedef DblNode * DblList;/构建双循环链表 void CreatList(DblList L = (DblList)ma
4、lloc(sizeof(DblNode);DblList p,q = L;while(scanf(“%d“,p - data = val;p - left = q;q - right = p;q = p;q - right = L;L - left = q;/求交集 void Subset(DblList L = (DblList)malloc(sizeof(DblNode);DblList r, s = L;p = L1 - right;while(p != L1)q = L2 - right;while(q != L2)if(p - data = q - data)r = (DblList
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 链表中 删除 相同 节点