数据结构与算法B作业一,概论

传说中的DataStructure B(Da Sha Bi)的作业~

1.下列不属于线性结构的是:
二叉树
队列
这货选二叉树,剩下仨都是线性结构…没啥好说的……

2.以下哪种结构是逻辑结构,而与存储和运算无关:
散列表
单链表
顺序表
线性表
这货选的是线性表,单链表和顺序表(一般是数组)都是线性表。
3.计算运行下列程序段后m的值:
n = 10; m = 0;

for (i =1; i<=n; i++)

    for (j = 2*i; j<=n; j++) 

        m = m+1;

唔…答案是25,i和j的路径是
i = 1 : j = 2, j = 3 ... j = 10
i = 2 : j = 4, j = 5 ... j = 10
所以是9 + 7 + 5 + 3 + 1 = 25
如果不信可以用下面的代码自己跑……


#include <iostream>

using namespace std;

int main()
{
	int i, j;
	int n, m;
	n = 10;
	m = 0;
	for(i = 1; i <= n; i++){
		for(j = 2 * i; j <= n; j++){
			m = m + 1;
		}
	}
	cout << m << endl;
	return 0;
}

4.关于算法特性描述正确的有:
算法保证计算结果的正确性。
组成算法的指令可以有限也可能无限。
算法描述中下一步执行的步骤不确定。
算法的有穷性指算法必须在有限步骤内结束。

选第一个和第四个,算法四个性质,通用、有效、确定、有穷。
第二项违反有穷性:算法的执行必须在有限步内结束
第三项违反确定性:算法每执行一步之后,对于它的下一步,应该有明确的指示。即,保证每一步之后都有关于下一步动作的指令,不能缺乏下一步指令或仅仅含有模糊不清的指令。


5.由大到小写出以下时间复杂度的序列:
(1) 2n2
(2) n3
(3) nlog10⁡n
(4) 2n
(5) 22n

排序嘛…(5)(4)(2)(1)(3),其实就是看阶数。
最后一项的复杂程度不忍直视……捂眼……



6.下列说法正确的有:
函数 fn Ogn,当常数 a足够大时,一定有函数 gn Oafn
a>b>1,函数 loga⁡n Ologb⁡n,但 logb⁡n不一定是 Ologa⁡n
如果函数 fn Ohn gn Ohn,那么 fn+gn Ohn
如果函数 fn Ogn gn Ohn,那么 fn Ohn

选第三、第四…这个我也不确定… 数分没学好……




你可能感兴趣的:(数据结构与算法B作业一,概论)