能上外国网站dns,lol做视频那个网站好,access 网站后台,南昌网站排名推广文章目录1. 题目2. 解题2.1 暴力搜2.2 二分查找1. 题目
给定已经按升序排列、由不同整数组成的数组 A#xff0c;返回满足 A[i] i 的最小索引 i。 如果不存在这样的 i#xff0c;返回 -1。
示例 1#xff1a;
输入#xff1a;[-10,-5,0,3,7]
输出#xff1a;3
解释返回满足 A[i] i 的最小索引 i。 如果不存在这样的 i返回 -1。
示例 1
输入[-10,-5,0,3,7]
输出3
解释
对于给定的数组A[0] -10A[1] -5A[2] 0A[3] 3因此输出为 3 。示例 2
输入[0,2,5,8,17]
输出0
示例
A[0] 0因此输出为 0 。示例 3
输入[-10,-5,3,4,7,9]
输出-1
解释
不存在这样的 i 满足 A[i] i因此输出为 -1 。提示
1 A.length 10^4
-10^9 A[i] 10^9来源力扣LeetCode 链接https://leetcode-cn.com/problems/fixed-point 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 2. 解题
2.1 暴力搜
class Solution {
public:int fixedPoint(vectorint A) {for(int i 0; i A.size(); i){if(A[i] i)return i;}return -1;}
};2.2 二分查找
class Solution {
public:int fixedPoint(vectorint A) {int l 0, r A.size() -1, mid, ans INT_MAX;while(l r) {mid (l r)1;if(mid A[mid])r mid-1;else if(mid A[mid])l mid1;else{ans min(ans,mid);r mid-1;}}return ansINT_MAX ? -1 : ans;}
};24 ms 10.7 MB 长按或扫码关注我的公众号一起加油、一起学习进步