• 2022-05-26
    用数组A[1,...,n]顺序存储完全二叉树的各结点,则当i<=(n-1)/2时,结点A[i]的右子女为( )。[/i]
    A: A[2i-1]
    B: A[2i+1]
    C: A[2i]
    D: 不存在
  • B

    内容

    • 0

      将一棵有n个结点的完全二叉树用宽度优先搜索的方式存储在一个数组tree&#91;&#93;中,则根据完全二叉树的特性,下列选项中不正确的是:()。 A: 若2*i<=n,那么tree[i]的左孩子为tree[2*i];若2*i+1<=n,那么tree[i]的右孩子为tree[2*i-1] B: 若i>1,tree[i]的父亲为tree[idiv2] C: 若i>ndiv2,那么tree[i]为叶子结点 D: 若i<(n-1)div2.那么tree[i]必有两个孩子

    • 1

      有以下程序#include #define N 4 main(){ int a&#91;N&#93;&#91;N&#93;={0},i,j,k; for( i=0; i A: 1<br/>1 1 1 B: 1<br/>2 2 1 C: 2<br/>1 1 2 D: 2<br/>2 2 2

    • 2

      按层次次序将一棵有n个结点的完全二叉树的所有结点从1到n编号,当i<n/2时,编号为i的结点的左子女的编号是 A: 2i-1 B: 2i C: 2i+1 D: 不确定

    • 3

      在完全二叉树中,若一个结点的编号为i,如果它有右孩子,则右孩子的编号必为( ) A: 2 * i B: 2 * i + 1 C: 2 * i - 1 D: 不能确定

    • 4

      在下列算法中,时间复杂度是O(1)的操作是( ) A: 在n个结点的顺序表中,访问第i个结点(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n) B: 在n个结点的链表中,访问第i个结点(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n) C: 在n个结点的顺序表中,删除第i个结点(1≤i≤n) D: 在n个结点的链表中,删除第i个结点(1≤i≤n)