diff --git a/Java/binary-tree/ToSearchInInfiniteArray.java b/Java/binary-tree/ToSearchInInfiniteArray.java new file mode 100644 index 0000000..170225a --- /dev/null +++ b/Java/binary-tree/ToSearchInInfiniteArray.java @@ -0,0 +1,33 @@ +public class ToSearchInInfiniteArray { + public static void main(String[] args){ + int[] arr={3,4,5,6,7,89,99,100}; + int target=89; + System.out.println(ans(arr,target)); + } + static int ans(int[] arr, int target){ + int start=0; + int end=1; + while(target>arr[end]){ + int temp=end+1; + end=(end-start+1)*2; + start=temp; + } + return binarySearch(arr,target,start,end); + } + static int binarySearch(int[] arr, int target,int start,int end){ + while(start<=end){ + int mid=start+(end-start)/2; + if(targetarr[mid]){ + start=mid+1; + } + else{ + return mid; + } + + } + return -1; + } +} diff --git a/JavaScript/searching/binary_search.js b/JavaScript/binary_search.js similarity index 100% rename from JavaScript/searching/binary_search.js rename to JavaScript/binary_search.js