数组的冒泡排序
冒泡排序就是对未排列的各元素从头到尾依次比较相邻的两个元素大小关系,若大于则交换位置,经过第一轮比较排序后可以得出最大值,然后使用同样的方法把剩下的元素依次逐个比较.
public class ArrSort {
public static void main(String[] args) {
int[] arr=new int[] {3,87,43,98,21,2,5,8,57};
printArr(arr);
System.out.println();
bubbleSort(arr);
printArr(arr);
}//冒泡排序
static void bubbleSort(int[] arr) {
for (int times = 1; times <= arr.length-1; times++) {
for (int i = 1; i <= arr.length-times; i++) {
if(arr[i-1]>arr[i]) {
swapData(arr,i-1,i);
}
}
}
}
//数组中两个元素的交换
static void swapData(int[] arr,int index,int index1) {
int temp;
temp=arr[index];
arr[index]=arr[index1];
arr[index1]=temp;
}
//打印数组
static void printArr(int[] arr) {
if(arr == null) {
System.out.println("NULL");
return;//结束方法
}
String ret="[";
for (int i = 0; i < arr.length; i++) {
ret=ret+arr[i];
//如果当前i不是最后一个索引,则拼接","
if(i != arr.length-1) {
ret=ret+",";
}
}
System.out.print(ret+"]");
}
}