冒泡排序
例如:5个数 外层循环要排序4次,内层循环要是从4次逐层递减
public class BubblingSort {
public static void bubblingSort(int[] array) {
for(int i=0;i<array.length-1;i++) {
for(int j=0;j<array.length-1-i;j++) {
if(array[j]>array[j+1]) {
int temp=array[j];
array[j]=array[j+1];
array[j+1]=temp;
}
}
}
}
}
选择排序
package cn.hxt.conmon;
public class SelectSort {
/**
* 选择排序
* @param args
*/
public static void main(String[] args) {
int[] arr= new int[] {7,4,9,5,3};
selcetSort(arr);
}
public static void selcetSort(int[] array) {
for(int i=0;i<array.length-1;i++) {
int index=i;
int temp=0;
for(int j=i+1;j<array.length;j++) {
if(array[index]>array[j]) {
index=j;
}
if(i!=index) {
temp=array[i];
array[i]=array[index];
array[index]=temp;
}
}
}
for(int i=0;i<array.length;i++) {
System.out.println(array[i]);
}
}
}
在选择排序中,先将本次需要比较的数的下标保存在index中,然后在进入内层循环,内层循环将本次需要比较的数跟下一位进行比较,如果大于下一位的数的话,将下一位的数的下标赋值给index,之后再进行判断,如果原本index已经更换了值,说明有符合条件,则进行排序,在本实例中,将小的数排序在前面。