冒泡排序之我见,希望前辈们拍砖!

原创 2013年12月05日 10:16:03

冒泡排序实在是太简单了,但是理解后简单,理解之前理解起来也挺痛苦的,痛苦在哪呢?例如我有1、3、5、2、4这5个元素,会发生5-1=4次比较,于是乎得知n个元素会产生n-1次比较=。=以上,但是我看网上的代码的时候这个结论对我没什么帮助啊

public class BubbleSort{
  public  static  void  main(String args[]){
       int[] a={3,1,6,2,9,0,7,4,5};
       bubbleSort(a,a.length);
       for(int i=0;i<a.length;i++){   
            System.out.print(a[i]+" ");
       }
  }
  public  static  void  bubbleSort(int[] a,int n){
      int temp;
      for(int i = 1 ; i <= n-1 ; i++){
            for(int j = 0 ; j <= n - i - 1 ; j++){  //n代表元素个数,n-1代表最有一个元素的下标,两者的差一定为1,再减1得0
                  if (a[ j ] > a[ j + 1 ]) {                //所以j的右极限取值为数组导数第二个元素
                       temp = a[ j ];
                       a[ j ] = a[ j +1 ];
                       a[ j + 1 ] = temp;
                   }
            }
       }
  }
}

例如这段代码,我将边界都用了大于等于,小于等于,便于我自己理解

我不会将外层的循环理解成所谓的“进行n-1”次比较(尽管这是个结论,但这结论对于我这种菜鸟理解程序基本没什么帮助),而理解成外层的 i 的变化就是为了控制内层的 j 的变化,例如 i =1时,内层 j 可以移动到的最大范围为n-1,也就是数组最后一个元素,i=n-1时,j=n-(n-1)=1,也就是数组的第2个元素,这是极限情况,然后第2个元素再和第1个元素进行比较,冒泡结束,我本来就很菜再看网上云里雾里的就更懵了=。=前辈们我的理解对吗?就是外层 i 的变化纯粹就是为了控制内层 j 的移动范围从 1 到 n-1 而且。

PAT-JAVA-5-30 字符串的冒泡排序 (20分)

5-30 字符串的冒泡排序   (20分) 我们已经知道了将NN个整数按从小到大排序的冒泡排序法。本题要求将此方法用于字符串序列,并对任意给定的KK(N),输出扫描完第KK遍后的中间结果...
  • qq_34594236
  • qq_34594236
  • 2016年05月10日 10:41
  • 1952

5-27 冒泡法排序 (20分)

5-27 冒泡法排序   (20分) 将NN个整数按从小到大排序的冒泡排序法是这样工作的:从头到尾比较相邻两个元素,如果前面的元素大于其紧随的后面元素,则交换它们。通过一遍扫描,则最后一...
  • lalalalalala_
  • lalalalalala_
  • 2017年04月18日 22:43
  • 1182

冒泡排序、插入排序、选择排序、希尔排序、堆排序、归并排序等常用排序算法的比较

掌握好常用的排序算法,在实际的项目开发中可以节省很多的时间。每一种排序算法在执行的效率上是存在差别的,这些微小的时间差,也许在平常的联系当中感觉不到,但是涉及到数据量比较大或者是在资源比较紧张的系统中...
  • KingCat666
  • KingCat666
  • 2015年04月24日 16:49
  • 5120

打包安装的一些准则之我见--欢迎拍砖欢迎补充

从做第一个打包程序到现在,陆陆续续也做了几十个安装包了,也帮助了不少朋友解决他们在制作 安装包过程中的问题,也得到了不少朋友们在安装包方面的指导。人之患在好为人师,我也不例外 ,看得多了也想说两句...
  • wdt3385
  • wdt3385
  • 2012年08月02日 11:24
  • 399

常见几种排序方式(选择排序,冒泡排序,快速排序,希尔排序,堆排序,插入排序)

  • 2010年04月19日 16:19
  • 44KB
  • 下载

冒泡排序VB版

  • 2015年03月28日 21:43
  • 27KB
  • 下载

vs2010 冒泡排序

  • 2015年05月10日 15:48
  • 1.09MB
  • 下载

二分查找算法和冒泡排序算法

  • 2015年04月22日 11:27
  • 942KB
  • 下载

自己写的冒泡排序算法

  • 2017年12月07日 14:25
  • 2KB
  • 下载

冒泡排序以及二分法查询

  • 2017年11月09日 23:15
  • 275B
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:冒泡排序之我见,希望前辈们拍砖!
举报原因:
原因补充:

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