冒泡排序
package com.lgh.pt;
/** 冒泡排序 */
public class BubbleSort {
public static void main(String[] args) {
int[] arr={9,3,5,8,2,4,6,7,1};
sort(arr);
print(arr);
}
static void swap(int[] a,int i,int j){
int temp=a[i];
a[i]=a[j];
a[j]=temp;
}
public static void print(int []arr){
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
//若arr={1,2,3,4,5,6,7,8,9}则时间复杂度O(n)为冒泡排序的最优解
static void sort(int []arr){
boolean s;
for (int i = 0; i < arr.length; i++) {
s=false;
for (int j =0; j < arr.length-i-1; j++) {
if(arr[j]>arr[j+1]){
swap(arr,j,j+1);
s=true;
}
}
if(!s){
return;
}
}
}
}