《Data Structure & Algorithm Analysis in C》Chap.6笔记

1.优先队列,至少允许两种操作:插入Insert和删除最小值DeleteMin。
2.实现方法:链表,二叉堆 binary heap。
3.二叉堆
结构性质:完全二叉树。
堆序性质:最小元总可以在根处找到。
基本操作:插入(上滤策略 percolate up),删除最小元(下滤策略 percolate down),降低关键字的值,增加关键字的值,删除,构建堆
4.应用:堆排序,事件模拟。
5.d-堆
6.左式堆 leftist heap
左儿子的零路径长至少与右儿子的一样大。
合并操作:a.如果有一棵树是空树,则返回另一棵树;否则递归地合并根结点较小的堆的右子树和根结点较大的堆;b.更新零路径长。
7.斜堆(再看)
8.二项队列
操作:合并(相加),插入(特殊情况的合并),删除最小元。

猜你喜欢

转载自blog.csdn.net/u013213111/article/details/87481609