選擇排序
int [] arr = {2,48,28,32,90,12};
for(int i= 0; i < arr.length - 1;i++){
? ? for(int j = i + 1; j < arr.length;j++){
? ? ? ? ? if(arr[i]? < arr[j]){
? ? ? ? ? ? ? ? int c;
? ? ? ? ? ? ? ? c = arr[i];
? ? ? ? ? ? ? ?arr[i] = arr[j];
? ? ? ? ? ? ? arr[j] = c;
? ? ? ? }
?? }
}
冒泡排序
for(int i =0;i < arr.length;i++){
?? for(int j = 0;j < arr.length- i- 1;j++){
? ? ? if(arr[i] >arr[i + 1]{
?? ? ? ? int c= arr[i];
?? ? ? ? arr[i] = arr[j];
?? ? ? ? arr[j] = c;
? ? ? }
?? }
}
二分查找
前提是這個數組是個有序的數組
key;
int min = 0;
int max = arr.length - 1;
while(min <= max){
? ? ? mid = (min + max)/2;
? ? ? if(key >arr[mid];
? ? ? ? ? ? ? ? ? ? min = mid + 1;
? ? ? else?
? ? ? ? ? max = mid-1;
? ? ? else ?
?? ? ? ? ? return mid;
?? }
?? return -1;
}