返回 Java编程练习目录
指出时间复杂度为O(n2)的三大基本排序算法:谁是插入、冒泡和选择排序?
@Override public int[] sort(int[] arr){
for(int i=0; i< arr.length-1; i++){
for(int j=i+1; j< arr.length; j++){
if(arr[i]>arr[j]){
IntSort.swap(arr ,i, j);
}
}
}
return arr;
@Override public int[] sort(int[] arr){
for(int i = 0 ; i< arr.length-1; i++){
for(int j = 0 ; j < arr.length-i-1;j++){
if(arr[j] > arr[j+1]){
IntSort.swap(arr ,j, j+1);
}
}
}
return arr;
}
@Override public int[] sort(int[] arr){
for(int i=1; i < arr.length; i++){
for (int j = i; j > 0; j--) {
if (arr[j-1] > arr[j]){
IntSort.swap(arr, j, j-1);
}else break;
}
}
return arr;
}