数据结构练习题答案..docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构练习题答案.

数据结构练习题答案 (仅供参考,如有问题讲解时再更正)绪 论 一、单选题 1. C 2. D 3. B 二、填空题 1. 集合结构、线性结构、树型结构、图形结构 2. 1:1、1:N、M:N 3. On、Om*n 4. n、nn+1/2、On2 5. On 第二章 线性表 一、单选题 1. B 2. A 3. C 4. B 5. D 6. C 二、填空题 1.数据、指针 2.38 , 56 , 25 , 60 , 42 , 74 3. On、O1 4.O 1、On 5.i-1、i+1 6. p-next 、a[p].next 7.表头 8.前驱、后继 9. 表尾、表头 10.HL-next NULL 、HL-next HL 三、应用题 1. #define ElemType int#define Maxsize 100 Typedef struct ElemType *list; int size; List; 1 ElemType DMValue List LElemType x;x L.list[0]; // x存放最小元素 int k 0, i; // k存放最小元素的下标 if ListEmptyL // 判断是否为空线性表 printf”List is Empty!”;exit1; for i 1; iL.size; i++ // 查找最小元素if L.list[i] x x L.list[i] ; k i; L.list[k] L.list[L.size-1];// 最后一个元素填补最小元素位置 L.size--;// 线性表长度减1 return x;// 返回最小元素2ElemType Delete List L, int iElemType x; int j;if i1 || iL.size// 判断i的合法性 printf”Index is out range!”; exit1;x L.list[i-1]; // 保存被删除元素for j i-1; jL.size-1; j++ // 元素向前移动L.list[j] L.list[j+1];L.size--;// 长度减1return x;// 返回被删元素3void Insert List L, int i, ElemType x int j;if i1 || iL.size+1// 判断i的合法性 printf”Index is out range!”; exit1;if L.size MaxSize// 判断线性表满 printf””List overflow!”; exit1;for j L.size-1 ; ji-1 ; j-- // 元素后移,产生插入位置 L.list[j+1] L.list[j];L.list[i-1] x;// 元素插入L.size++;// 长度加14 void Delete List L, ElemType xint i 0;while iL.sizeif L.list[i] x// 删除x元素 for int j i+1; jL.size; j++L.list[j-1] L.list[j]; L.size--;else i++;// 寻找下一个x元素的位置2.Typedef struct Lnode ElemType data; LNode *next ; void Delete LNode * HL, int iLNode * ap , * cp;int j 1; if i1 || HLNULL// 判断i的合法性或空链表 printf”Index is out range!”; exit1;ap NULL ; cp HL ; // cp指向当前结点,ap指向其前驱结点while cp ! NULL// 查找第i个结点if j i// 找到第i个结点 break;// cp指向的结点即为第i个结点else// 继续向后寻找 ap cp; cp cp-next; j++;if cp NULL// 没有找到第i个结点 printf”Index is out range!”; exit1;if ap NULL// 删除第1个结点(即i1)HL HL-nextelseap-next cp-next; // 删除第i个结点freecp;// 释放被删除结点

文档评论(0)

sdgr + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档