版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1.一个线性表的元素按元素非递减有序排列,编写一个过程删除线性表中多余的值相同的元素.2.有两个顺序存贮的线性表A(有m个元素)和B(有n个元素),其元素均以从小到大的升序排列,编写一个过程将它们合并成一个线性表C,要求C的元素也是以从小到大的升序排列.1整理pptvoiddel(list,n)intlist[],n;{inti,j;i=0;while(i<n-1)if(a[i]!=a[i+1])i=i+1;else{for(j=i+1;j<n;j++)a[j]=a[j+1];n=n-1;}}1.2整理pptvoidlink(A,B,C,m,n)inta[],B[],C[],m,n;{inti,k,l,j;i=0;k=0;j=0;while(i<m&&j<n){if(A[i]<B[j])
{C[k]=A[i];i=i+1;k=k+1;}
2.3整理ppt
else
{C[k]=B[j];j=j+1;k=k+1;}}if(j>=n-1)for(l=i;i<m;l++)
{C[k]=A[l];k=k+1;}if(i>=m-1)for(l=j;l<n;l++)
{C[k]=B[l];k=k+1;}}4整理ppt3.编写一个倒置顺序存贮的线性表的C函数,要求尽量用最少的附加存贮空间来完成.intlist[];intn,i,t;for(i=0;i<n/2;i++){t=list[i];list[i]=list[n-1];list[n-1]=t;n--}print(……….)5整理ppt4.假设有两个栈共享一个数组stack[n],如以下图,试编写对任一栈作进栈和出栈运算的C函数:push(x,i)和pop(i),i=1,2.i=1表示左边的栈i=2表示右边的栈要求在整个数组元素都被占用时才产生溢出栈1底栈2底栈1顶栈2顶6整理ppt…….inttop1=0,top2=MAXN-1;charx;inti;{if(i==1)if(top1>top2)return(1);stack[top1++]=x;return(0);if(i==2)if(top2<top1)return(1);stack[top2--]=x;return(0);}7整理ppt…….{if(i==1)if(top1<=0)return(1);*p_y=stack[--top1];return(0);if(i==2)if(top2>=MAXN-1)return(1);*p_y=stack[++top2];return(0);}8整理pptTop1=-1;top2=maxnintpush(x,i)charx;inti;{if(top1==top2-1)reutrn(0);elseif(i==1)stack[++top1]=x;elsestack[--top2]=x;return(1);}9整理pptintpop(pop,i)char*pop;inti;{if(i==1){if(top1==-1)return(0);*pop=stack[top1--];return(1);}else{if(top2==n)return(0);*pop=stack[top2++];return(1);}10整理ppt5.在一个最多可存放n个结点的顺序存贮的队列中,如果头指针指向队首结点,让尾指针指向下一个进队的存放位置,如以下图:试分别编写实现进队和出队的C函数.ABCheadtail11整理pptif(head=tail)return(1);*p_y=q[head++];return(0);if(tail>=MAXN)return(1);q[tail++]=x;return(0);12整理ppt6.设有一个环形队列,该队列只有一个队列头指针head,不设队列尾指针,而改置计数器count用以记录队列中结点的个数.试编写实现队列的五个运算;A.设置队列的初始空态B.判定队列是否为空C.取队列头结点的值给变量xD.将x元素入队E.删除队列头结点.13整理ppthead=0;count=0;intempty(){if(count==0)reutrn(0);return(1);}intgethead(x);charx;{if(count==0)return(1);x=q[(head+1)%MAXN];return(0);}14整理pptintenqueue(x)charx;{if(count==MAXN)return(1);count++;q[(head+count)%MAXN]=x;return(0);}15整理pptintdequeue(p_y)char*p_y;{if(count==0)return(1);head=(head+1)%MAXN;*p_y=q[head];count--;return(0);}16整理ppt7.利用两个栈S1,S2模拟一个队列时,如何用栈的运算来实现该队列的运算:enqueue:插入一个元素;dequeue:删除一个元素;queue_empty:判定队列为空;17整理pptintenqueue(x)charx;{if(top1>=MAXN)return(0);push(s1,x);return(1);}18整理pptintdequeue(p_y)char*p_y;{inttop2=0;while(sempty(s1))push(s2,pop(s1));*p_y=pop(s2);while(sempty(s2))push(s1,pop(s2))}19整理ppt作业1.试编写一个求单链表的数据域的平均值的函数2.带有头结点的环形链表中头指针为head,试写出删除并释放数据域值为x的所有结点的函数3.线性表中的元素值按递增有序排列,针对顺序表和环形链表两种不同的存储方式,分别编写函数删除线性表中值介于a与b(a<b)之的元素20整理pptintaver(node*head){inti=0,sum=0,ave;node*p;p=head;while(p!=null){p=p->link;i++;sum-sum+p->data;}ave=sum/i;return(ave);}21整理pptvoiddel-link(node*head,intx){node*p,*q,*s;p=he
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- Venlo型温室非均匀环境通风策略研究
- 胜利精密商誉减值后的盈余管理行为及影响分析
- MiRNA在沙葱萤叶甲生长发育中的调控作用
- 2025年度赠与房屋装修设计与施工质量保证协议
- 漆酶催化植物染料五倍子对竹浆纤维织物的染色研究
- 二零二五年度跨境电商销售返利合作协议
- 二零二五年度酒店前台员工工作时长与休息时间规定合同
- 2025年度酒店家具设计与生产一体化采购合同
- 二零二五年度货运代理委托合同范本(含合同解除)
- 二零二五年度土地一级开发合同
- 山东省桓台第一中学2024-2025学年高一上学期期中考试物理试卷(拓展部)(无答案)
- 中华人民共和国保守国家秘密法实施条例培训课件
- 管道坡口技术培训
- 2024年全国统一高考英语试卷(新课标Ⅰ卷)含答案
- 2024年认证行业法律法规及认证基础知识 CCAA年度确认 试题与答案
- 皮肤储存新技术及临床应用
- 外研版七年级英语上册《阅读理解》专项练习题(含答案)
- 2024年辽宁石化职业技术学院单招职业适应性测试题库必考题
- 上海市复旦大学附中2024届高考冲刺模拟数学试题含解析
- 幼儿园公开课:大班健康《国王生病了》课件
- 小学六年级说明文阅读题与答案大全
评论
0/150
提交评论