网站大量收购独家精品文档,联系QQ:2885784924

数据结构第一版习题参考答案.doc

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课后练习答案是本人精心整理的专业学科课后习题答案,可在线免费浏览全文并供大家下载。另外本网提供大学各专业教材各册不同版本作者主编的课后习题参考答案,不同版本版次,第N册练习题目习题及答案

数据结构2009年习题参考答案 教材 数据结构(c语言版)第一版 作者 李云清等 概论 概念题从略 1.10 (1)O(1) (2)O(n) (3)O(n2) 线性表的顺序存储 2.2 int number_of_x_sequence_list(sequence_list slt,datatype x) {int i,n=0; if(!slt.size) {printf(顺序表是空的!);exit(1);} else for(i=0;islt.size;i++) if(slt.a[i]==x) n++; return n; } 2.3 void inversion_sequence_list(sequence_list *slt) {int i,temp; if(!slt-size) {printf(顺序表是空的!);exit(1);} else for(i=0;islt-size/2;i++) {temp=slt-a[i];slt-a[i]=slt-a[slt-size-i-1];slt-a[slt-size-i-1]=temp;} } 2.4 void insert_order_sequence_list(sequence_list *slt,datatype x) {int i=0; if(slt-size==MAXSIZE) {printf(\n顺序表是满的!没法插入!);exit(1);} i=find_num_sequence_list(slt,x); insert_pos_sequence_list(slt,i,x); } 2.6 当rear=front 时,循环队列的元素个数是 rear-fornt 当rearfront 时,循环队列的元素个数是n+rear-front-1 综合起来:(n+rear-front)%n 2.7 1234,1243,1324,1342,1432,2134,2143,2314,2341,2431,3214,3241,3421,4321 共14种 归纳起来有两种方法算具体的排序种类: bn=1/(n+1)*2n!/(n!*n!) 递推公式:F(n)=F(0)*F(n-1)+F(1)*F(n-2)+F(2)*F(n-3)+…+F(n-1)*F(n-n);(其中n=1,F(0)=1) 具体的完成实现程序如下: #include stdio.h int stk[21],out[21]; void go(int n,int intop,int outtop,int in) { int i,t; if(intop==0 outtop==n) { for(i=0;in;i++) {printf(%d,out[i]); if(i==n-1) printf(\n); } return; } if(intopn inn) { stk[intop]=in+1; go(n,intop+1,outtop,in+1); } if(intop0) { out[outtop]=stk[intop-1]; t=stk[intop-1]; go(n,intop-1,outtop+1,in); stk[intop-1]=t; } } main() { int n; printf(please input n:\n); scanf(%d,n); go(n,0,0,0); getch(); } 线性表的链式存储 3.1 int cal_link_list(node *head) { int i=0; node *q=head; while(q) {i++;q=q-next;} printf(\nThis list a total %d of nodes,i); return i; } 3.3 node *insert_x_before_y(node *head,int x,int y) { node *m,*n,*t; m=head; while(mm-info!=y) { n=m; m=m-next; } t=(node *)malloc(sizeof(node)); t-info=x; t-next=m; n-next=t

文档评论(0)

你好世界 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档