數據結構--堆排序

    通過學習優先隊列和二叉堆,我們知道優先隊列中隊首的元素總是最大(最大堆)或者最小(最小堆)的元素,根據這個規律,如果我們把一系列無序的元素插入到優先隊列中,然後再從優先隊列中逐個刪除元素,則刪除元素的順序是有序的。我們由此可以演變得出一種排序算法--堆排序。     此處以最大堆來討論,堆排序的實現分爲2個階段:構造堆階段和下沉排序階段; 構造堆階段:通過下沉操作,將新添加到堆中的元素放到
相關文章
相關標籤/搜索