//冒泡排序
// int[] intArr = {20,90,13,88,1,15,40};
// for(int i = 0; i < intArr.Length-1; i++) {
// for(int j = 0; j < intArr.Length-i-1;j++) {
// if(intArr[j]>intArr[j+1]) {
// inttemp = intArr[j];
// intArr[j] = intArr [j + 1];
// intArr[j + 1] = temp;
// }
// }
// }
//选择排序
// int[] intArr = {20,90,13,88,1,15,40};
// intmin;
// intminindex;
// for(int i = 0; i < intArr.Length-1; i++) {
// min= intArr [i];//记录最小值
// minindex= i;//记录最小值下标
// //找出剩余数组中的最小值
// for(int j = i+1; j < intArr.Length; j++) {
// if(intArr[j]
// min= intArr [j];
// minindex= j;
// }
// }
// intArr[minindex] = intArr [i];
// intArr[i] = min;
// }
// for(int i = 0; i < intArr.Length; i++) {
// Console.WriteLine(intArr[i]);
//插入排序
// int[] arr = {12,35,0,54,33,23,22};
// inttemp,p;
// for(int i = 1; i < arr.Length; i++) {
// temp= arr[i];
// p= i - 1;
// while(p>=0&&temp
// arr[p + 1] = arr [p];
// p--;
// }
// arr[p + 1] = temp;
// }
// for(int j =0; j
// Console.Write("{0},",arr[j]);
// }
}
}
}
二分查找
while(low<=high){
int mid = (low+high)/2;
//mid 代表中间索引,不能放到while循环的外面
if(a[mid]) == key){
Console.WriteLine("Find Key,index = "+mid);
//如果中间的数大于要查找的数,把后面一半数组去掉
}else if ( a[mid]>key ) {
high = mid -1;
}else{ //小于要查找的数,把前面的一半的数去掉
low = mid +1;
}
}