二分 二分时间复杂度较低,但必须找到一个有界的数列,且数列是有序的。 需要一个判断函数用于确定最终的答案在哪个区间 while(left<=right) { 判断和对mid的重赋值 } eg:while(left<=right){ int mid=(right+left)/2; if(judge(mid)>=m)left=mid+1; else if(judge(mid)<m)right=mid-1; } 当然,judge函数在不同题里看可能有所不同,上述代码仅为一个比较普遍的例子