随笔分类 -  leetcode-二分

摘要:链接 https://leetcode.cn/problems/arranging-coins/description/ 问题分析 这题看数据规模,遍历肯定搞不定。 看数据规律,我们优先考虑二分。 然后单拎出来一个函数用来计算求和即可。 其中,二分如果不好判断边界,就假定极限情况(来到了left = 阅读全文
posted @ 2023-08-29 09:49 BJFU-VTH 阅读(9) 评论(0) 推荐(0) 编辑
摘要:问题链接 https://leetcode.cn/problems/find-minimum-in-rotated-sorted-array/description/ 解题思路 这个题目要求用logn的算法,那只能是二分了。 二分的时候,我们要讲究策略。首先,我们要找旋转数组中的最小值。我们先分析数 阅读全文
posted @ 2023-01-12 11:32 BJFU-VTH 阅读(53) 评论(0) 推荐(0) 编辑
摘要:问题链接 https://leetcode.cn/problems/search-a-2d-matrix/description/ 解题思路 我们可以确定,数据是有序的。所以我们有2种办法用二分来解决。 第一种,我们可以写个下标映射函数,把矩阵当做一维数组来进行遍历。 第二种,我们可以先对列进行二分 阅读全文
posted @ 2023-01-12 00:20 BJFU-VTH 阅读(15) 评论(0) 推荐(0) 编辑
摘要:问题描述 https://leetcode.cn/problems/find-first-and-last-position-of-element-in-sorted-array/description/ 解题思路 我们查找元素的第一个和最后一个元素的位置,题目要求logn,所以只能用二分。 我们用 阅读全文
posted @ 2023-01-12 00:03 BJFU-VTH 阅读(25) 评论(0) 推荐(0) 编辑
摘要:问题链接 https://leetcode.cn/problems/search-in-rotated-sorted-array/description/ 解题思路 这个题目要求复杂度了。我们不要慌,首先分析一下数据。 也就是说,这个数组是由2个上升子序列组成的。所以,我们如果用传统的二分法,是不太 阅读全文
posted @ 2023-01-11 19:55 BJFU-VTH 阅读(25) 评论(0) 推荐(0) 编辑
摘要:问题链接 https://leetcode.cn/problems/missing-number/description/ 解题思路 这个题目,可以先排序,然后找到最左侧的下标和数值不匹配的一个。 没啥好说的,常规二分。 不过,一般的二分都是3个分支,分别是等于,小于,大于。 但这个题目不一样,这个 阅读全文
posted @ 2023-01-11 16:56 BJFU-VTH 阅读(20) 评论(0) 推荐(0) 编辑
摘要:问题链接 https://leetcode.cn/problems/sqrtx/description/ 解题思路 这个题目,可以用1到x来进行二分。 对照上一题的解题思路,当我们不知道最后应该返回什么的时候,就去想mid == left == right的时候,我们应该返回什么。 代码 class 阅读全文
posted @ 2023-01-11 16:39 BJFU-VTH 阅读(29) 评论(0) 推荐(0) 编辑
摘要:问题链接 https://leetcode.cn/problems/search-insert-position/description/ 解题思路 搜索插入位置,是一个常见的二分算法。 二分是有固定模板的。这个题目是搜索插入位置,和最简单的二分不同。 不同之处在于,它在查找失败时不返回False, 阅读全文
posted @ 2023-01-10 22:58 BJFU-VTH 阅读(29) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示