版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、东莞理工学院计算机学院2015-2016 第 1 学期算法与数据结构实验报告姓名:陈映琼学号:201441404142题目:设带头结点的单链表 l1 和 l2 中分别存放着两个数据元素集合,编写算法判断集合 l1 是否是 l2 的子集,即判断集合 l1 中的数据元素是否都是集合l2 中的数据元素。问题描述:有两个带头结点的单链表 l1 和 l2 中分别存放着数据元素集合,判断集合 l1 是否是集合 l2 的子集。模块划分:第一个模块,定义单链表结点的结构体,第二个模块,设计一个函数,创建头结点,第三个模块,编写一个将元素 e 插入到链表 l 的第 i 个位置的函数,第四个模块,编写一个输出带头
2、结点单链表的数据元素的函数,第五个模块,首先编写一个输出带头结点单链表的长度的函数,再编写一个判断集合 l1 中的数据元素是否都是集合 l2 中的数据元素,这个函数需调用输出长度的函数,第六个模块,编写 main 函数,测试代码。源 程 序 : #include #include typedef int status; typedef int elemtype; #define false 0#define true 1typedef struct nodeelemtype data;/ 数据域struct node* next;node,*linklist;linklist initlist
3、()/创建头结点linklist l;l = (linklist)malloc(sizeof(node); if(l=null)printf(申请头结点失败!n); return null;l-next = null; return l;status listinsert(linklist *l,int i,elemtype e)/将元素 e 插入到链表 l的第 i 个位置int j = 1; linklist p,s;p = *l;/p 直接等于链表 l,才有头结点while (p & jnext;+j;if(!p | j i)return false;s = (linklist)mallo
4、c(sizeof(node); s-data = e;s-next = p-next;/这里 p-next 就是指向位置 ip-next = s; return true;void printlist(linklist l)linklist p; p = l-next;while (p != null)printf(%dt,p-data); p = p-next;printf(n);status length(linklist head)linklist p = head-next; status i = 0;while(p != null)return i;i+;p = p-next;voi
5、d judge(linklist head1,linklist head2)linklist p1 = head1-next,p2 = head2-next; if(length(head1) length(head2)printf(集合 l1 不是集合 l2 的子集。n); return;while(p1 != null)p2 = head2-next; while(1)if(p2 != null)&(p1-data != p2-data) p2 = p2-next;if(p2 != null)&(p1-data = p2-data) break;if(p2 = null)printf(集合
6、 l1 不是集合 l2 的子集。n); return;p1 = p1-next;printf(集合 l1 是集合 l2 的子集。n);int main()linklist head1,head2; int len,i,num;head1 = initlist(); head2 = initlist();printf(请输入集合 l1 元素的个数。n); scanf(%d,&len);printf(请输入元素:n);for(i = 1;i = len;i+)scanf( %d,&num);listinsert(&head1,i,num);printlist(head1);printf(请输入集合
7、 l2 元素的个数。n); scanf(%d,&len);printf(请输入元素:n);for(i = 1;i = len;i+)scanf( %d,&num); listinsert(&head2,i,num);printlist(head2);judge(head1,head2); return 0;测试用例及结果:“”“”at the end, xiao bian gives you a passage. minand once said, people who learn to learn are very happy people. in every wonderful life,
8、 learning is an eternal theme. as a professional clerical and teaching position, i understand the importance of continuous learning, life is diligent, nothing can be gained, only continuous learning can achieve better self. only by constantly learning and mastering the latest relevant knowledge, can employees from all walks of life keep up with the pace of enterprise development and innovate to meet the needs of the market. this doc
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026卫生健康人才职业技能鉴定考试(中药药剂)历年参考题库含答案详解
- 2026卫生专业技术资格考试(眼视光技术-相关专业知识·主管技师)历年参考题库含答案详解
- 2026卫生专业技术资格考试(心电学技术-相关专业知识·主管技师)历年参考题库含答案详解
- 2026卫生专业技术资格考试(临床医学检验技术-专业知识·主管技师)历年参考题库含答案详解
- 2026人工智能教育应用市场分析及教育智能化转型策略研究报告
- 2026年青海省格尔木市高三生物上册期末考试模拟考试卷及参考答案
- 2026年福建省永安市高一化学上册期末考试模拟卷及参考答案(综合题)
- 2026年甘肃省临夏市高三物理下册期末考试模拟检测卷及答案
- 2026年黑龙江省安达市高三物理下册期末考试模拟试卷及参考答案
- 基于物联网的猪肉溯源及价格预警模型:构建、验证与应用拓展
- 《工程造价指标分类及编制指南》附录A 房屋建筑工程
- UL1977标准中文版-2019连接器UL中文版标准
- 中国食物成分表2018年(标准版)第6版
- 狼图腾读书笔记摘抄及感悟第二章(4篇)
- 敖汉旗新惠工业园区项目地质灾害危险性评估报告
- 人机工程学-第九章人与环境的界面设计
- 话剧《收信快乐》
- 地面建筑压覆煤矿互不影响论证报告
- 公司租房合同续约
- 固体废物处理与资源化课后习题答案(赵由才第三版)及期末试题库
- YC/T 438-2012烟草商业企业卷烟物流配送车辆管理规范
评论
0/150
提交评论