LeetCode第1346题 - 检查整数及其两倍数是否存在
题目
解答
class Solution {public boolean checkIfExist(int[] arr) {if (arr == null || arr.length == 0) {return false;}Arrays.sort(arr);for (int i = 0; i < arr.length; ++i) {int left = 0;int right = arr.length - 1;int mid = 0;long dValue = arr[i] * 2;while (left <= right) {mid = left + (right - left) / 2;if (arr[mid] == dValue && mid != i) {return true;}if (arr[mid] > dValue) {right = mid - 1;} else {left = mid + 1;}}}return false;}
}
总结
二分法。