青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨感而發

雜七雜八

統計

留言簿(13)

閱讀排行榜

評論排行榜

尋找第i小元素

今天學習了求第i小元素,被書上忽悠了一下,他硬說是0(n)的復雜度,我怎么看怎么看就是快速排序的思路,只是省去一半的遞歸而已。我開始還以為真的就0(n)呢,自己還想了好久用一個循環搞定之,結果后來發現,o(n)是最理想情況了。哎。書上說的有個中位數來得到o(n)的求第i小元素的方法,可以我愚笨,沒有看懂。我就不信他插入排序不算時間,然后遞歸一下求中衛數,能正確?反正我是沒有看懂,也不敢實現了。只實現了快速排序思路的方法,而且還發現,我寫了N遍快速排序了,居然還出錯!我也發現我以前的寫法也有錯。哎,郁悶啊。繼續加油吧。。堅持。。
奉上源代碼:(沒有什么,就是快排)
#include <stdio.h>
#include 
<stdlib.h>
#include 
<time.h>

//隨機分隔,(就是快排的分割函數)
int RandomPartition(int nData[], int nBegin, int nEnd)
{
    
int i = nBegin + rand() % (nEnd - nBegin);

    
int nX = nData[i];
    nData[i] 
= nData[nBegin];
    nData[nBegin] 
= nX;
    
--nEnd;
    
while(nBegin < nEnd)
    {
        
while(nData[nEnd] > nX)
        {
            
--nEnd;
        }
        
if (nBegin < nEnd)
        {
            nData[nBegin] 
= nData[nEnd];
            nData[nEnd] 
= nX;
            
++nBegin;
        }

        
while (nData[nBegin] < nX)
        {
            
++nBegin;
        }
        
if (nBegin < nEnd)
        {
            nData[nEnd] 
= nData[nBegin];
            
--nEnd;
        }
    }

    nData[nBegin] 
= nX;
    
return nBegin;
}

//遞歸調用得到第i小元素
int RandomIzedRecursion(int nData[], int nBegin, int nEnd, int nPos)
{
    
if (nBegin >= nEnd - 1)        //如果nBegin,直接認為找到了該值
    {
        
return nData[nBegin];
    }
    
int i = RandomPartition(nData, nBegin, nEnd);    //分割兩部分
    if (i == nPos)    //如果剛好分割符號就是nPos,就找到了這個值。
    {
        
return nData[i];
    }

    
if (i > nPos)        //i > nPos。這繼續遞歸nBegin - i的區域。
    {
        
return RandomIzedRecursion(nData, nBegin, i, nPos);
    }
                        
//否則遞歸 i + 1, nEnd區域,不過這時候nPos要相應的改變為nPos - i - 1
    return RandomIzedRecursion(nData, i + 1, nEnd, nPos - i - 1);
    

}

//得到第i小元素
int RandomIzedSelect(int nData[], int nLen, int nPos)
{
    srand((size_t)time(NULL));
    
return RandomIzedRecursion(nData, 0, nLen, nPos);
}

