Java基础⑤——排序

排序

冒泡排序:相邻两数两两比较,大的放右边,比较一轮后,最右边的数为最大值;以此类推共比较(长度-1)轮

public class MaoPao {
	public static void main(String[] args) {
		int[] a= {7,9,1,8,5,6,4,7};
		for(int i=0;i<a.length-1;i++) {//外层代表轮数
			for(int j=0;j<a.length-1-i;j++) {//内层代表每轮比较次数,依次递减
				if(a[j]>a[j+1]) {
					int t=a[j];
					a[j] = a[j+1];
					a[j+1] = t;
				}
			}
			//System.out.println("第"+(i+1)+"轮:"+Arrays.toString(a));
		}
		System.out.println("排序后:"+Arrays.toString(a));
	}
}

选择排序:假设第一个元素最小,依次与后面元素比较;比较一轮后确定第一个元素为最小;以此类推,共比较(长度-1)轮

public class XuanZe {
	public static void main(String[] args) {
		int[] a = {3,1,5,2,9,7,6,4};
		for(int i=0;i<a.length-1;i++) {   //外层代表轮数
			for(int j=1+i;j<a.length;j++) { //内存代表每轮比较次数
				if(a[i]>a[j]) {
					int t = a[i];
					a[i] = a[j];
					a[j] = t;
				}
			}
			//System.out.println("第"+(i+1)+"轮:"+Arrays.toString(a));
		}
		System.out.println("排序后:"+Arrays.toString(a));
	}
}		
posted @ 2022-06-30 12:53  就薛就薛  阅读(26)  评论(0)    收藏  举报