public class Texdfs {
public static void main(String[] args) {
int [] ab={22,12,44,8,30};
maoPao(ab);
xuanZhe(ab);
}
/*
* 选择拍戏的原理:从数组中选出一个数,分别与其他的数进行比较.把最小的数,赋值给选出的数.
* 外层循环代表:总共需要选择的次数
* 内层循环代表:每一轮循环需要比较的次数
*/
private static void xuanZhe(int[] ab) {
for (int i = 0; i < ab.length-1; i++) {
int minIndex=i;
for (int j = i+1; j < ab.length; j++) {
if(ab[i]>ab[j]){
minIndex=j;
}
}
changed(ab,minIndex,i);
}
system(ab);
}
/*
* 冒泡排序的原理在于相邻的连个数之间比较,最大的数往后移动.
* 外层循环,代表总共需要循环的次数,代表每一次比较元素的个数
* 内层循环,代表每一次循环比较的次数 ,索引前后比较,所以下于
*/
private static void maoPao(int[] ab) {
for(int i=ab.length-1;i>0;i--){
for(int j=0;j<i;j++){
if(ab[j]>(ab[j+1])){
changed(ab,j,j+1);
}
}
}
system(ab);
}
private static void system(int[] ab) {
for (int i = 0; i < ab.length; i++) {
System.out.print(ab[i]+",");
}
System.out.println("====================");
}
private static void changed(int[] ab, int i, int j) {
int temp=ab[i];
ab[i]=ab[j];
ab[j]=temp;
}
}
java排序
最新推荐文章于 2022-04-23 13:40:47 发布