LeetCode 1064. 不动点(二分查找)

文章目录

    • 1. 题目
    • 2. 解题
      • 2.1 暴力搜
      • 2.2 二分查找

1. 题目

给定已经按升序排列、由不同整数组成的数组 A,返回满足 A[i] == i 的最小索引 i。
如果不存在这样的 i,返回 -1。

示例 1:
输入:[-10,-5,0,3,7]
输出:3
解释:
对于给定的数组,A[0] = -10,A[1] = -5,A[2] = 0,A[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(vector<int>& A) {for(int i = 0; i < A.size(); ++i){if(A[i] == i)return i;}return -1;}
};

2.2 二分查找

class Solution {
public:int fixedPoint(vector<int>& 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 = mid+1;else{ans = min(ans,mid);r = mid-1;}}return ans==INT_MAX ? -1 : ans;}
};

24 ms 10.7 MB


长按或扫码关注我的公众号,一起加油、一起学习进步!
Michael阿明

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/475318.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode 1474. 删除链表 M 个节点之后的 N 个节点

文章目录1. 题目2. 解题1. 题目 给定链表 head 和两个整数 m 和 n. 遍历该链表并按照如下方式删除节点: 开始时以头节点作为当前节点. 保留以当前节点开始的前 m 个节点. 删除接下来的 n 个节点. 重复步骤 2 和 3, 直到到达链表结尾. 在删除了指定结点之后, 返回修改过后的链…

mac找不到mysql_mac找不到mysql

出现问题&#xff1a;macbook安装好mysql&#xff0c;并按照各路大神的说明进行了以下配置。打开Terminal&#xff0c;输入&#xff1a;vim .bash_profile进入编辑界面&#xff0c;添加以下内容&#xff1a;export PATH$PATH:/usr/local/mysql/bin按下esc键&#xff0c;输入 :w…

LeetCode 1427. 字符串的左右移

文章目录1. 题目2. 解题1. 题目 给定一个包含小写英文字母的字符串 s 以及一个矩阵 shift&#xff0c;其中 shift[i] [direction, amount]&#xff1a; direction 可以为 0 &#xff08;表示左移&#xff09;或 1 &#xff08;表示右移&#xff09;。 amount 表示 s 左右移的…

LeetCode 800. 相似 RGB 颜色

文章目录1. 题目2. 解题2.1 暴力枚举2.2 独立枚举1. 题目 RGB 颜色用十六进制来表示的话&#xff0c;每个大写字母都代表了某个从 0 到 f 的 16 进制数。 RGB 颜色 “#AABBCC” 可以简写成 “#ABC” 。例如&#xff0c;"#15c" 其实是 “#1155cc” 的简写。 现在&a…

mysql 图片base64_关于图片的Base64编码

什么是Base64编码Base64编码是一种图片处理格式&#xff0c;通过特定的算法将图片编码成一长串字符串&#xff0c;在页面上显示的时候&#xff0c;可以用该字符串来代替图片的url属性。base64编码就是长得像下面这样子的代码&#xff1a;thunder://QUFodHRwOi8vd3d3LmJhaWR1LmN…

LeetCode 243. 最短单词距离

文章目录1. 题目2. 解题1. 题目 给定一个单词列表和两个单词 word1 和 word2&#xff0c;返回列表中这两个单词之间的最短距离。 示例: 假设 words ["practice", "makes", "perfect", "coding", "makes"] 输入: word1 “…

mysql load character_mysql load data Invalid utf8mb4 character string: ”

使用mysql的 load data 导入数据到 数据库中&#xff1a;LOAD DATA LOCAL INFILE /tmp/2982/20200424/user.csvINTO TABLE t_user CHARACTER SET utf8mb4 FIELDS TERMINATED BY ,LINES TERMINATED BY \r\nIGNORE 1 LINES(userName, userNo, age, homeAddr)SET province 浙江省…

LeetCode 1426. 数元素(哈希set)

文章目录1. 题目2. 解题1. 题目 给你一个整数数组 arr&#xff0c; 对于元素 x &#xff0c;只有当 x 1 也在数组 arr 里时&#xff0c;才能记为 1 个数。 如果数组 arr 里有重复的数&#xff0c;每个重复的数单独计算。 示例 1&#xff1a; 输入&#xff1a;arr [1,2,3] …

mysql 默认page大小_MySQL innodb_page_size

原标题&#xff1a;MySQL innodb_page_size墨墨导读&#xff1a;Page是MySQL Innodb存储的最基本结构&#xff0c;也是Innodb磁盘管理的最小单位&#xff0c;了解page的一些特性&#xff0c;可以更容易理解MySQL。innodb_page_size作为innodb和OS交互单位。文件系统对文件的buf…

