剑指offer67题-No37.第一个只出现一次的字符
用两个二分板子,分别是找左边界和右边界的二分。 class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型vector * @param k int整型 * @return int整型 */ int GetNumberOfK(…
|
|
剑指offer67题-No6.旋转数组中的最小数字
二分法。 二分法的本质、模板、例题 - 知乎 二分法的关键是找出目标点的性质。 观察题目中,旋转数组的性质,能发现最小的数字一定是小于等于最右端点的。即找出某区间的最左值,用二分法的右区间模板。 class Solution { public: int minArray(vector<int> &numbers) { int pivo…
|
|
剑指offer67题-No1.二维数组的查找
牛客链接:二维数组的查找 暴力方法是遍历两边,复杂度是O(mn)。核心是二分查找。二分法:O(nlogm)。 bool Find(int target, vector<vector<int> >& array) { // write code here for(auto &row : array){ int l = 0;…
|
|