C語言實(shí)戰(zhàn)開發(fā)第六節(jié)課

排序: 冒泡排序
插入排序
選擇排序
快速排序

    優(yōu)酷搜索 :舞動的排序 

排序?qū)崿F(xiàn)方式:(程序里面盡量做到循環(huán)層級少于等于兩個(gè) )
一個(gè)循環(huán):一次遍歷就結(jié)束
兩個(gè)循環(huán):每一次內(nèi)部又有循環(huán)

冒泡排序?qū)崿F(xiàn)方式:每次遍歷整個(gè)數(shù)組坛掠,找到最大的一個(gè)數(shù)沉底
如果數(shù)組有N個(gè)元素
第一次需要遍歷N-1次(沉第一個(gè)數(shù)據(jù))
第二次需要遍歷N-2次 (沉第二個(gè)數(shù)據(jù))
第三次需要遍歷N-3次(沉第三個(gè)數(shù)據(jù))
盾剩。拦耐。。
總共需要比較N-1次

代碼如何實(shí)現(xiàn)
兩層循環(huán):第一層循環(huán)控制總共需要遍歷多少次
3 0 1 8 7 2 5 4 9 6
10個(gè)元素只需要遍歷10-1次就能排好序

          第二層循環(huán)控制每次遍歷需要遍歷多少次才能找到最大值 
          每次從頭i = 0開始,讓i和i+1進(jìn)行比較明刷,確保i+1是最大的 

選擇排序:外層循環(huán)控制需要遍歷多少次(n-1)
內(nèi)層循環(huán)遍歷出當(dāng)前最小的數(shù)

//冒泡排序
int main(){
int num[10] = {3,0,1,8,7,2,5,4,9,6};

for(int i = 1; i < 10; i++){//控制總共遍歷次數(shù)
    //開始每一次遍歷 找到一個(gè)最大的數(shù)沉底 
    for(int j = 0; j < 10-i; j++){
        //讓j和j+1的值進(jìn)行比較
        if(num[j] > num[j+1]){
            //交換j和j+1的值
            int temp = num[j];
            num[j] = num[j+1];
            num[j+1] = temp;                 
        } 
    } 
}

//輸出 
for(int i = 0; i < 10; i++){
    printf("%d ", num[i]);
}

return 0;

}

//選擇排序
int num[10] = {3,0,1,8,7,2,5,4,9,6};

for(int i = 0; i < 10-1; i++){//控制次數(shù) 
    //取出i對應(yīng)的數(shù),默認(rèn)是最小的數(shù)
    int temp = num[i];
     
    //從i后面開始查找當(dāng)前最小的數(shù) 放到i的位置 
    for(int j = i+1; j < 10; j++){
        //讓temp和i后面的每個(gè)數(shù)進(jìn)行比較 
        //temp始終保存最小的那個(gè)數(shù)
        if(num[j] < temp){
            //交換
            int n = temp;
            temp = num[j];
            num[j] = n; 
        } 
    } 
    //當(dāng)前的temp值是最小的,寫入i對應(yīng)的位置
    num[i] = temp; 
}

//輸出
for(int i = 0; i < 10; i++){
    printf("%d ", num[i]);
} 
return 0; 

}

//插入排序
int num[10] = {3,0,1,8,7,2,5,4,9,6};

for(int i = 0; i < 10-1; i++){//控制次數(shù) 
    //判斷i和i+1的大小
    if(num[i] > num[i+1]){
        //換位置
        int temp = num[i];
        num[i] = num[i+1];
        num[i+1] = temp;
        
        //讓i對應(yīng)的值和前面所有的值進(jìn)行比較
        for (int j = i; j > 0; j--){
            //j和j-1進(jìn)行比較
            if(num[j] > num[j-1]){
                //當(dāng)前這個(gè)位置就是這個(gè)數(shù)字的位置 
                break;
            } else{
                //j和j-1換位置
                int temp = num[j];
                num[j] = num[j-1];
                num[j-1] = temp; 
            } 
        } 
    } 
} 

