#3688. 二叉树·性质与存储(客观练习 32 题)

二叉树·性质与存储(客观练习 32 题)

  1. 以下关于完全二叉树的描述,正确的是( )。

{{ select(1) }}

  • 所有叶子节点都在同一层
  • 只有最底层的节点未被填满,且最底层节点尽量靠左填充
  • 每个节点都有两个子节点
  • 所有节点度数均为2
  1. 在使用数组表示完全二叉树时,如果一个节点的索引为 i(从 0 开始计数),那么其左子节点的索引通常是( )。

{{ select(2) }}

  • 2i
  • 2i+1
  • 2i+2
  • i+1
  1. 对于深度为 k 的二叉树,其最多有( )个节点。

{{ select(3) }}

  • 2^k
  • 2^k - 1
  • 2^(k+1) - 1
  • 2^(k-1)
  1. 若采用顺序存储结构存储一棵有 n 个节点的完全二叉树,数组下标从 1 开始,则节点 i 的右孩子节点下标为( )。

{{ select(4) }}

  • 2i
  • 2i+1
  • 2i-1
  • i/2
  1. 对于有 n 个节点的二叉树,其空指针域的数量为( )。

{{ select(5) }}

  • n+1
  • n-1
  • n
  • 2n
  1. 如果树中的节点 A 是节点 B 的祖先,则节点 A 和节点 B 之间的关系是( )。

{{ select(6) }}

  • A 在 B 的上方
  • B 在 A 的子树中
  • A 是 B 的父节点
  • A 和 B 位于同一层
  1. 一棵二叉树有 n 个节点,则其深度至少为( )。

{{ select(7) }}

  • ⌈log₂(n+1)⌉
  • ⌊log₂n⌋
  • n
  • n/2
  1. 对于完全二叉树,如果节点数为 6,则它的高度(根节点高度为 1)为( )。

{{ select(8) }}

  • 2
  • 3
  • 4
  • 5
  1. 一个满二叉树的第 4 层(根为第 1 层)有( )个节点。

{{ select(9) }}

  • 4
  • 8
  • 16
  • 32
  1. 下列有关二叉树的说法,错误的是( )。

{{ select(10) }}

  • 每个节点最多有两个子节点
  • 二叉树可以为空树
  • 二叉树的所有节点度数都不超过 2
  • 二叉树的左右子树不可交换
  1. 若一颗二叉树有 10 个叶子节点,则它最多有( )个度为 2 的节点。

{{ select(11) }}

  • 8
  • 9
  • 10
  • 11
  1. 在二叉树的链式存储中,每个节点通常包含( )个指针域。

{{ select(12) }}

  • 1
  • 2
  • 3
  • 4
  1. 对于一棵完全二叉树,若节点总数为 2^k - 1,则该树一定是( )。

{{ select(13) }}

  • 满二叉树
  • 平衡二叉树
  • 二叉排序树
  • 完全二叉树
  1. 已知二叉树的节点数为 n,其高度 h 的取值范围是( )。

{{ select(14) }}

  • ⌈log₂(n+1)⌉ ≤ h ≤ n
  • 1 ≤ h ≤ n
  • ⌊log₂n⌋ ≤ h ≤ n
  • h = n
  1. 一个包含 8 个节点的完全二叉树的叶子节点数量最多为( )。

{{ select(15) }}

  • 4
  • 5
  • 6
  • 7
  1. 下列有关二叉树的说法,错误的是( )。

{{ select(16) }}

  • 二叉树可以为空
  • 二叉树每个节点度不超过 2
  • 二叉树是一种特殊的图
  • 二叉树中所有节点度必须为 2
  1. 对于有 n 个节点的完全二叉树,若采用顺序存储结构,其下标范围通常是( )。

{{ select(17) }}

  • 1~n
  • 0~n-1
  • 1~n+1
  • 0~n
  1. 若深度为 h 的二叉树最多有 2^h - 1 个节点,则该二叉树是( )。

{{ select(18) }}

  • 满二叉树
  • 完全二叉树
  • 任意二叉树
  • 平衡二叉树
  1. 关于树的深度和高度,下列说法正确的是( )。

{{ select(19) }}

  • 深度和高度通常可以互换
  • 节点的高度是从该节点向下到最远叶子节点的边数
  • 根节点的深度为 0
  • 以上都对
  1. 关于二叉树的顺序存储,下列哪些说法是正确的?( )

{{ multiselect(20) }}

  • 适用于完全二叉树
  • 使用数组存储
  • 对于不完全二叉树,存储时会浪费空间
  • 可以快速找到某个节点的父节点和子节点
  1. 关于完全二叉树,下列哪些说法是正确的?( )

{{ multiselect(21) }}

  • 只有最后一层节点可能不满
  • 最后一层节点尽量靠左排列
  • 可以用数组进行顺序存储
  • 所有叶子节点都在同一层
  1. 关于二叉树的链式存储结构,下列哪些说法是正确的?( )

{{ multiselect(22) }}

  • 每个节点包含两个指针域
  • 可以方便地进行各种遍历
  • 存储 n 个节点需要 2n 个指针域
  • 空指针域的数量为 n+1
  1. 关于二叉树的性质,下列哪些说法是正确的?( )

{{ multiselect(23) }}

  • 第 i 层最多有 2^(i-1) 个节点
  • 深度为 k 的二叉树最多有 2^k - 1 个节点
  • 叶子节点数 = 度为 2 的节点数 + 1
  • 二叉树的节点数一定为奇数
  1. 关于完全二叉树的顺序存储,下列说法正确的有( )。

{{ multiselect(24) }}

  • 根节点存储在下标为 1 的位置时,节点 i 的左孩子下标为 2i,右孩子下标为 2i+1
  • 可以快速求出节点的父节点
  • 节省存储空间
  • 不支持动态扩展
  1. 关于树的存储结构,下列说法正确的有( )。

{{ multiselect(25) }}

  • 双亲表示法
  • 孩子表示法
  • 孩子兄弟表示法
  • 顺序存储
  1. 关于二叉树的“度”,下列说法正确的有( )。

{{ multiselect(26) }}

  • 节点的度表示其拥有的子节点数量
  • 树的度是所有节点度的最大值
  • 叶子节点的度为 0
  • 完全二叉树的度只能为 0 或 2
  1. 在完全二叉树中,叶子节点只能出现在最后两层。( )

{{ select(27) }}

  • 正确
  • 错误
  1. 一棵有 n 个节点的二叉树,其空指针域的数量为 2n。( )

{{ select(28) }}

  • 正确
  • 错误
  1. 在使用一维数组实现完全二叉树的顺序存储时,如果从下标 0 开始存储,则节点 i 的左孩子下标为 2i+1。( )

{{ select(29) }}

  • 正确
  • 错误
  1. 任何二叉树都可以用顺序存储结构存储。( )

{{ select(30) }}

  • 正确
  • 错误
  1. 对于完全二叉树,其深度为 ⌊log₂n⌋ + 1。( )

{{ select(31) }}

  • 正确
  • 错误
  1. 二叉树的节点数一定为奇数。( )

{{ select(32) }}

  • 正确
  • 错误