Java冒泡排序算法

来源:互联网 发布:c#二维数组初始化 编辑:程序博客网 时间:2024/06/06 20:40

在所有的算法中,冒泡排序算法是一个比较基础的排序的算法,我的算法之路,也由此开始。

首先来看正确的语法及输出:

public class test01 {public static void main(String[] args) {int[]a={5,2,6,8,55,412,365,1,458,41};for(int i=1;i<a.length-1;i++){for(int j=0;j<a.length-1;j++){if(a[j]>a[j+1]){int b;b=a[j];a[j]=a[j+1];a[j+1]=b;}}}System.out.print("排序后的数组为:");for(int k=0;k<a.length;k++){System.out.print(a[k]+",");}}}
输出:



另一个正确的例子

public class test01 {public static void main(String[] args) {int[]a={5,2,6,8,55,412,365,1,458,41};for(int i=1;i<a.length;i++){for(int j=0;j<a.length-1;j++){if(a[j]>a[j+1]){int b;b=a[j];a[j]=a[j+1];a[j+1]=b;}}}System.out.print("排序后的数组为:");for(int k=0;k<a.length;k++){System.out.print(a[k]+",");}}}
输出:



一个错误的例子

外层循环 i 小于数组长度,内层循环 j 小于 i

public class test01 {public static void main(String[] args) {int[]a={5,2,6,8,55,412,365,1,458,41};for(int i=1;i<a.length;i++){for(int j=0;j<i;j++){if(a[j]>a[j+1]){int b;b=a[j];a[j]=a[j+1];a[j+1]=b;}}}System.out.print("排序后的数组为:");for(int k=0;k<a.length;k++){System.out.print(a[k]+",");}}}

输出:



0 0
原创粉丝点击