设一组初始记录关键字序列为(55,63,44,38,75,80,31,56),则利用筛选法建立 的初始堆为____
时间: 2023-10-03 11:06:53 浏览: 111
抱歉,我之前的回答仍然有误,正确的建堆过程如下:
将这些关键字序列转化为完全二叉树后,得到如下的图示:
```
55
/ \
63 44
/ \ / \
38 75 80 31
/
56
```
从最后一个非叶子节点开始,也就是第 3 个节点(值为 44),进行下滤操作,得到如下的堆:
```
55
/ \
63 80
/ \ / \
38 75 44 31
/
56
```
继续从第 2 个节点(值为 63)开始,进行下滤操作,得到如下的堆:
```
80
/ \
75 55
/ \ / \
38 31 44 63
/
56
```
最后从根节点开始进行下滤操作,得到最终的堆:
```
80
/ \
75 56
/ \ / \
38 31 44 63
/
55
```
因此,利用筛选法建立的初始堆为(80,75,56,38,31,44,63,55)。
阅读全文