看到大多数都是二分查找上下界,开始我的想法是:二分查找到某一个数等于k,然后从这个数开始分别往左和往右统计有多少个k,总是超时,嗯?好像没什么大问题啊? 于是换了一个思路,分别从头和从尾开始查找等于k的上下界,竟然过了。。。时间复杂度为O(n-m),空间复杂度O(1)。 public: int GetNumberOfK(vectordata ,int k) { int l =&nbs...