中国大学MOOC-陈越、何钦铭-数据结构-2018秋期中考试

版权声明:本文为博主原创文章,需表明来源,方可随意转载。 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;
}

猜你喜欢

转载自blog.csdn.net/qq_36589706/article/details/84290222