/*
冒泡排序
相邻元素进行比较,最值出现在右边。
*/
class Demo2
{
//冒泡排序
public static void bubbleSort(int[] arr){
for(int k=0;k<arr.length-1;k++){ //控制比较多少轮
for(int i=0;i<arr.length-1-k;i++){ //为什么减1,因为i位置元素与i+1位置元素比较
//-k操作是为了将右边比较后出现的最值刨掉,
//也就是最右边出现的最值,不在比较
if(arr[i]>arr[i+1]){
int tmp=arr[i];
arr[i]=arr[i+1];
arr[i+1]=tmp;
}
}
}
}
public static void showArray(int[] arr){
System.out.print("[");
for(int i=0;i<arr.length;i++){
if(i==arr.length-1){
System.out.print(arr[i]);
}else{
System.out.print(arr[i]+",");
}
}
System.out.println("]");
}
public static void main(String[] args)
{
int[] arr={1,5,2,8,6,7};
showArray(arr);
bubbleSort(arr);
showArray(arr); |