//1.插入排序
private static int[] sort(int[] data) {
if (data == null || data.length < 2) {
return data;
}
for (int i = 1; i < data.length; i++) {
for (int j = i; j > 0; j--) {
if (data[j] < data[j - 1]) {
int temp = data[j - 1];
data[j - 1] = data[j];
data[j] = temp;
} else {
break;
}
}
}
return data;
}
//2.冒泡排序
private static int[] sort(int[] data) {
if (data == null || data.length < 2) {
return data;
}
for (int i = 0; i < data.length - 1; i++) {
for (int j = 0; j < data.length - 1 - i; j++) {
if (data[j] > data[j + 1]) {
int temp = data[j + 1];
data[j + 1] = data[j];
data[j] = temp;
}
}
}
return data;
}
//3.二分法查值
public static int myBinarySearch(int[] arr,int value) {
int low=0;
int high=arr.length-1;
while(low<=high) {
int mid=(low+high)/2;
if(value==arr[mid]) {
return mid;
}
if(value>arr[mid]) {
low=mid+1;
}
if(value<arr[mid]) {
high=mid-1;
}
}
return -1;//没有找到返回-1
}