- 3
- 0
- 约9.78千字
- 约 33页
- 2021-11-05 发布于北京
- 举报
算法与数据结构
算法与数据结构 C 语言习题参考复习资料章
PAGE
PAGE 10 / 32
绪 论
.将下列复杂度由小到大重新排序:
A .2 n B .n ! C .n 5 D .10 000
E .n *
2
(n )
【答】10 000 n*
2
(n ) n 5 2n n!
.将下列复杂度由小到大重新排序:
A .n *
2
(n ) B .n + n 2 + n 3 C .24
D .n 0.5
【答】24 n 0.5 n *
2
(n ) n + n 2 + n 3
.用大“O ”表示法描述下列复杂度:
A .5 n 5/2 + n 2/5 B .6*
2
(n ) + 9n
C .3 n 4 + n *
(n ) D .5 n 2 + n 3/2
2
【答】A :O (n 5/2 ) B :O (n ) C :O (n 4 )
D :O (n 2 )
.按照增长率从低到高的顺序排列以下表达式:4n2 , 3n,
3n , 20n , 2000 , 2n , n2/3。又 n !应排在第几位?
【答】按照增长率从低到高依次为:2000, 20 n , 4n 2 , 3n 。
n , n ,n 2/3 ,
3 2
n !的增长率比它们中的每一个都要大,应排在最后
一位。
计算下列程序片断的时间代价: 1;
(i)
{
(“\n ”);
1;
}
【答】循环控制变量 i从 1 增加到 n ,循环体执行 n 次, 第一句 i的初始化执行次数为 1 ,第二句执行n 次,循环体中第一句执行 n 次,第二句i从 1 循环到n ,共执行n 次。所以该程序段总的时间代价为:
T (n ) = 1 +n + 2n = 3 1 =O (n )
计算下列程序片断的时间代价: 1;
(i)
{
1; (j)
{
1; (k)
{
(“\n ”); 1;
}
1;
}
1;
}
【答】循环控制变量 i从 1 增加到 n ,最外层循环体执行n 次,循环控制变量 j从 1 增加到 n ,中间层循环体执行n 次,循环控制变量k 从 1 增加到 n ,最内层循环体执行n 次,所以该程序段总的时间代价为:
T (n ) = 1 +n + n{1 + n + n[1 + n + 2n +1] +1 +1}+ 1
= 3n 3 + 3n 2 +4n +2
= O (n 3 )
线性表
试写一个插入算法 (, p, x ),在所指顺序表中,下标为 p 的元素之后,插入一个值为 x 的元素,返回插入成功与否的标志。
【答】
数据结构
采用 2.1.2 节中顺序表定义。
( , p, x ) {
/* 在所指顺序表中下标为 p 的元素之后插入元素 x */ q;
( n = ) { /* 溢出 */ (“!\n” );
0;
}
(p0 p1 ) { /* 不存在下标为 p 的元素
*/
(“ ! \n” ); 0;
}
(n - 1; q1; ) /* 插入位置与之后的元素均后移一个位置 */
[1] = [q];
[1] = x; /* 插入元素 x */
n = n + 1; /* 元素个数加 1 */ 1;
}
2 试写一个删除算法(, x,)在所指顺序表中,删除一个值为 x的元素,返回删除成功与否的标志。
【答】
数据结构
采用 2.1.2 节中顺序表定义。
( , p, x ) {
/* 在所指顺序表中删除值为 x 的元素 */
;
(0) /*查找值为x 的元素的下标*/ ([p]){
(; q1; ) /* 被删除元素之后的元素均前移一个位置 */
[q]=[1];n = n-1;
[q]
=
[1];
n = n
-
1;
1 ;
}
0;
}
设有一线性表e = (e, e , e , … ,
),其逆线性表定
0 1 2 1
义为e = (
1
, … , e
2
, e )。请设计一个算法,将用顺
1 0
序表表示的线性表置逆,要求逆线性表仍占用原线性表的
空间。
【答】
数据结构
采用 2.1.2 节中顺序表的定义。思路
考虑对数组[ 进] 行置逆,即把第一个元素和最后一个元素换
位置,把第二个元素和倒数第二个元素换位置……。注意
这种调换的工作只需对数组的前一半元素进行,所以设置整数变量用于存放数组长度的一半的值。大家可以考虑一下:为什么不能对整个数组进行如上的对元素“换位置”的工作?(提示:这样会将本来已经置逆的线性表又置逆回来,即又变成了原来的 表。)
顺序表的置逆算法
( ){
x;
, i;
(n 0 n 1) ; /*空表或只有一个元素,直接返回*/
= n / 2;
( i = 0; i ; ){ /* 只需调换半个表的元素*/
x = [i];
[i] = [n 1 i];
您可能关注的文档
最近下载
- 新高考数学一轮复习第4章 第04讲 简单的三角恒等变换 (精讲+精练)(教师版).doc VIP
- 《大学生商业基础教程)》 教案大纲.pdf VIP
- 2025GTYQ-ESD200工业及商业用途点型可燃气体探测器.docx VIP
- 《场地设计》2014年历年真题.pdf VIP
- 高考英语语法填空历年真题和答案详解权威整理.doc VIP
- 产业经济学 课后复习思考习题答案(刘志彪) 及 期末试题库大全.docx
- 刮痧PPT课件制作.pptx VIP
- 美国AB变频器说明书 22F Power Flex 4m.pdf VIP
- 为人处世(新员工培训).docx VIP
- 2026年数据分析和人工智能规划指南-Gartner.pptx VIP
原创力文档

文档评论(0)