欧美一区2区三区4区公司二百,国产精品婷婷午夜在线观看,自拍偷拍亚洲精品,国产美女诱惑一区二区

常見(jiàn)排序算法之堆排序

堆排序

堆排序(Heapsort)是指利用堆積樹(shù)(堆)這種數(shù)據(jù)結(jié)構(gòu)所設(shè)計(jì)的一種排序算法,它是選擇排序的一種。它是通過(guò)堆來(lái)進(jìn)行選擇數(shù)據(jù)。需要注意的是排升序要建大堆,排降序建小堆

void AdjustDown(int* a, int n, int parent)
{
? ? int child = parent * 2 + 1;
? ? while (child < n)
? ? {
? ? ? ? // 找出小的那個(gè)孩子
? ? ? ? if (child + 1 < n && a[child + 1] > a[child])
? ? ? ? {
? ? ? ? ? ? ++child;
? ? ? ? }

? ? ? ? if (a[child] > a[parent])
? ? ? ? {
? ? ? ? ? ? Swap(&a[child], &a[parent]);
? ? ? ? ? ? // 繼續(xù)往下調(diào)整
? ? ? ? ? ? parent = child;
? ? ? ? ? ? child = parent * 2 + 1;
? ? ? ? }
? ? ? ? else
? ? ? ? {
? ? ? ? ? ? break;
? ? ? ? }
? ? }
}

?

void HeapSort(int* a, int n)
{
? ? // 向下調(diào)整建堆
? ? // O(N)
? ? for (int i = (n - 1 - 1) / 2; i >= 0; i--)
? ? {
? ? ? ? AdjustDown(a, n, i);
? ? }

? ? // O(N*logN)
? ? int end = n - 1;
? ? while (end > 0)
? ? {
? ? ? ? Swap(&a[0], &a[end]);
? ? ? ? AdjustDown(a, end, 0);
? ? ? ? --end;
? ? }
}

堆排序的特性總結(jié):

  1. 堆排序使用堆來(lái)選數(shù),效率就高了很多。
  2. 時(shí)間復(fù)雜度:O(N*logN)
  3. 空間復(fù)雜度:O(1)
  4. 穩(wěn)定性:不穩(wěn)定

    常見(jiàn)排序算法之堆排序

文章鏈接: http://www.qzkangyuan.com/25983.html

文章標(biāo)題:常見(jiàn)排序算法之堆排序

文章版權(quán):夢(mèng)飛科技所發(fā)布的內(nèi)容,部分為原創(chuàng)文章,轉(zhuǎn)載請(qǐng)注明來(lái)源,網(wǎng)絡(luò)轉(zhuǎn)載文章如有侵權(quán)請(qǐng)聯(lián)系我們!

聲明:本站所有文章,如無(wú)特殊說(shuō)明或標(biāo)注,均為本站原創(chuàng)發(fā)布。任何個(gè)人或組織,在未征得本站同意時(shí),禁止復(fù)制、盜用、采集、發(fā)布本站內(nèi)容到任何網(wǎng)站、書(shū)籍等各類媒體平臺(tái)。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進(jìn)行處理。

給TA打賞
共{{data.count}}人
人已打賞
建站教程投稿分享

常見(jiàn)排序算法之選擇排序

2023-12-14 9:58:02

建站教程

各個(gè)排序的效率比較

2023-12-14 10:41:23

0 條回復(fù) A文章作者 M管理員
    暫無(wú)討論,說(shuō)說(shuō)你的看法吧
?
個(gè)人中心
購(gòu)物車
優(yōu)惠劵
今日簽到
有新私信 私信列表
搜索
主站蜘蛛池模板: 林芝县| 漯河市| 巴东县| 淮北市| 皮山县| 额济纳旗| 武义县| 华容县| 中江县| 雷州市| 长宁县| 莒南县| 余姚市| 凤翔县| 沁阳市| 阳泉市| 曲松县| 庆元县| 拉孜县| 大城县| 宝鸡市| 房产| 和平县| 澳门| 怀柔区| 永年县| 大理市| 高平市| 正阳县| 蒲江县| 军事| 敦煌市| 无锡市| 新巴尔虎左旗| 顺昌县| 西充县| 石阡县| 湖北省| 中阳县| 墨竹工卡县| 宜君县|