第二讲:简单排序
冒泡排序(BubbleSort)
直接插入排序
直接选择排序
冒泡排序:
public classBubbleSort {
public static void sort(long[] arr) {
long tmp = 0;
for(int i = 0; i < arr.length - 1; i++) {
for(int j = arr.length - 1; j > i; j--) {
if(arr[j] < arr[j - 1]){
//进行交换
tmp= arr[j];
arr[j]= arr[j - 1];
arr[j- 1] = tmp;
}
}
}
}
}
直接选择排序(StraightSelectionSort):
public classSelectionSort {
public static void sort(long[] arr) {
int k = 0;
long tmp = 0;
for(int i = 0; i < arr.length - 1; i++) {
k= i;
for(int j = i; j < arr.length; j++) {
if(arr[j] < arr[k]) {
k= j;
}
}
tmp= arr[i];
arr[i]= arr[k];
arr[k]= tmp;
}
}
}
插入排序:
public classInsertSort {
public static void sort(long[] arr) {
long tmp = 0;
for(int i = 1; i < arr.length; i++) {
tmp= arr[i];
int j = i;
while(j > 0 &&arr[j] >= tmp) {
arr[j]= arr[j - 1];
j--;
}
arr[j]= tmp;
}
}
}