LeetCode 266. 回文排列(计数)

文章目录1. 题目2. 解题1. 题目 给定一个字符串&#xff0c;判断该字符串中是否可以通过重新排列组合&#xff0c;形成一个回文字符串。 示例 1&#xff1a; 输入: "code" 输出: false示例 2&#xff1a; 输入: "aab" 输出: true示例 3&#xff1a; 输入…

LeetCode 1150. 检查一个数是否在数组中占绝大多数(二分查找)

文章目录1. 题目2. 解题2.1 暴力2.2 二分查找1. 题目 给出一个按 非递减 顺序排列的数组 nums&#xff0c;和一个目标数值 target。 假如数组 nums 中绝大多数元素的数值都等于 target&#xff0c;则返回 True&#xff0c;否则请返回 False。 所谓占绝大多数&#xff0c;是指…

VirtualBox的Linux虚拟机访问Windows7的文件

第一步&#xff1a; 安装 VirtualBox 增强工具 点击确定&#xff0c;稍等片刻&#xff0c;VirtualBox 的增强功能就可以安装完毕。 第2步&#xff1a;设置要共享给Linux 虚拟机的文件夹&#xff08;目录&#xff09; 点击右下角的“分配数据空间” 点击“添加” 选择要共享的路…

LeetCode 1118. 一月有多少天(闰年判断)

文章目录1. 题目2. 解题1. 题目 指定年份 Y 和月份 M&#xff0c;请你帮忙计算出该月一共有多少天。 示例 1&#xff1a; 输入&#xff1a;Y 1992, M 7 输出&#xff1a;31示例 2&#xff1a; 输入&#xff1a;Y 2000, M 2 输出&#xff1a;29示例 3&#xff1a; 输入&am…

vue warning如何去掉_详解 vue 组件三大核心概念

前言本文主要介绍属性、事件和插槽这三个vue基础概念、使用方法及其容易被忽略的一些重要细节。如果你阅读别人写的组件&#xff0c;可以从这三个部分展开&#xff0c;它们可以帮助你快速了解一个组件的所有功能。本文的代码请猛戳https://github.com/ljianshu/Blog&#xff0c…

LeetCode 1133. 最大唯一数

文章目录1. 题目2. 解题1. 题目 给你一个整数数组 A&#xff0c;请找出并返回在该数组中仅出现一次的最大整数。 如果不存在这个只出现一次的整数&#xff0c;则返回 -1。 示例 1&#xff1a; 输入&#xff1a;[5,7,3,9,4,9,8,3,1] 输出&#xff1a;8 解释&#xff1a; 数组…

技术演讲的技巧和经验

导读&#xff1a;如果你在编程大会上发表演讲&#xff0c;不论是开放式的BarCamp或是像OSCON那样精心组织的大型会议&#xff0c;你只有很短的一段时间将脑中的信息传达给听众&#xff0c;所以请仔细把握。 技术会议的成本非常昂贵&#xff0c;不仅仅是经济上的成本。即使像Bar…

如何使用kali来进行一次ddos攻击

本文章用于记录自己的学习路线&#xff0c;不用于其他任何途径! ! ! 哈喽啊&#xff01;又是好久不见&#xff0c;本博主在之前发过一个ddos攻击的介绍。 emm…虽然那篇文章也提到了ddos攻击的方式&#xff0c;但太过于简陋&#xff0c;好像也没有什么用&#xff0c;so&#…

LeetCode 256. 粉刷房子(DP)

文章目录1. 题目2. 解题1. 题目 假如有一排房子&#xff0c;共 n 个&#xff0c;每个房子可以被粉刷成红色、蓝色或者绿色这三种颜色中的一种&#xff0c;你需要粉刷所有的房子并且使其与相邻的两个房子颜色不能相同。 当然&#xff0c;因为市场上不同颜色油漆的价格不同&…

LeetCode 1099. 小于 K 的两数之和(二分查找)

文章目录1. 题目2. 解题2.1 暴力2.2 二分查找1. 题目 给你一个整数数组 A 和一个整数 K&#xff0c;请在该数组中找出两个元素&#xff0c;使它们的和小于 K 但尽可能地接近 K&#xff0c;返回这两个元素的和。 如不存在这样的两个元素&#xff0c;请返回 -1。 示例 1&#…

sonarqube使用mysql_SonarQube的安装、配置与使用

SonarQube是管理代码质量一个开放平台&#xff0c;可以快速的定位代码中潜在的或者明显的错误&#xff0c;下面将会介绍一下这个工具的安装、配置以及使用。准备工作&#xff1b;1、jdk(不再介绍)2、sonarqube&#xff1a;http://www.sonarqube.org/downloads/3、SonarQubeScan…