题解 | #数字在升序数组中出现的次数#
数字在升序数组中出现的次数
https://www.nowcoder.com/practice/70610bf967994b22bb1c26f9ae901fa2
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型一维数组 * @param k int整型 * @return int整型 */ public int GetNumberOfK (int[] nums, int k) { if(nums.length==0) return 0; // write code here int a=0; int b=nums.length-1; if(nums[b]<k||nums[a]>k) return 0; while(a!=b){ int min=(a+b)/2; if(min==a||min==b) break; System.out.println(a); if(nums[min]>k){ b=min; } else if(nums[min]<k) a=min; else break; } while(nums[a]!=k||nums[b]!=k){ if(nums[a]!=k) a++; if(nums[b]!=k) b--; if(a>b) break; } if(b-a+1>0) return b-a+1; else return 0; } }