優先隊列(C++自實現)

優先隊列(堆)滿足先進先出,而且每次出隊的都是隊列中最小的(也可以是最大的,看實現過程)。 堆是一棵完全二叉樹,所以優先隊列一般用二叉堆實現。 分析: 1.一棵完全二叉樹,所以可以用一個數組表示而不需要用指針。但是用數組就要事先估計堆的大小,所以用一個Capacity表示最大值。 2.因爲保持堆序性質,最小元就是在根上,刪除後還得做一些調整來保持完全二叉樹的結構(實際就是刪除最後一個元素,然後把它
相關文章
相關標籤/搜索