本来不想写的,看到别人写的都不符合自己心意
需进行n(n-1)/2次比较和记录移动,时间复杂度为O(n*n)
import java.util.Arrays; import java.util.Scanner; /** * Created by Admin on 2017/3/26. */ public class test02 { public static void BubbleSort(int[] n){ int temp; for(int i=0;i<n.length-1;i++) for(int j=i;j<n.length;j++){ if(n[i]>n[j]){ //是对n[i]排序的,这里表示从小到大 temp=n[i]; n[i]=n[j]; n[j]=temp; } } } public static void main(String[] args) { Scanner scanner=new Scanner(System.in); int num=1; while (num!=0) { num=scanner.nextInt(); int[] n=new int[num]; // 这里new int要写初始化大小 for(int i=0;i<num;i++) n[i] = scanner.nextInt(); BubbleSort(n); System.out.println(Arrays.toString(n)); } } }