夯实根基

我的学习记录

冒泡排序算法

冒泡排序的基本思想是依次比较相邻的两个数,将小数放在前面,大数放在后面。至第一次比较结束,则最大的数在数组最后。
第二趟时,仍从第一对数开始比较,将小数放前,大数放后,一直比较到倒数第二个数,第二趟结束,次大的数放在了数组次后的位置
重复下去,直到不再进行冒泡排序,即数组已为有序数组
冒泡法并不是每趟比较最小的浮上来,而是最大的沉下去

C语言实现
void BubbleSort(int a[], int n) {
    int i,j;
    int flag;
    for(i=0; i<n-1; i++) {
        flag = 0;
         for(j=0; j<n-i; j++) {
            if(a[j] > a[j+1]) {
                int temp = a[j];
                a[j] = a[j+1];
                a[j+1] = temp;
                flag = 1;
            }
        }
        if(!flag) {
            break;
        }
    }
}

阅读更多
文章标签: 算法 语言 c
个人分类: C/C++
想对作者说点什么? 我来说一句

数据结构冒泡排序算法

2012年05月14日 1KB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