付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南方医科大学生物医学工程学院__电子信息工程___系数据结构实验报告PAGEPAGE4姓名王浩文学号113200880200010专业年级08电子信息工程单元第2章内容线性表日期2010-5-21实验题目实验一线性结构(综合性实验3学时)实验目的本次实习的主要目的在于熟悉线性表的基本运算在两种存储结构上的实现,其中以熟悉各种链表的操作为侧重点。通过本次实习还可复习高级语言的使用方法。实验内容一、必做题:二、选做题:[问题描述]约瑟夫(Joeph)问题的一种描述是:编号为1,2,…,n的n个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。一开始任选一个正整数作为报数上限值m,从第一个人开始按顺时针方向自1开始顺序报数,报到m时停止报数。报m的人出列,将他的密码作为新的m值,从他在顺时针方向上的下一个人开始重新从1报数,如此下去,直至所有人全部出列为止。试设计一个程序求出出列顺序。[基本要求]利用单向循环链表存储结构模拟此过程,按照出列的顺序印出各人的编号。[测试数据]m的初值为20;密码:3,1,7,2,4,8,4(正确的结果应为6,1,4,7,2,3,5)。实验要求及讨论(本次实验的要求是否达到,有何问题,是怎么解决的)抄写自己所选择的题目。写出算法设计思路。编写代码,调试运行,实现题目要求(提示:考虑到插入和删除的位置是否超出范围等可能出现的异常问题)。
四、写出算法设计、编程和调试运行的体会。抄写自己所选择的题目。1、已知一顺序表A,其元素非递减有序排列,编写一个算法,删除顺序表中值相同多余的元素(相同值保留一个)。2、已知带头结点的单链表L中的节点是按整数值递增排序的,试写一算法,将值为x的节点插入到表L中,使得表L仍然有序。分析算法的时间复杂度。写出算法设计思路。1.建立一个顺序表用于存储一组非递减排序的整形数据,对顺序表中的每个元素与其下一个元素进行比较操作。用指针记录当前所比较的元素,如果相等则对当前指针所指向的元素进行删除操作,并将它后面的数据前移,再与下一个元素比较,如果还相等就继续删除操作,否则指向下个元素,再比较直至无重复的元素。2.建立一个带头节点的单链表,其节点按整数值递增排序。创建一个新的节点,并由键盘输入节点的值。将其与链表中原有的节点(头节点不参与比较)按顺序作比较,并用指针指向当前的位置,若不大于当前节点,则在当前位置这前作插入操作,否则在最后作插入操作。三、编写代码,调试运行,实现题目要求(提示:考虑到插入和删除的位置是否超出范围等可能出现的异常问题)。解1.法I:#include"stdio.h"#include"conio.h"#defineSIZE10main(){intSqList_A[SIZE]={23,3,45,65,23,44,5,7,89,0};inti,j,n,m,l=SIZE;for(i=0;i<l;i++)printf("%d",*(SqList_A+i));printf("\nThenewoneis:\n");for(i=0;i<(l-1);i++)for(j=0;j<(l-1);j++)if(SqList_A[i]==SqList_A[j])if(i!=j){n=i;m=i+1;for(;m<l;n++,m++)SqList_A[n]=SqList_A[m];l=l-1;}for(i=0;i<l;i++)printf("%d",*(SqList_A+i));printf("\n\n");getch();}法II:#include"stdio.h"#include"conio.h"#defineSIZE18#defineERROR0#defineOK1intlength;/*定义宏观变量*/typedefintstatus;typedefstruct{int*elem;intlength;intlistsize;}SqList;statusListDelete(SqList*L){/*删除顺序表L中值相同多余的元素(相同值保留一个)*/inti=0,j,n=0;SqList*p=L;if(!p)returnERROR;while(i<p->length){if(*(p->elem+i)==*(p->elem+i+1)){/*删除相同多余的元素*/for(j=i;j<p->length;j++)*(p->elem+j)=*(p->elem+j+1);n++;p->length--;}if(!(*(p->elem+i)==*(p->elem+i+1)))/*判断第i个数是否任和下一个数相同*/i++;}length=SIZE-n;returnn;}main(){inta[SIZE]={1,2,2,5,6,7,7,12,13,13,13,18,19,20,21,24,24,39},t;intn,m;SqListA;A.elem=a;for(n=0;n<SIZE;n++)printf("%d",a[n]);A.length=A.listsize=SIZE;t=ListDelete(&A);if(!t)printf("ListDeleteERROR!\n");else{printf("\nThenewoneis:\n");for(n=0;n<length;n++)printf("%d",a[n]);}getch();}解2.#include"stdio.h"#include"conio.h"#defineSIZE10#defineERROR0#defineNULL0#defineOK1inta[SIZE]={1,3,5,8,10,12,14,17,19,26},i;typedefintstatus;typedefstructnod{intdata;structnod*next;}node;statusCreatList(node*L){/*建立一个带头结点的节点按整数值递增排序的单链表L*/node*p,*h=NULL;h=p=(node*)malloc(sizeof(node));if(!p)returnERROR;/*节点创建失败*/p->data=a[i];for(i=1;i<SIZE;i++)/*创建整数值递增排序链表*/{p->next=(node*)malloc(sizeof(node));p=p->next;p->data=a[i];}p->next=NULL;L->next=h;returnOK;}statusListInsert(node*L,intx){inti,k;for(i=0;i<SIZE;i++)if(x>=a[i]&&x<a[i+1])k=i+1;{for(i=SIZE-1;i>=k;i--)a[i+1]=a[i];a[k]=x;}}main(){node*L,*p;intt,x,i,k;printf("Pleaseinputthenumberyouwanttoinsertx:\n");scanf("%d",&x);printf("TheListis:\n");for(i=0;i<SIZE;i++)printf("%d",a[i]);printf("\nAfterinert,thenewoneis:\n");L=(node*)malloc(sizeof(node));if(!L){printf("ERROR!\n");return;}t=CreatList(L);/*创建链表*/if(!t){printf("ERROR!\n");return;}ListInsert(L,x);for(i=0;i<SIZE+1;i++)printf("%d",a[i]);getch();}时间复杂度为:O(n)写出算法设计、编程和调试运行的体会。经过
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 天津市滨海新区第四共同体2026-2027学年八上物理期末统考模拟试题含解析
- 小学一级教师职称述职报告范文(3篇)
- 临时分拣工劳动合同范本全文二篇
- 建设工程竣工验收协议合同三篇
- 2026年中药师考试中药学专业知识备考习题
- 沈阳市重点中学2027届高二物理第一学期期末复习检测模拟试题含解析
- 基于RFID的医疗设备计量检定提醒系统检定周期与设备使用频率关联动态调整可行性分析
- 高阶导数在CBAM中的空间注意力
- 服务员规范试题及答案
- 安徽宿州市泗县屏山镇中学2027届高二物理第一学期期末经典模拟试题含解析
- DBS52 011-2016 食品安全地方标准 贵州辣椒面
- JJF 1064-2024坐标测量机校准规范
- 杜邦安全管理体系22要素
- 中学化学教学策略研究
- 河湖巡查工作方案
- 资产评估学教程(第八版)习题及答案 乔志敏
- 第二章热力学参数状态图
- 山西幼儿园教师师德档案
- 管理学原理 教案 第四章 决策
- 初中数学人教九年级上册第二十四章圆数学活动探究四点共圆的条件PPT
- 中医药翻译技巧课件
评论
0/150
提交评论