• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            A Za, A Za, Fighting...

            堅(jiān)信:勤能補(bǔ)拙

            2011排序-堆排序

            堆排序: 時(shí)間復(fù)雜度 O(nlogn),非穩(wěn)定排序

            比如:3 27 36 27
            如果堆頂3先輸出,則,第三層的27(最后一個(gè)27)跑到堆頂,然后堆穩(wěn)定,繼續(xù)輸出堆頂,是剛才那個(gè)27,這樣說(shuō)明后面的27先于第二個(gè)位置的27輸出,不穩(wěn)定。

            #define LEFT(i) (((i)<<1)+1)
            #define RIGHT(i) (((i)+1)<<1)
            #define PARENT(i) (((i)-1)>>1)

            void
            min_heapify(
            int index, int *heap, int heap_size) //precondition: LEFT(index) and RIGHT(index) are both already min-heap
            {
                
            int min = index;
                
            if(LEFT(index)<heap_size && heap[LEFT(index)]<heap[min])
                    min 
            = LEFT(index);
                
            if(RIGHT(index)<heap_size && heap[RIGHT(index)]<heap[min])
                    min 
            = RIGHT(index);

                
            if(min != index) {
                    swap(heap
            +min, heap+index);
                    min_heapify(min, heap, heap_size);
                }
            }

            void
            build_heap(
            int *heap, int heap_size)
            {
                
            int i = (heap_size>>1);
                
            for( ; i>=0--i)
                    min_heapify(i, heap, heap_size);
            }

            void
            heap_sort(
            int *heap, int heap_size)
            {
                build_heap(heap, heap_size);

                
            while(heap_size > 1) {
                    swap(heap, heap
            +heap_size-1);
                    
            --heap_size;
                    min_heapify(
            0, heap, heap_size);
                }
            }

            posted on 2011-07-29 20:25 simplyzhao 閱讀(100) 評(píng)論(0)  編輯 收藏 引用 所屬分類(lèi): R_找工復(fù)習(xí)2011

            導(dǎo)航

            <2011年7月>
            262728293012
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            統(tǒng)計(jì)

            常用鏈接

            留言簿(1)

            隨筆分類(lèi)

            隨筆檔案

            搜索

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            久久久久女教师免费一区| 久久99精品国产麻豆蜜芽| 2020最新久久久视精品爱| 久久久久久A亚洲欧洲AV冫| 欧美色综合久久久久久 | 色综合久久久久综合体桃花网| 国产精品久久精品| 久久综合色老色| 青青草原1769久久免费播放| 精品国产乱码久久久久软件| 99热都是精品久久久久久| 久久精品人人做人人妻人人玩| 日韩va亚洲va欧美va久久| 精品久久久久久无码专区不卡| 色婷婷噜噜久久国产精品12p | 亚洲国产另类久久久精品| 久久亚洲2019中文字幕| 国产精品久久久99| 久久成人国产精品一区二区| 国产三级观看久久| 久久婷婷五月综合国产尤物app | yy6080久久| 精品久久久久久久| 久久99精品久久久久久齐齐| 一本久久免费视频| WWW婷婷AV久久久影片| 青青青国产精品国产精品久久久久 | 久久激情五月丁香伊人| 久久这里只有精品首页| 久久本道伊人久久| 亚洲人成精品久久久久 | 亚洲va国产va天堂va久久| 草草久久久无码国产专区| 人人狠狠综合久久88成人| 狠狠色综合网站久久久久久久| 久久久久久一区国产精品| 国内精品久久久久影院免费| 大香伊人久久精品一区二区| 精品乱码久久久久久夜夜嗨| 久久亚洲国产中v天仙www| AV色综合久久天堂AV色综合在|