将数字 {10, 12, 1, 14, 6, 5, 8, 15, 3, 9, 7, 4, 11, 13, 2} 逐一插入一个初始为空的最小堆(小顶堆),得到的堆序列为:
时间: 2023-09-12 10:05:06 浏览: 198
### 回答1:
使用堆排序算法对数字 {10, 12, 1, 14, 6, 5, 8, 15, 3, 9, 7, 4, 11, 13, 2} 逆一插入一个初值为空的最小堆(小顶堆),得到的堆序列为:
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
### 回答2:
要将给定的数字逐一插入一个初始为空的最小堆,得到的堆序列如下:
插入数字10,此时堆为空,将10插入堆中。
插入数字12,与堆顶元素10比较,12大于10,将12插入到第二个位置。
插入数字1,与堆顶元素10比较,1小于10,将10移动到第三个位置,再将1插入堆中。
插入数字14,与堆顶元素1比较,14大于1,将14插入到第四个位置。
插入数字6,与堆顶元素1比较,6大于1,将6插入到第五个位置。
插入数字5,与堆顶元素1比较,5小于1,将1移动到第六个位置,再将5插入堆中。
插入数字8,与堆顶元素1比较,8大于1,将8插入到第七个位置。
插入数字15,与堆顶元素1比较,15大于1,将15插入到第八个位置。
插入数字3,与堆顶元素1比较,3小于1,将3移动到第九个位置,再将3插入堆中。
插入数字9,与堆顶元素1比较,9大于1,将9插入到第十个位置。
插入数字7,与堆顶元素1比较,7大于1,将7插入到第十一个位置。
插入数字4,与堆顶元素1比较,4小于1,将1移动到第十二个位置,再将4插入堆中。
插入数字11,与堆顶元素1比较,11大于1,将11插入到第十三个位置。
插入数字13,与堆顶元素1比较,13大于1,将13插入到第十四个位置。
插入数字2,与堆顶元素1比较,2小于1,将1移动到第十五个位置,再将2插入堆中。
最终得到的小顶堆序列为:1, 3, 2, 5, 4, 6, 8, 15, 9, 7, 10, 12, 11, 13, 14。
### 回答3:
将数字 {10, 12, 1, 14, 6, 5, 8, 15, 3, 9, 7, 4, 11, 13, 2} 逐一插入一个初始为空的最小堆,得到的堆序列为:
1、首先将数字10插入堆中,堆中只有一个节点10,所以得到的堆序列为:10;
2、接下来将数字12插入堆中,由于12比堆的根节点10大,则将12与10交换位置,得到的堆序列为:12, 10;
3、然后将数字1插入堆中,1比父节点12小,所以将1与12交换位置,得到的堆序列为:1, 10, 12;
4、继续将数字14插入堆中,14比父节点10大,所以放在父节点12的右子节点位置,得到的堆序列为:1, 10, 12, 14;
5、将数字6插入堆中,6比父节点1大,所以放在父节点1的右子节点位置,得到的堆序列为:1, 6, 12, 14, 10;
6、将数字5插入堆中,5比父节点1大,所以放在父节点1的左子节点位置,得到的堆序列为:1, 5, 12, 14, 10, 6;
7、将数字8插入堆中,8比父节点1大,所以放在父节点1的左子节点位置,得到的堆序列为:1, 5, 8, 14, 10, 6, 12;
8、将数字15插入堆中,15比父节点1大,所以放在父节点1的左子节点位置,得到的堆序列为:1, 5, 8, 14, 10, 6, 12, 15;
9、将数字3插入堆中,3比父节点1大,所以放在父节点1的左子节点位置,得到的堆序列为:1, 3, 8, 5, 10, 6, 12, 15, 14;
10、将数字9插入堆中,9比父节点1大,所以放在父节点1的右子节点位置,得到的堆序列为:1, 3, 8, 5, 9, 6, 12, 15, 14, 10;
11、将数字7插入堆中,7比父节点1大,所以放在父节点1的右子节点位置,得到的堆序列为:1, 3, 7, 5, 9, 6, 12, 15, 14, 10, 8;
12、将数字4插入堆中,4比父节点1大,所以放在父节点1的左子节点位置,得到的堆序列为:1, 3, 7, 4, 9, 6, 12, 15, 14, 10, 8, 5;
13、将数字11插入堆中,11比父节点1大,所以放在父节点1的右子节点位置,得到的堆序列为:1, 3, 7, 4, 9, 6, 12, 15, 14, 10, 8, 5, 11;
14、将数字13插入堆中,13比父节点1大,所以放在父节点1的右子节点位置,得到的堆序列为:1, 3, 7, 4, 9, 6, 12, 15, 14, 10, 8, 5, 11, 13;
15、最后将数字2插入堆中,2比父节点1大,所以放在父节点1的左子节点位置,得到的堆序列为:1, 2, 7, 4, 3, 6, 12, 15, 14, 10, 8, 5, 11, 13, 9。
因此,将数字 {10, 12, 1, 14, 6, 5, 8, 15, 3, 9, 7, 4, 11, 13, 2} 逐一插入一个初始为空的最小堆,得到的堆序列为:1, 2, 7, 4, 3, 6, 12, 15, 14, 10, 8, 5, 11, 13, 9。