目标:将数组int[] arr={2,9,5,83,12,6,324,654,8,1}从小到大进行排序思路:1.第一轮找出最大的数,把它放在最后面,需要进行length-1次比较---->内存循环2.第二轮找出第二大的数,可以看成前length-1的元素进行排序,需要进行length-1-1次比较3.第三轮找出第三大的数,可以看成前length-1-2的元素进行排序,需要进行length-1-2次比较4......总共需要进行length-1论选择---->外层循环
public class BS{ public static void main(String[] args){ int[] arr = {2,9,5,83,12,6,324,654,8,1}; int l = arr.length;//数组长度 int temp=0;//存放中间变量 for(int i=0;i<l-1;i++){ for(int j=0;j<l-1-i;j++){ if(arr[j]>arr[j+1]){//前面的元素更大 temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } } //输出排序后的数组 for(int i=0;i<l;i++){ System.out.println(arr[i]); } }}