java数组中的三种排序方法中的冒泡排序方法

时间:2024-03-21 21:04:44

我记得我大学学java的时候,怎么就是搞不明白这三种排序方法,也一直不会,现在我有发过来学习下这三种方法并记录下来。

首先说说冒泡排序方法:冒泡排序方法就是把数组中的每一个元素进行比较,如果第i个元素大于第i+1元素,那么就要把二个数字进行交换,这样经过反复的比较就可以将一根数组按由小到大的顺序进行排序。

//冒泡排序方法
public class maopao
{
public static void main(String[] args)
{
int score[] = {56,85,96,65,80,110,76,90};
for (int i=0;i<arr.length-1;i++) //判断循环
{
for(int j=0;j<arr.length-1;j++){
if(arr[j]>arr[j+1]){ //交换位置
int t=arr[j];
arr[j] = arr[j+1];
arr[j+1]=t;
}
}
}
for(int i=0;i<score.length;i++){ //数组输出
System.out.print(score[i] + "\t");
}
}
}

还可以将每次的排序结果显示出来

//冒泡排序方法
public class maopao
{
public static void main(String[] args)
{
int score[] = {56,85,96,65,80,110,76,90};
for (int i=0;i<arr.length-1;i++) //判断循环
{
for(int j=0;j<arr.length-1;j++){
if(arr[j]>arr[j+1]){ //交换位置
int t=arr[j];
arr[j] = arr[j+1];
arr[j+1]=t;
}
}
System.out.print("第"+i+"次的排序结果:\t");
for(int j=0;j<socre.length;j++){ //循环输出排序结果
System.out.print(score[j] + "\t");
}
System.out.println("");
}
System.out.print("最终的排序结果为:\t");
for(int i=0;i<score.length;i++){ //数组输出
System.out.print(score[i] + "\t");
}
}
}