当前位置:
文档之家› 数据结构第1单元课后练习答案
数据结构第1单元课后练习答案
答:划线语句的执行次数为 n-1 。算法复杂度为O(n) 。
(2)i=1; x=0; do{ x++; i=2*i; } while (i<n);
答: 循环执行次数x与i之间的关系是 i==2x。退出循环时,i>=n,所以 2x>=n,所以x= log2n 。即执行 次数为 log2n ,算法复杂度为 O(log2n) 。
(3) for(int i=1;i<=n;i++) for(int j=1;j<=i;j++) for (int k=1;k<=j;k++) x++;
答:分别为 n(n+1)(n+2)/6 和O(n3)
ni
S
j
ni
1
jnii 1 1ni2 1ni
2 2 2 i 1j 1k 1 i 1j 1 i 1
A. 操作 B. 运算 C. 元素序偶 D. 结点关系
说明:“数据元素”是数据结构这门学科中的正式称谓。 “结点”有时还包含一些附加的内容,如指针域。
算法的健壮性是指 。
A. 当输入不合法数据时,程序会采取应急措施 B. 算法是正确的 C. 程序不会被病毒所染 D. 算法执行一单元 绪论
数据的逻辑结构是数据在计算机中的表示( × )。 C++提供了实现抽象数据类型的机制( √ )。 一个C++语言程序是用C++语言描述的一个算法( × )。 散列结构是一种特殊的存储结构方式( √ )。 算法分析通常是指对算法实施事前分析( √ )。
一个数据结构DS可以用一个二元组 DS=(D,R)表示,期中D是数据元素 的有限集合,R是D中 的集合。
i 1
i 1
n i21n2n1n1
i1
6
n i 1nn1
i1
2
S 1 n 2 n 1 n 1 1 n n 1 n n 1 n 2
12
4
6
本内容仅供参考,如需使用,请根据自己实际情况更改后使用!
放映结束 感谢各位批评指导!
让我们共同进步
A. 2n+O(n)=O(n2) B. B. O(n)=3n C. C. 3n2+nlog2n=O(nlogn) D. D. 6=O(6)
说明:f=O(g)表示f的增长速度不超过Cg(C是非零常量)。
确定下列各程序段的程序步,确定划线语句的执行次数, 计算它们的渐近时间复杂度。
(1) i=1; k=0; do{ k=k+10*i; i++; } while(i<=n-1)