冒泡排序

冒泡算法

冒泡排序的基本思想是:每次比較兩個(gè)相鄰的元素,如果他們的順序錯(cuò)誤就把他們交換過(guò)來(lái)

1、從第一個(gè)數(shù)據(jù)開始,與第二個(gè)數(shù)據(jù)相比較,如果第二個(gè)數(shù)據(jù)小于第一個(gè)數(shù)據(jù),則交換兩個(gè)數(shù)據(jù)的位置。
2、指針由第一個(gè)數(shù)據(jù)移向第二個(gè)數(shù)據(jù),第二個(gè)數(shù)據(jù)與第三個(gè)數(shù)據(jù)相比較,如果第三個(gè)數(shù)據(jù)小于第二個(gè)數(shù)據(jù),則交換兩個(gè)數(shù)據(jù)的位置。
3、依此類推,完成第一輪排序。第一輪排序結(jié)束后,最大的元素被移到了最右面。
4、依照上面的過(guò)程進(jìn)行第二輪排序,將第二大的排在倒數(shù)第二的位置。
5、重復(fù)上述過(guò)程,沒排完一輪,比較次數(shù)就減少一次。

代碼:

#include <stdio.h>

int main()
{
   int a[10],i,j,t,n = 10; 
    for(i = 1; i <= n; i++)
    {
        a[i] = i - 1;
    }
    //核心部分
    for(i = 1; i <= n; i++)
        for(j = 1;j <= n - i; j++)
        {
            if(a[j] <= a[j + 1])
            {
                t = a[j];a[j] = a[j + 1];a[j + 1] = t;
            }
        }
   for(i = 1; i <= n; i++)
       printf("%d ",a[i]);
    getchar();
   return 0;
}

運(yùn)行結(jié)果:

9 8 7 6 5 4 3 2 1 0 

時(shí)間復(fù)雜度:

O(N2)

總結(jié):如果有n個(gè)數(shù)進(jìn)行排序,只需將n-1個(gè)數(shù)歸位,也就是說(shuō)要進(jìn)行n-1趟操作,而“每一趟”都需要從第1位開始進(jìn)行相鄰兩個(gè)數(shù)的比較,將較小的一個(gè)數(shù)放在后面,比較完畢向后挪一位繼續(xù)比較下面兩個(gè)相鄰數(shù)的大小,重復(fù)此步驟,直到最后一個(gè)尚未歸位的數(shù),已經(jīng)歸位的數(shù)無(wú)需在比較

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 概述:排序有內(nèi)部排序和外部排序,內(nèi)部排序是數(shù)據(jù)記錄在內(nèi)存中進(jìn)行排序,而外部排序是因排序的數(shù)據(jù)很大,一次不能容納全部...
    每天刷兩次牙閱讀 3,829評(píng)論 0 15
  • 概述 排序有內(nèi)部排序和外部排序,內(nèi)部排序是數(shù)據(jù)記錄在內(nèi)存中進(jìn)行排序,而外部排序是因排序的數(shù)據(jù)很大,一次不能容納全部...
    蟻前閱讀 5,303評(píng)論 0 52
  • 這樣的一天 我什么也不想干 貓?jiān)谖业膽牙锼X 它依偎著我的胳膊 我能感受到它的呼吸 就這樣安靜的看著它 不管外面世...
    致郁系張?jiān)铝?/span>閱讀 120評(píng)論 0 0
  • 1.eclipse+python+unittest (1)eclipse安裝 下載地址:https://www.e...
    我不喜歡吃蘋果閱讀 562評(píng)論 0 1
  • 書籍《說(shuō)話的魅力》 字?jǐn)?shù):551 當(dāng)響尾蛇在搖它尾巴的時(shí)候,你要小心的是他的頭。 我今年三月份去杭州參加培訓(xùn)的時(shí)候...
    爐邊雪人閱讀 221評(píng)論 0 0

友情鏈接更多精彩內(nèi)容