2.23专项测试复盘

  • 将关键字序列50,40,95,20,15,70,60,45,80调整成一个小根堆,堆结构是15,20,60,45,40,70,95,50,80()。

    解析:创建堆的基本思想:先把无序的关键字按顺序构造成完全二叉树,从最后一个分支节点开始往前,不断地利用筛选算法,将一棵棵子树调整为一个堆(让根与其左右子节点比,将他们三个最小的值选出来作为根,反复交换使所有结点满足小根),一直进行到完全二叉树的根节点为止。
    答案:√

  • 设某强连通图中有 n 个顶点,则该强连通图中最小的边数为n,最大边数为n(n-1)

  • AOE网应该是一个( 无环图 )。

  • 链接线性表是顺序存取的线性表 。

  • 无向图特有:连接多重表。有向图特有:十字链表,边集数组。二者共有:邻接表,邻接矩阵。

  • 非空广义表的表头可以是原子或子表,表尾一定是子表

  • 对于一个含n个元素的无序数组,构建一个大顶堆(Max-Heap),该操作的时间复杂度是O(n)

  • 定义语句"double * array [8]"的含义正确的是(array是一个数组,数组的每一个元素是指向双精度实型数据的指针)。

  • 给出以下定义:
    Char x[]=”abcdefg”;
    Char y[]={‘a’,’b’,’c’,’d’,’e’,’f’,’g’};

    A. 数组X和数组Y等价
    B. 数组X和数组Y的长度相同
    C. 数组X的sizeof运算值大于数组Y的sizeof运算值
    D. 数组X的sizeof运算值小于数组Y的sizeof运算值

    解析:x如此定义会在后面添加'\0',所以x比y多一个结束符号
    在这里插入图片描述
    答案:C

  • 若X是二叉树中序线索树中一个有左孩子的结点,且X不为根,则X的前驱为X的左子树中最右结点

  • 广义表长度=属于最外层括号的逗号数加一。
    广义表深度=删除几层括号后可成为一个序列。

  • 将N条长度均为M的有序链表进行合并,合并以后的链表也保持有序,时间复杂度为(O(N * M * logN))。

  • 现有一完全的P2P共享协议,每次两个节点通讯后都能获取对方已经获取的全部信息,现在使得系统中每个节点都知道所有节点的文件信息,共n个节点,假设只能通过多次两个对等节点之间通讯的方式,则最少需要(2n-4)次通讯

  • 单循环链表的主要优点是(从表中任一结点出发都能扫描到整个链表)。

  • 建立一个长度为n的有序单链表的时间复杂度为(O(n^2))。

  • 有一个100*90的稀疏矩阵,非0元素有10个,设每个整型数占2字节,则用三元组表示该矩阵时,所需的字节数是()
    A. 60
    B. 66
    C. 18000
    D. 33

    解析:每个非零元素占3 * 2=6个字节,共10个非零元素,需6 * 10 = 60 个字节;
    此外,还一般要用三个整数来存储矩阵的行数、列数和总元素个数,又需要3 * 2 = 6个字节;
    总共:60 + 6 = 66 个字节。

    答案:B

posted @ 2020-02-23 18:48  19呀  阅读(237)  评论(0编辑  收藏  举报