您的位置首页生活百科

使用Java完成冒泡排序

使用Java完成冒泡排序

的有关信息介绍如下:

使用Java完成冒泡排序

冒泡排序原理:比较两个相邻的元素,如需要从小到大排序,则将值大的那个数调到右边,同理从大到小的排序,就将值小的数调到右边。

从大到小排序:新建一个Java类,定义一个方法名(如:bubbleSort),这边返回值类型用int数组,并传递一个int类型数组,同时也return该数组。

代码为:

public int[] bubbleSort(int[] arr){

return arr;

}

如图所示:

冒泡排序的原理:比较相邻的元素,如果第一个比第二个小,就交换他们两个。

对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。

代码为:

//冒泡排序

public int[] bubbleSort(int[] arr){

//第一个for循环是程序需要执行要走多少趟

for(int i=0;i

//第二个for循环是每趟需要比较多少次

for(int j=0;j

//此处是从大到小排列

if(arr[j]

//定义一个临时变量temp

int temp=arr[j];

arr[j]=arr[j+1];

arr[j+1]=temp;

}

}

}

return arr;

}

如图所示:

最后在main函数中创建对象,并调用方法,最后遍历输出。

代码为:

public static void main(String[] args) {

//定义一个数组

int[] arr={4,5,2,6,2,4,8,9,6,1,9,55,66,11,22};

System.out.print("原来的数组:[");

for(int i=0;i

if(i==arr.length-1){

System.out.println(arr[i]+"]");

}else{

System.out.print(arr[i]+",");

}

}

//创建对象(因为写方法没有使用static关键词,需创建对象后在调用方法)

BubbleSort demo=new BubbleSort();

//返回值类型是int数组,所以需要用数组接收

arr=demo.bubbleSort(arr);

//遍历输出

System.out.print("排序后的数组:[");

for(int i=0;i

if(i==arr.length-1){

System.out.println(arr[i]+"]");

}else{

System.out.print(arr[i]+",");

}

}

}

如图所示:

如果需要从小到大排序,只需要将判断条件进行更改即可。

代码为:

//冒泡排序

public int[] bubbleSort(int[] arr){

//第一个for循环是程序需要执行要走多少趟

for(int i=0;i

//第二个for循环是每趟需要比较多少次

for(int j=0;j

//此处是从大到小排列

if(arr[j]>arr[j+1]){

//定义一个临时变量temp

int temp=arr[j];

arr[j]=arr[j+1];

arr[j+1]=temp;

}

}

}

return arr;

}