- 1、本文档共21页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第1章绪
1.1有下列几种二兀组表示的数据结构,试画出它们分别对应的图形表示, 并指出它们分别属于何种结构。
⑴ A= ( D ,R ),其中,D = { a i,a2,a 3,a4 }, R={ }
⑵ B= ( D,R ),其中,D = { a,b,c, d,e}, R={ (a,b),(b,c), (c,
d),(d,e)}
⑶ C= ( D,R ),其中,D = { a,b,c,d,e,f,g}, R={ (d,b),(d,
g),(b,a),(b,c),(g,e),(e,f)}
⑷ K= ( D,R ),其中,D = { 1,2,3,4,5,6}, R={ <1,2>,<2,
3>,<2,4>,<3,4>,<3,5>,<3,6>,<4,5>,<4,6>}
(1) 集合
(2) 线性表
(3) 树 (4)图
1.2设n为正整数,求下列各程序段中的下划线语句的执行次数。
(1) i=1; k=0 while(i=n-1) {
k+=10*i ; i++;
}
(2) for (in t i=1; i=n; i++) for (int j=1; j=n; j++) { c[i][j]=0;
for (i nt k=1; k=n; k++) c[i][j]=c[i][j]+a[i][k]*b[k][j] }
解:
n-1
n n n
3
1 n
i 1 j 1 k 1
(3) x=0; y=0;
for (int i=1; i=n; i++)
for (int j=1; j=i; j++)
for (int k=1; k=j; k++) x=x+y;
n i j 1 n i j n i(i 1) 1 n i2 1 n i 1 ?n(n 1)(2n 1) 1 ?n(n 1)
1 j / — i i ? ?
(3) i 1 j 1 k 1 i 1 j 1 i 1 2 2 i 1 2 i 1 2 6 2 2
n(n 1)(n 2)
6
1.3指出下列个算法的功能,并求其时间复杂度。(1) int sum1(i nt n){
1.3指出下列个算法的功能,并求其时间复杂度。
(1) int sum1(i nt n)
{
int p=1,s=0;
for (int i=1;i=n; i++) { p*= i; s+=p;} return s;
}
⑵ int sum2 (int n)
{ int s=0;
for ( int i=1; i=n; i++)
{ int p=1;
for (int j=1; j=i; j++) p*=j; s+=p;
}
解:
n
⑴ i! , T(n)=O(n)
i 1
n
⑵ i! , T(n)=O(n 2)
i 1
}
1.4算法设计
1枚是假的,伪币与真币重量略有不同。如何借用一架有3
1枚是假的,伪币与真币重量略有不同。如何借用一架
上机练习题
要求:给出问题分析、算法描述、源程序及运行截图,在线提交。
1.设a, b, c为3个整数,求其中位于中间值的整数。
第2章线性表
1.设计算法:在顺序表中删除值为
e的兀素,删除成功,返回1 ;
int SqlistT::DeleteElem( T e )
否则,返回0。
{ for (i=1; i=le ngth; i++) // 按值顺序查找 * i
可从0开始
if (elem[i-1]= =e) // 找到,进行删除操作
{ for ( j=i; jlength; j++) // ai 至 an 依次前移
Elem[j-1] = elem[j];
len gth - - ; // 表长减一
return 1 ; //删除成功,返回
}
return 0 ; //未找到,删除不成功,返回
}
1
0
int SqListT::Locate ( T
解:设表长为n,等概率下,每个兀素被定位的概率为:
p=1/n
2.分析顺序表中兀素疋位算法
e )的时间复杂度。
疋位成功第i个兀素,需比较i次
一、n 1 C. 1 V 1 °n(n 1) n 1
f(n) ?i i ?
i 1 n n i 1 n 2 2
3.对于有头结点的单链表,分别写出定位成功时,
实现下列定位
语句序列。
(1)定位到第i个结点ai;
p=head; j=0;
while ( p ji ) { p=p-n ext; j++;}
(2)定位到第i个结点的前驱ai-i ;
p=head; j=0;
while ( p ji-1 ) { p=p- next; j++;}
(3)定位到尾结点;
p=head;
while ( p -next )
p=p-n ext;
(4)定位到尾结点的前驱。
p=head;
4.
4.描述一下三个概念的区别:头指针,头结点,首元
您可能关注的文档
最近下载
- 党员“一带一”活动J计划、实施方案及协议书4.doc VIP
- 05G511:梯形钢屋架 国标图集.pdf VIP
- 东北电力大学2022-2023学年《数据结构》期末考试试卷(A卷)附参考答案.docx
- 2022年广州工商学院退役军人综合考察真题.pdf
- 05-G511 梯形钢屋架 标准图集.pdf VIP
- 成人住院患者静脉血栓栓塞症的预防护理-中华护理学会团体标准2023.pptx
- 线下沙龙策划方案.docx VIP
- 2023年浙江中医药大学数据科学与大数据技术专业《数据库原理》科目期末试卷A(有答案).docx VIP
- 设计说明书(履带式行走底盘).pdf
- 2024华医网继续教育脑卒中的全面康复题库答案.docx VIP
文档评论(0)