版权声明:本文为博主原创文章,需表明来源,方可随意转载。 https://blog.csdn.net/qq_36589706/article/details/84290222
1-1 在具有N个结点的单链表中,访问结点和增加结点的时间复杂度分别对应为O(1)和O(N)。 (3分) T
1-2 无向连通图至少有一个顶点的度为1。 (3分) F
1-3 算法分析的两个主要方面是时间复杂度和空间复杂度的分析。 (2分) T
1-4 某二叉树的后序和中序遍历序列正好一样,则该二叉树中的任何结点一定都无右孩子。(3分) T
1-5 将1、2、3、4、5、6顺序插入初始为空的AVL树中,当完成这6个元素的插入后,该AVL树的先序遍历结果是:4、2、1、3、5、6。 (3分) T
1-6 如果无向图G必须进行两次广度优先搜索才能访问其所有顶点,则G一定有2个连通分量。(3分) T
1-7 如果无向图G必须进行两次广度优先搜索才能访问其所有顶点,则G中一定有回路。 (3分) F
1-7 一棵有124个结点的完全二叉树,其叶结点个数是确定的。 (3分) T
1-8 任何二叉搜索树中同一层的结点从左到右是有序的(从小到大)。 (3分) T
1-9 所谓“循环队列”是指用单向循环链表或者循环数组表示的队列。 (2分) F
1-10 若一个栈的输入序列为{1, 2, 3, 4, 5},则不可能得到{3, 4, 1, 2, 5}这样的出栈序列。 (3分) T
1-11 在一棵由包含4、5、6等等一系列整数结点构成的二叉搜索树中,如果结点4和6在树的同一层,那么可以断定结点5一定是结点4和6的父亲结点。(3分)F
5-1
下列代码的功能是将小顶堆H
中指定位置P
上的元素的整数键值下调D
个单位,然后继续将H
调整为小顶堆。
void DecreaseKey( int P, int D, PriorityQueue H )
{
int i, key;
key = H->Elements[P] - D;
for ( i = P (6分); H->Elements[i/2] > key; i/=2 )
H->Element[i]=H->Element[i/2](6分);
H->Elements[i] = key;
}
5-2 下列代码的功能是返回带头结点的单链表L
的逆转链表。
List Reverse( List L )
{
Position Old_head, New_head, Temp;
New_head = NULL;
Old_head = L->Next;
while ( Old_head ) {
Temp = Old_head->Next;
old_head->Next=New_head(6分);
New_head = Old_head;
Old_head = Temp;
}
old_head=Temp(6分);
return L;
}