22,冒泡排序

原创 2015年11月20日 10:07:03

#include <stdio.h>

/*

  冒泡排序:

     依次比较相邻的两个数,将小数放在前面,大数放在后面。

     即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。

     然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。

     至此第一趟结束,将最大的数放到了最后。

     在第二趟:仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数不再小于第2个数),将小数放前,大数放后,

     一直比较到倒数第二个数(倒数第一的位置上已经是最大的),第二趟结束,在倒数第二的位置上得到一个新的最大数(其实在整个数列中是第二大的数)。

     如此下去,重复以上过程,直至最终完成排序。

 */


int main(int argc, const char * argv[]) {

    int nums[] = {34,1,20,52,4,4};

    int temp = 0;

    

    int length = sizeof(nums) / sizeof(nums[0]);

    for (int i=1; i<length; i++) {

        for (int j=0; j<length - i; j++) {

            if(nums[j]>nums[j+1]){   //>代表从小到大,而<代表从大到小

                temp = nums[j];

                nums[j] = nums[j+1];

                nums[j+1] = temp;

            }

        }

    }

    

    for (int i=0; i<length; i++) {

        printf("%i ",nums[i]);

    }

    printf("\n");

    return 0;

}


冒泡排序由浅入深详细分析图解

冒泡排序 * 相邻元素两两比较,大的往后放,第一次完毕后,最大值就出现在 * 最大索引处,同理,继续,即可得到一个排序好的数组 * * 规律: * 1、两两比较,大的往后放。 ...
  • starjuly
  • starjuly
  • 2016年12月25日 19:49
  • 3482

OC的冒泡排序

#import int main(int argc, const char * argv[]) { @autoreleasepool { /* 冒泡...
  • qq331429844
  • qq331429844
  • 2015年10月13日 21:04
  • 6576

【原创】增强版冒泡排序算法-java版

第N趟循环,如果已经没有移动元素的操作,说明排序已完成,循环应该退出,不必再执行后续的循环操作,因为就算比较也不会再有元素会被移动。增加此控制计数器。控制循环退出。...
  • li396864285
  • li396864285
  • 2016年06月13日 17:39
  • 564

ArrayList实现冒泡排序

用ArrayList实现冒泡排序public class ArrayListSort { public static void main(String[] args) { Ar...
  • mhtqq809201
  • mhtqq809201
  • 2016年06月13日 11:31
  • 3297

冒泡排序的2种写法

假如有几个数字int score[] = {67, 69, 75, 88};  按照从大到小排序。 有2种思路,第一种,score[j] 和 score[j+1] 比较 如果 前者比后者小,把前者和...
  • shuaizai88
  • shuaizai88
  • 2017年06月14日 17:52
  • 1812

java将list集合冒泡排序

java将List集合进行冒泡排序。。。
  • xiaosheng_papa
  • xiaosheng_papa
  • 2015年01月05日 13:55
  • 4172

冒泡排序及改进(C++版)

冒泡排序:相邻两个数比较,根据大小交换位置 C++代码: /** * name:冒泡排序 * time:15/8/12 15:00 * environment: ubuntu 14.04, subli...
  • u012580566
  • u012580566
  • 2015年08月12日 16:55
  • 792

冒泡排序练习题

import java.util.*; public class BubbleSort { public int[] bubbleSort(int[] a, int l) { ...
  • Mypromise_TFS
  • Mypromise_TFS
  • 2017年05月31日 15:38
  • 261

二维数组的冒泡排序

#include int main() { int a[4][4]={{1,4,3,2}, {8,6,5,7}, {3,7,2,5}, {4,8,6,1}}; ...
  • Dai_Yue
  • Dai_Yue
  • 2016年03月13日 16:14
  • 1734

js冒泡排序原理

//----------------------简单版(冒泡排序)----------------- var arr = [7,6,5,4,3,2,1]; //需求:冒...
  • gyq04551
  • gyq04551
  • 2016年11月20日 17:16
  • 1172
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:22,冒泡排序
举报原因:
原因补充:

(最多只允许输入30个字)