插入排序:
public class InsertSort {
public static void main(String[] args){
int[] array = new int[]{20,40,90,30,80,70,50};
System.out.println("排序前");
for (int i=0; i<array.length;i++){
System.out.print(array[i]+ " ");
}
int tmp; //定义临时变量
int j;
for (int i=0; i<array.length; i++){
tmp = array[i];
for (j=i-1;j>=0&&array[j]>tmp;j--){
array[j+1]=array[j]; //数组元素交换
}
array[j+1]=tmp; //排序位置插入数据
}
System.out.println("\n 排序后 ");
for (int i=0;i<array.length;i++){
System.out.print(array[i]+" ");
}
}
}
冒泡排序:
冒泡排序算法比较简单,排序结果稳定,缺点是时间效率不高。
public class BubbleSort {
public static void main(String[] args){
int[] arry = new int[]{63,4,24,1,3,13};
System.out.println(": ");
for (int i=1; i<arry.length; i++){
for (int j=0; j<arry.length-i; j++){ //比较相邻的两个元素,较大的数往后冒泡
if (arry[j]>arry[j+1]) {
int temp = arry[j]; //第一个元素值保存至临时变量
arry[j] = arry[j+1]; //第二个元素值保存到第一个元素单元中
arry[j+1] = temp; //第一个元素原值保存到第二个元素中
}
System.out.print(arry[j]+" ");
}
System.out.print("【");
for (int j=arry.length-i; j<arry.length; j++){
System.out.print(arry[j]+" ");
}
System.out.println("】");
}
}
}