search for range
1 class Solution { 2 public: 3 vector<int> searchRange(int A[], int n, int target) { 4 // Start typing your C/C++ solution below 5 // DO NOT write int main() function 6 vector<int> v(2,-1); 7 8 int l = 0, m , r = n-1; 9 10 while( l<=r ) 11 { 12 m = l + (r-l)/2; 13 if(A[m]<target) 14 l = m+1; 15 else 16 r = m - 1; 17 } 18 if( l<n && A[l] == target ) v[0] = l; 19 else return v; 20 21 l = l+1; r = n - 1; 22 while( l<=r ) 23 { 24 m = l + (r-l)/2; 25 if(A[m]<=target) 26 l = m+1; 27 else 28 r = m - 1; 29 } 30 if( r>=0 && A[r] == target ) v[1] = r; 31 32 return v; 33 34 } 35 };
posted on 2013-07-03 17:49 jumping_grass 阅读(141) 评论(0) 收藏 举报
浙公网安备 33010602011771号