2017年計(jì)算機(jī)二級(jí)C++輔導(dǎo)實(shí)例編程(6)

字號(hào):


    常用算法之冒泡排序(C++版)
    其實(shí)我認(rèn)為冒泡是最沒(méi)有必要說(shuō)的一個(gè)算法,如果連冒泡都不知道的話,我覺(jué)得就不能謂之學(xué)過(guò)算法。這個(gè)應(yīng)該是屬于特別簡(jiǎn)單的一個(gè)算法,很基本,我記得當(dāng)時(shí)我們是講算法的時(shí)候,講的第一個(gè)就是這個(gè)冒泡排序。我也就不多說(shuō)其他了,我這里寫上純粹是為了一個(gè)完整性。
    效率O(n*n),穩(wěn)定排序。
    1 #include
    2 using namespace std;
    3
    4 int BubbleSort(int *nData,int len)
    5 {
    6 bool isOk = false;
    7 for(int i = 0;i
    8 isOk = true;
    9 for(int j = len - 1;j > i;--j){
    10 if(nData[j]
    11 int temp = nData[j];
    12 nData[j] = nData[j-1];
    13 nData[j-1] = temp;
    14 isOk = false;
    15 }
    16 }
    17 }
    18 }
    19
    20 int main()
    21 {
    22 int pData[10]={1,5,9,3,4,7,8,2,6,10};
    23 for(int i = 0;i<10;++i)
    24 cout<