Search an element in a sorted and rotated array
An element in a sorted array can be found in O(log n) time via binary search . But suppose we rotate an ascending order sorted array at some pivot unknown to you beforehand. So for instance, 1 2 3 4 5 might become 3 4 5 1 2. Devise a way to find an element in the rotated array in O(log n) time. Code: package microsoftInterviewPrep; public class SearchSortedRotatedArray { static void pivotedBinarySearch(int[] a, int key){ int n = a.length -1; int pivot = findPivot(a, 0, n); if(a[pivot] == key) System.out.println(pivot); else if(key > a[0]) System.out.println(binarySearch(a, 0, pivot-1, key)); else Syste...