数据结构教程(第3版-李春葆)第2章课后答案_第1页
数据结构教程(第3版-李春葆)第2章课后答案_第2页
数据结构教程(第3版-李春葆)第2章课后答案_第3页
数据结构教程(第3版-李春葆)第2章课后答案_第4页
数据结构教程(第3版-李春葆)第2章课后答案_第5页
全文预览已结束

下载本文档

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

文档简介

1、2.3教材中练习题及参考答案2.1叙述线性表曲种存储结构各自的主婆特点:统性汲的的种特晞结构分别是锁序存结构和链式存储结构.频并存储结构的主要特点如下(1)结点中只有身的信見城.没有关族信息域.结构的存储密度大存储空闾利用率爲。(2)逍过计算地址貞接访间任何数据元累即可以随机存取.(3)描入和別除操作会引起大麓元常的移动。琏或存储结构的主妥特点如下:(】)结点中除自身的信息域.还有逬示关联信R的指针域.因此链式存储结构比鞠序存储结构的存储密度小、仔储空间利用率低。(2)在逻输上相邻的结点在物理上不必相邻丙此不可以随現存取只舱耿序“讯.(3)插人和删脍操作方便灵活,不必移动结点只需修改结点中的持

2、针域即町.2.2设计一个算宏将工揺人一个右序(从小到大排序)的线性表(艰序存储结构)的适当位盘上JF保持线性表的有序性.*:通过比牧任咽序茨A中找到倆人刁的位j将该位就及后血的元索后移一个仗建将工插人位中,风后将A的氏度増1.对应的真法如下:voidInxertCSqLietW.ElemTypex)(inti0j|while(iVA.lenothASlei订VJi+十for(jA.length-1|j=i;j-)JL!j*1A.elcBj|A.eleofix:Alength$2.3设计一个算法,将一个帶头结点的数据域依次为心必“,45$3)的单链表的所有结点逆虫如第一个结点的故拯域变为a,最后

3、一个结点的数据域变为心解:用p指针扫幡单链表将当跑结点p釆用前插玄描入M单链衣中。对应的算法如下:voidBevcraenextibad-nextKULL(wKilonextip-nexthead-nextihead-nextpipq/让D廉向2结点的下一个结点/2q*p-nextip-nexthead-nextihead-nextpipq/让pIS舸*-个结点/2.4设有一个双链袤每个结点中除冇prior,dat和nrt三个域外还有一个访问顎度城g在链衣被理用之前其值均初治化为零每当进行LomoNocWh.J运算时令元索值为x的结点中freq域的值加1并调猿表中结点的次序使其按访PJWtfW

4、逛阪序推列以便續频繁访冋的结点总是靠近表头.试耳一符伶上述婴求的LocateNode运算的鼻法.解:在DLinkLisi类!H的定义中滦加intfreq给该域初始化为0.农毎次査找到-个给点P时,将其freq域坡1再与它前面的一个结点“进行比妆若P结点的Req城(ft较大则旳肯交换,如比找个合适的位対应的算法如下,intLocatfwiq*p-prionIq为pBJS?皓盒-/while(q|=hq-frqfroq)p-priorq-prlcrip-pxlor-?:iextpi/文拱.pffl.q的位童q-next*p-nextfif(qftaxtjNUTX)q-next-priorq-nex

5、t*p-nextfif(qftaxtjNUTX)q-next-priorqp-prior=qq-nextp:q.pnext|return1/不为个烧A时/向的后*.*/2.5设liaCaiarat)和是两个带头焙点的循环单链衰编珂将这两个茨合并为带头结点的循环曲铤表he的算法解:先找到hi的最后一个结点P,将ha的最后一个结点的next揃向hb的第一个数抿结点再找到hb的最后一个结点*P,将其构成循环爪链表对应的算法如下:voidMerge(LinkListba.LliJcList*hb.LinkLLst&k:)(Llx)kLit*p-ha-he-haiwhile(pnext!=ha)p=p-

6、nextj/找到ha的战后一个站点P/p-next-hb-next;/梅ha的最方一个结点的next揩向hb的笫一个效怒结点/while(p-next!hb)pp-nextj/找到hb的JR后一个结AP/p-next=het/构成得环跟链丧/2.6设非空块性表ha和hb都用帶头结点的循环取链农衣示.设计一个算法Tniert(hAhbu).其功能是,E0时将线性衷hb橘人线性袁h&的最前面)当40时垢线性表hb插人线性表ha中第i个结点的后而;当i大于等于线性毅ha的长度时将线性衷hb插入线性我ha的棗后面.M:和用帯头结点的循环双性表的特点设计的算法如下:voidInflcrt(DIinkLi

7、st(ha.DLiakliathbvinti)UnnkLlscpha-next*q(intlena1,j0|hile(p-next!=ha)/ha的长浚lena/lena-*|pp-next|if(!-=)hbWMje-个结成/丿将*ps到山的第i个散粥钻总前血/丿糕应头籍点与吐的第】个效找结if(!-=)hbWMje-个结成/丿将*ps到山的第i个散粥钻总前血/丿糕应头籍点与吐的第】个效找结Atta*/八杵hbUfi人也中阿/八住山中衣找第i个结A-P/phb-prioryp-nexthanextjha-next-priorpiIxm-nc*t*hb-ncxt(hb-、noart-priorehielseifnextiwhile(jnextip-nftxthb-nweti-PA的后堆皓燦典qp-nextip-nftxthb-nweti7*hh-priori向hb的最后一个结欢/hb11-ejc.L一拒prirazpjhb-5jrior-iw*t鼻匹q-priorbb-p

温馨提示

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

评论

0/150

提交评论