//輸出
for(int i = 0; i < 10; i++){
    printf("%d ", num[i]);
} 
return 0;

}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末荷并,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子青扔,更是在濱河造成了極大的恐慌源织,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,948評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件微猖,死亡現(xiàn)場離奇詭異谈息,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)凛剥,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評論 3 385
  • 文/潘曉璐 我一進(jìn)店門侠仇,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人犁珠,你說我怎么就攤上這事逻炊』チ粒” “怎么了?”我有些...
    開封第一講書人閱讀 157,490評論 0 348
  • 文/不壞的土叔 我叫張陵嗅骄,是天一觀的道長胳挎。 經(jīng)常有香客問我,道長溺森,這世上最難降的妖魔是什么慕爬? 我笑而不...
    開封第一講書人閱讀 56,521評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮屏积,結(jié)果婚禮上医窿,老公的妹妹穿的比我還像新娘。我一直安慰自己炊林,他們只是感情好姥卢,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,627評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著渣聚,像睡著了一般独榴。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上奕枝,一...
    開封第一講書人閱讀 49,842評論 1 290
  • 那天棺榔,我揣著相機(jī)與錄音,去河邊找鬼隘道。 笑死症歇,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的谭梗。 我是一名探鬼主播忘晤,決...
    沈念sama閱讀 38,997評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼激捏!你這毒婦竟也來了设塔?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,741評論 0 268
  • 序言:老撾萬榮一對情侶失蹤缩幸,失蹤者是張志新(化名)和其女友劉穎壹置,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體表谊,經(jīng)...
    沈念sama閱讀 44,203評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,534評論 2 327
  • 正文 我和宋清朗相戀三年盖喷,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了爆办。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,673評論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡课梳,死狀恐怖距辆,靈堂內(nèi)的尸體忽然破棺而出余佃,到底是詐尸還是另有隱情,我是刑警寧澤跨算,帶...
    沈念sama閱讀 34,339評論 4 330
  • 正文 年R本政府宣布爆土,位于F島的核電站,受9級特大地震影響诸蚕,放射性物質(zhì)發(fā)生泄漏步势。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,955評論 3 313
  • 文/蒙蒙 一背犯、第九天 我趴在偏房一處隱蔽的房頂上張望坏瘩。 院中可真熱鬧,春花似錦漠魏、人聲如沸倔矾。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,770評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽哪自。三九已至,卻和暖如春禁熏,著一層夾襖步出監(jiān)牢的瞬間壤巷,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,000評論 1 266
  • 我被黑心中介騙來泰國打工匹层, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留隙笆,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,394評論 2 360
  • 正文 我出身青樓升筏,卻偏偏與公主長得像撑柔,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子您访,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,562評論 2 349

推薦閱讀更多精彩內(nèi)容

  • 第1章 第一個(gè)C程序第2章 C語言基礎(chǔ)第3章 變量和數(shù)據(jù)類型第4章 順序結(jié)構(gòu)程序設(shè)計(jì)第5章 條件結(jié)構(gòu)程序設(shè)計(jì)第6章...
    小獅子365閱讀 10,635評論 3 71
  • 在C語言中,五種基本數(shù)據(jù)類型存儲空間長度的排列順序是: A)char B)char=int<=float C)ch...
    夏天再來閱讀 3,333評論 0 2
  • 題目來源:1灵汪、中興檀训、華為、慧通享言、英華達(dá)峻凫、微軟亞洲技術(shù)中心等中外企業(yè)面試題目;2览露、C 語言面試寶典(林銳《高質(zhì)量編程...
    月震閱讀 1,803評論 0 1
  • 女孩四年級的時(shí)候轉(zhuǎn)到一個(gè)新的小學(xué)荧琼,認(rèn)識了男孩,關(guān)系很好,六年級的時(shí)候兩個(gè)人做了同桌命锄,一次女孩沒帶課本堰乔,本來做好了罰...
    婧焚閱讀 235評論 3 1
  • 總以為溫柔是笑镐侯,笑得美麗,快樂的樣子就是溫柔驶冒。 后來苟翻,長大點(diǎn)覺得溫柔,不是這樣的只怎。 那是小小的一句摸頭 是日日夜夜...
    小雨辰閱讀 371評論 0 1