1、下列叙述中正确的是()。
A.算法的效率只与问题的规模有关,而与数据的存储结构无关
B.算法的时间复杂度是指执行算法所需要的计算工作量
C.数据的逻辑结构与存储结构是一一对应的
D.算法的时间复杂度与空间复杂度一定相关
【答案】B
【达聪解析】A项错误,采用不同的存储结构,数据处理效率是不同的;B项正确,算法的时间复杂度是指算法在计算机内执行时所需时间的度量;C项错误,数据的逻辑结构在计算机存储空间的存放形式称为数据的存储结构,二者并非一一对应;D项错误,空间复杂度是指算法在计算机内执行时所需存储空间的度量,与时间复杂度不相关。
2、设二叉树如下:
则中序遍历为()。
A.ABDEGCFH
B.DBGEAFHC
C.DGEBHFCA
D.ABCDEFGH
【答案】B
【达聪解析】二叉树遍历方式有:①前序遍历,即访问根结点在访问左子树和访问右子树之前;②中序遍历,即访问根结点在访问左子树和访问右子树两者之间;③后序遍历,即访问根结点在访问左子树和访问右子树之后。由②知,根结点A在BDEG四个节点后面访问,CHF三个节点前面访问,很容易排除ACD选项,选B。另外,可以复习一下三种遍历方式的规则,本题中前序遍历为ABDEGCFH,中序遍历为DBGEAFHC,后序遍历为DGEBHFCA。
3、设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,real=15,则循环队列中的元素个数为()。
A.16
B.20
C.0或35
D.15
【答案】C
【达聪解析】在循环队列中,front为队首指针,指向队首元素的前一个位置;rear为队尾指针,指向队尾元素。front=rear=15时,①循环队列可能为空,队首和队尾指针都指向空元素,此时循环队列的元素个数为0;②循环队列可能为满,此时循环队列的元素个数为35。答案选择C选项。
4、下列关于栈的叙述中,正确的是()。
A.栈顶元素一定是最先入栈的元素
B.栈操作遵循先进后出的原则
C.栈底元素一定是最后入栈的元素
D.以上三种说法都不对
【答案】B
【达聪解析】栈是一种“先进后出”的线性表,最先入栈的元素最后出栈,最后入栈的元素最先出栈,所以栈底元素一定是最先入栈最后出栈的元素,而栈顶元素一定是最后入栈最先出栈的元素。答案选择B选项。