日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

堆是一種什么排序


堆是一種什么排序


堆是一種選擇排序,堆排序(Heapsort)是指利用堆積樹(shù)(堆)這種數(shù)據(jù)結(jié)構(gòu)所設(shè)計(jì)的一種排序算法,它是選擇排序的一種 ??梢岳脭?shù)組的特點(diǎn)快速定位指定索引的元素 。
【堆是一種什么排序】堆分為大根堆和小根堆,是完全二叉樹(shù) 。大根堆的要求是每個(gè)節(jié)點(diǎn)的值都不大于其父節(jié)點(diǎn)的值 。在數(shù)組的非降序排序中,需要使用的就是大根堆,因?yàn)楦鶕?jù)大根堆的要求可知,最大的值一定在堆頂 。
堆排序的時(shí)間,主要由建立初始堆和反復(fù)重建堆這兩部分的時(shí)間開(kāi)銷(xiāo)構(gòu)成,它們均是通過(guò)調(diào)用Heapify實(shí)現(xiàn)的 。
由于建初始堆所需的比較次數(shù)較多,所以堆排序不適宜于記錄數(shù)較少的文件 。堆排序是就地排序,輔助空間為0 。它是不穩(wěn)定的排序方法 。(排序的穩(wěn)定性是指如果在排序的序列中,存在前后相同的兩個(gè)元素的話,排序前和排序后他們的相對(duì)位置不發(fā)生變化)

    推薦閱讀