按照书本上的先整下概念:
冒泡排序是一个比较简单的排序方法,在待排序的数列基本有序的情况下排序速度较快。
若要排序的数有n个,则需要n-1轮排序,第j轮排序中,从第一个数开始,相邻两数比较,若不符合所要求的顺序,则交换两者的位置;直到第n+1-j个数为止,第一个数与第二个数比较,第二个数与第三个数比较,......,第n-j个与第n+1-j个比较,共比较n-1次。此时第n+1-j个位置上的数已经按要求排好,所以不参加以后的比较和交换操作。例如:第一轮排序:第一个数与第二个数进行比较,若不符合要求的顺序,则交换两者的位置,否则继续进行二个数与第三个数比较......。直到完成第n-1个数与第n个数的比较。此时第n个位置上的数已经按要求排好,它不参与以后的比较和交换操作;第二轮排序:第一个数与第二个数进行比较,......直到完成第n-2个数与第n-1个数的比较;......第n-1轮排序:第一个数与第二个数进行比较,若符合所要求的顺序,则结束冒泡法排序;若不符合要求的顺序,则交换两者的位置,然后结束冒泡法排序。
共n-1轮排序处理,第j轮进行n-j次比较和至多n-j次交换。
从以上排序过程可以看出,较大的数像气泡一样向上冒,而较小的数往下沉,故称冒泡法。
然后来代码吧:
package com.shen.maopao;
public class MaoPao {
public static void main(String[] args) {
int[] a={1,4,5,2,0,88,98,232,22,222};
sortBubble(a);
for(int i=0;i<a.length;i++){
System.out.print(" " +a[i]);
}
}
public static void sortBubble(int[] a){
int t = a.length, i=0;
for(;i<t-1;i++){
for(int j=0;j<t-1-i;j++){
if(a[j]>a[j+1]){
int temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
}
}
}
运行结果:
0 1 2 4 5 22 88 98 222 232
分享到:
相关推荐
冒泡排序详解,简单而详细的讲清楚了,什么是冒泡排序。 冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。 它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首...
java冒泡排序代码,亲测能用,控制台输入数据,自动排序
详解Java常用排序算法-冒泡排序
这个程序根据冒泡排序从大到小,从小到大的把数组里的元素进行了排序,程序思想很清晰
java冒泡排序集锦方法!所有的方法都有!很不错的!希望对大家有帮助哈哈!
1.冒泡排序的原理:每次都从第一个元素开始(索引0),向后两两比较,只要后面的比前面的大,就交换(从大到小) 2.通过画图分析,5个数字排4趟,n数字排n-1趟,而外层的for循环代表的是循环的趟数,所以外层循环的结束条件是...
冒泡排序(BubbleSort)的基本概念是:依次比较相邻的两个数,将小数放在前面,大数放在后面。即首先比较第1个和第2个数,将... 由于在排序过程中总是小数往前放,大数往后放,相当于气泡往上升,所以称作冒泡排序。
java 冒泡排序方法,java 冒泡排序方法。
7-5 冒泡法排序之过程冒泡法排序之过程冒泡法排序之过程冒泡法排序之过程冒泡法排序之过程冒泡法排序之过程冒泡法排序之过程冒泡法排序之过程冒泡法排序之过程冒泡法排序之过程冒泡法排序之过程冒泡法排序之过程冒泡...
常用三种排序:快速排序、冒泡排序、插入排序的java实现示例
* 冒泡排序: * 每次在无序队列里将相邻两个数一次进行比较, * 将小数调到前面,逐次比较,直至将最大的数移到 * 最后。将剩下的N-1个数继续比较,将次大数移至 * 倒数第二位。
java冒泡排序 代码为排序源代码 简洁明了 无其他
js冒泡排序js冒泡排序js冒泡排序js冒泡排序js冒泡排序js冒泡排序js冒泡排序js冒泡排序js冒泡排序js冒泡排序js冒泡排序js冒泡排序js冒泡排序js冒泡排序js冒泡排序js冒泡排序js冒泡排序js冒泡排序js冒泡排序js冒泡排序...
用java实现了以下算法: 1、冒泡排序、冒泡排序的两种改进。 2、插入排序。 3、选择排序。 4、希尔排序。 5、归并排序。 6、快速排序。
java算法,快速排序、冒泡排序、选择排序 快速排序文章:http://blog.csdn.net/yanwenyuan0304/article/details/51822361 冒泡排序文章:http://blog.csdn.net/yanwenyuan0304/article/details/51819045
java 冒泡排序法 PPT文档java 冒泡排序法 PPT文档java 冒泡排序法 PPT文档java 冒泡排序法 PPT文档
JAVA排序大全 冒泡 快速 选择 归并排序
使用冒泡排序实现的java语言编写的关于二维数组的排序,实现了行、列的排序输出。
该资源提供了Java中实现冒泡排序的全面指南。文档中涵盖了冒泡排序的基本概念,包括如何对数组进行排序以及如何在Java中实现冒泡排序。此外,文档还包括一个逐步指南,介绍了如何在Java中实现冒泡排序,包括详细的...
JAVA排序算法: 直接插入,希尔排序,选择排序,堆排序,冒泡排序,快速排序,归并排序,包括算法的详细介绍,以及对几种算法的详细测试