数组排序之冒泡排序

2023-05-16

数组排序
        int[] arrs={3,15,7,28,9};
        编写程序,让arrs是有序的(小-大 或者 大-小)
        冒泡排序原理
            冒第一个泡,写一个循环,让数组中最大的值出现在数组的最后一个位置
            冒第二个泡,写一个循环,让数组中第二大的值出现在数组的倒数第二个位置
            ...
            两两对比,大值放在后面。

原理代码如下:

//冒泡排序原理程序
		int[] arrs3={3,15,7,28,9};
		//冒第一个泡
		for(int i=0;i<arrs3.length-1;i++){
			if(arrs3[i]>arrs3[i+1]){
				int temp=0;
				temp=arrs3[i];
				arrs3[i]=arrs3[i+1];
				arrs3[i+1]=temp;
			}
		}
		//System.out.println(arrs3[4]);//检查
		//冒第二个泡
		for(int i=0;i<arrs3.length-1-1;i++){
			if(arrs3[i]>arrs3[i+1]){
				int temp=0;
				temp=arrs3[i];
				arrs3[i]=arrs3[i+1];
				arrs3[i+1]=temp;
			}
		}
		//冒第三个泡
		for(int i=0;i<arrs3.length-3;i++){
			if(arrs3[i]>arrs3[i+1]){
				int temp=0;
				temp=arrs3[i];
				arrs3[i]=arrs3[i+1];
				arrs3[i+1]=temp;
			}
		}
		//冒第四个泡
		for(int i=0;i<arrs3.length-4;i++){
			if(arrs3[i]>arrs3[i+1]){
				int temp=0;
				temp=arrs3[i];
				arrs3[i]=arrs3[i+1];
				arrs3[i+1]=temp;
			}
		}
		
		for(int i=0;i<arrs3.length;i++){
			System.out.println(arrs3[i]);
		}
		
		System.out.println("-------------------------------");

 简洁版冒泡排序如下:

//冒泡排序
		int[] arrs4={3,15,7,28,9,23,3,21,32,45,7,24,5,21,2};
		int j=arrs4.length-1;
		while(j>0){
			for(int i=0;i<j;i++){
				if(arrs4[i]>arrs4[i+1]){
					int temp=0;
					temp=arrs4[i];
					arrs4[i]=arrs4[i+1];
					arrs4[i+1]=temp;
				}
			}
			j--;
		}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

数组排序之冒泡排序 的相关文章

随机推荐