堆:是一个完全二叉树,有大根堆跟小根堆的区别。
大根堆最大数在根节点(即最上方),他的子树也都是大根堆。小根堆同理,最小数在根节点。
堆排序:只用把根节点取出,再把最后一个节点放入根节点的位置,然后进行排序,排序的方式是(比如大根堆),比较新的根节点跟它的两个子节点的大小,如果比它们其中一个小就跟它互换位置(如果比两个子节点都小则跟最小的那个换),然后去跟新的子节点比较(即递归)
2021-04-27
最新推荐文章于 2021-07-18 23:02:21 发布
堆:是一个完全二叉树,有大根堆跟小根堆的区别。
大根堆最大数在根节点(即最上方),他的子树也都是大根堆。小根堆同理,最小数在根节点。
堆排序:只用把根节点取出,再把最后一个节点放入根节点的位置,然后进行排序,排序的方式是(比如大根堆),比较新的根节点跟它的两个子节点的大小,如果比它们其中一个小就跟它互换位置(如果比两个子节点都小则跟最小的那个换),然后去跟新的子节点比较(即递归)