感谢
帮我优化
package 方法集合;
import java.util.Random;
public class testMe {
static Random Rd = new Random();
public static void main(String[] args) {
int[] arr = new int[11];
for (int i = 0; i < arr.length; i++) {
arr[i] = Rd.nextInt() >>> 28;
}
new ArrSort().arrSort(arr);
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
boolean contains = new Find().arrFindNum(10, arr);
System.out.println(contains);
}
}
class Find {
/**
* 查找有序数组中是否有某个数
*
* @param a
* 查找的数
* @param arr
* 数组
* @return true: 有 false: 没有
*/
public boolean arrFindNum(int a, int arr[]) {
int head = 0;
int tail = arr.length;
int index = (tail - head) / 2;
while (true) {
if (a == arr[index]) {
return true;
}
if (a > arr[index]) {
head = index;
} else {
tail = index;
}
index = (tail + head) / 2;
if (index == head) {
return false;
}
}
}
}
class ArrSort {
public void arrSort(int[] arr) {
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr.length - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
int tmp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = tmp;
}
}
}
}
}
danieVSwide