#P1414. 【Day5】BST 与堆完整程序阅读(12题)

【Day5】BST 与堆完整程序阅读(12题)

程序一:BST 插入与查找

依次把 8,3,10,1,6,14,4,7,13 插入空 BST,不插入重复值。完成第 1~6 题。

第 1 题

最终 BST 的中序遍历是什么?

{{ input(1) }}


第 2 题

查找 13 时依次经过哪些结点?

{{ input(2) }}


第 3 题

查找 7 时共比较几个结点?

{{ input(3) }}


第 4 题

根在第 1 层时,最终 BST 的深度是多少?

{{ input(4) }}


第 5 题

若把严格递增序列依次插入空 BST,查找最坏复杂度可能是( )。

{{ select(5) }}

  • O(1)O(1)
  • O(logn)O(\log n)
  • O(n)O(n)
  • O(n2)O(n^2)

第 6 题

无重复值 BST 的中序遍历一定( )。

{{ select(6) }}

  • 递增
  • 递减
  • 层序排列
  • 与插入顺序相同

程序二:大根堆删除根

数组按 1 下标保存大根堆:9,7,8,3,2,5。删除根后,把最后元素放到根并向下调整。完成第 7~12 题。

第 7 题

原数组是否满足大根堆性质?

{{ select(7) }}


第 8 题

删除根并完成下沉后,堆数组是什么?

{{ input(8) }}


第 9 题

大根堆的根一定保存什么?

{{ input(9) }}


第 10 题

1 下标堆中编号 2 的两个孩子编号分别是多少?

{{ input(10) }}


第 11 题

大根堆的中序遍历是否一定有序?

{{ select(11) }}


第 12 题

一次下沉调整的最坏时间复杂度是( )。

{{ select(12) }}

  • O(1)O(1)
  • O(logn)O(\log n)
  • O(n)O(n)
  • O(n2)O(n^2)