static int binarySearch(int[] nums, int target) {
if(nums == null || nums.length == 0) return -1;
int left = 0, right = nums.length;
int mid = left + (right - left)/2;
if(nums[mid] == target) return mid;
else if(nums[mid] < target) left = mid + 1; // bu durumda target sagdadir
else right = mid; // bu durumda target soldadir.sola gideriz
// Ancak left = right olunca target elemani bulmus oluruz
if(left != nums.length && nums[left] == target) return left;
return -1;
}
14 Mart 2020 Cumartesi
Binary Search
Etiketler:
#array,
#arraylist,
#binarysearch,
#hackerrank,
#interview,
#java,
#java8,
#leetcode,
#list,
#order
Kaydol:
Kayıt Yorumları (Atom)
Hiç yorum yok:
Yorum Gönder