int main()
{
    
int nData[10= {8,2,5,9,3,6,4,7,1,6};    //測試
    int nTest;
    
for (int i = 0; i < 10++i)
    {
        nTest 
= RandomIzedSelect(nData, 10, i);
        printf(
"%d ", nTest);
    }
    printf(
"\n");

    
for (int i = 0; i < 10++i)        //注意,這里是改變了原來的數據
    {
        printf(
"%d ", nData[i]);
    }
    printf(
"\n");
    system(
"pause");
    
return 0;
}


posted on 2009-04-27 19:36 shongbee2 閱讀(847) 評論(0)  編輯 收藏 引用 所屬分類: 數據結構和算法

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲激情在线视频| 麻豆9191精品国产| 欧美亚州一区二区三区| 欧美一区二区三区婷婷月色| 亚洲精品一区二区在线| 亚洲日本aⅴ片在线观看香蕉| 国产日韩欧美制服另类| 亚洲国产精品福利| 欧美一区二区三区免费在线看 | 免费不卡在线观看| 欧美在线视频日韩| 欧美在线视频一区| 麻豆成人在线观看| 亚洲国产一区二区视频| 亚洲精品一区二区在线观看| 一本大道久久a久久综合婷婷| 国产精品久久久一区二区| 国产精品嫩草99av在线| 国产精品av一区二区| 国产精品婷婷| 18成人免费观看视频| 亚洲精品久久久久久久久久久久久| 91久久精品国产91久久性色tv| 亚洲国产成人精品久久| 99视频精品免费观看| 午夜一级久久| 91久久国产精品91久久性色| 亚洲乱码久久| 久久亚洲高清| 国产精品一区二区久久精品 | 欧美国产欧美亚洲国产日韩mv天天看完整 | 欧美在线观看视频在线| 欧美国产一区在线| 欧美中文字幕第一页| 99视频有精品| 久久精品亚洲精品国产欧美kt∨| 欧美精品一卡二卡| 好吊视频一区二区三区四区| 99在线精品视频| 亚洲电影av在线| 免费不卡在线观看| 亚洲国产高清高潮精品美女| 久久本道综合色狠狠五月| 在线视频你懂得一区| 136国产福利精品导航网址应用 | 美女视频一区免费观看| 亚洲专区欧美专区| 在线观看亚洲视频啊啊啊啊| 99精品久久免费看蜜臀剧情介绍| 国产三区二区一区久久| 一区二区三区四区蜜桃| 亚洲免费精品| 久久免费高清视频| 久久久99爱| 国产亚洲成av人在线观看导航| 免费亚洲电影| 亚洲黄一区二区三区| 久久在线91| 欧美激情免费观看| 亚洲精品视频免费观看| 欧美高清自拍一区| 日韩视频免费看| 亚洲欧美日本视频在线观看| 国产精品白丝jk黑袜喷水| 一本色道久久综合亚洲精品按摩| 99精品福利视频| 国产精品久久久久久久第一福利 | 国产毛片一区| 午夜精品视频在线观看| 久久久久久久久一区二区| 国产一区二区三区在线观看免费| 亚洲一区二区三| 久久精品一区二区三区四区| 怡红院精品视频| 欧美日韩国产首页在线观看| 日韩午夜免费视频| 久久免费99精品久久久久久| 99精品视频免费在线观看| 国产乱码精品一区二区三区五月婷 | 在线观看91精品国产麻豆| 欧美在线不卡| 欧美xart系列在线观看| 亚洲欧洲一区二区三区| 欧美久久九九| 这里是久久伊人| 麻豆精品一区二区av白丝在线| 一区二区三区在线观看视频 | 亚洲精品一区二区三区四区高清 | 久久精品国产清高在天天线 | 久久久久综合一区二区三区| 中文久久精品| 久久亚洲一区| 亚洲精品视频在线播放| 性欧美18~19sex高清播放| 精品999在线播放| 欧美性猛交xxxx乱大交蜜桃| 亚洲欧美国产va在线影院| 亚洲国产你懂的| 亚洲色无码播放| 国产在线麻豆精品观看| 欧美日韩日本国产亚洲在线| 亚洲欧美激情四射在线日| 亚洲国产国产亚洲一二三| 久久久999国产| 日韩亚洲国产精品| 一区福利视频| 国产偷国产偷精品高清尤物| 欧美伦理视频网站| 欧美啪啪一区| 国产精品v亚洲精品v日韩精品 | 久久精品日韩欧美| 亚洲欧美激情一区| 亚洲精品美女在线| 亚洲精品视频二区| 亚洲一区二区免费| 一本大道av伊人久久综合| 亚洲人成绝费网站色www| 欧美 亚欧 日韩视频在线| 久久一区二区精品| 免费成人小视频| 欧美高清在线| 亚洲主播在线| 久久精品主播| 欧美激情性爽国产精品17p| 亚洲淫片在线视频| 久久久久国产一区二区三区四区| 国产一区二区成人| 欧美系列精品| 国产一区二区三区黄视频| 亚洲天堂偷拍| 久久这里只精品最新地址| 亚洲午夜国产一区99re久久| 欧美成人黄色小视频| 在线综合+亚洲+欧美中文字幕| 久久综合亚州| 欧美精品三级| 亚洲三级免费电影| 亚洲国产精品va在线观看黑人| 亚洲欧美视频一区| 国产有码在线一区二区视频| 亚洲女同在线| 国产精品久久久久久久一区探花| 一区二区高清视频| 亚洲天堂偷拍| 精品成人a区在线观看| 亚洲福利在线看| 国产日韩亚洲欧美综合| 欧美国产日韩免费| 亚洲在线黄色| 亚洲精品欧美日韩| 亚洲欧洲视频在线| 在线综合亚洲欧美在线视频| 亚洲精品美女| 一区二区91| 亚洲国产一区二区精品专区| 国产精品久久影院| 99精品视频免费观看视频| 狼人社综合社区| 精品88久久久久88久久久| 久久久久九九视频| 欧美激情一区二区三区四区| 日韩视频免费| 欧美日韩在线不卡一区| 亚洲一区二区三区在线播放| 久久精品人人做人人综合| 国内精品久久久久久久影视蜜臀| 久久国产88| 亚洲激情午夜| 午夜精品福利电影| 影音先锋日韩精品| 欧美成人午夜免费视在线看片| 国产精品综合久久久| 久久久久久久综合狠狠综合| 亚洲高清色综合| 亚洲欧美在线播放| 欧美日韩一区二区三区在线观看免| 亚洲欧美另类在线| 久久裸体艺术| 久久男女视频| 亚洲毛片在线观看| 久久久噜噜噜久久久| 亚洲美女在线看| 国产欧美日韩亚洲精品| 欧美a级在线| 亚洲欧美综合国产精品一区| 亚洲国产视频直播| 久久激情视频免费观看| 99精品视频免费观看视频| 国产午夜精品久久| 欧美无砖砖区免费| 免费看av成人| 欧美在线free| 99精品欧美一区二区三区综合在线 | 久久亚洲国产精品一区二区| 999亚洲国产精| 一区视频在线| 国产日本欧美一区二区| 欧美日韩免费高清一区色橹橹| 久久亚洲春色中文字幕久久久| 亚洲一区日韩|