备忘
数字在排序数组中出现的次数
http://www.nowcoder.com/questionTerminal/70610bf967994b22bb1c26f9ae901fa2
public class Solution { public int GetNumberOfK(int [] array , int k) { if(k < array[0] || k > array[array.length-1]){ return 0; } int left = 0; int right = array.length -1; int count = 0; while(left < right){ int mid = (left+right)/2; if(array[mid] > k){ right = mid; }else if(array[mid] < k){ left = mid; }else{ count++; int prev = mid-1; int foll = mid+1; while(prev >= 0){ if(array[prev] == k){ prev--; count++; }else{ break; } } while(foll <= array.length-1){ if(array[foll] == k){ foll++; count++; }else{ break; } } } } return count; } }