C語言 冒泡排序

來源:互聯網
上載者:User

標籤:stdio.h   span   ++   數列   turn   pen   ble   color   return   

冒泡排序( Bubble Sort )

比較相鄰的兩個數,如果錯誤則進行交換,重複訪問整個排序的數列

#include <stdio.h>#define KSIZE 8static int count;// 冒泡排序void bubble_sort(int a[],int n);int main(int argc, const char * argv[]) {        int number[KSIZE] = {1,2,3,4,5,6,7,8};    int i;    bubble_sort(number, KSIZE);    printf("排序次數:%d\n",count);    for (i=0; i<KSIZE; i++) {        printf("%d ",number[i]);    }        return 0;}void bubble_sort(int a[],int n){    int i,j,temp;        for (j = 0; j<n-1; j++)        for (i=0; i<n-j-1; i++)            if (a[i] < a[i+1]) { // 從大到小                temp   = a[i];                a[i]   = a[i+1];                a[i+1] = temp;                count++;            }}
冒泡排序

解析

1,2,3,4,5 — 希望得到:5,4,3,2,1

2,3,4,5,1 - 第一次排序 — 4次

3,4,5,2,1 - 第二次排序 - 3次

4,5,3,2,1 - 第三次排序 - 2次

5,4,3,2,1 - 第四次排序 - 1次

C語言 冒泡排序

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.