
二分
文章平均质量分 57
KroneX
ACM退役选手,热爱优雅、高效、有创造力的技术,本博客记录题解,编程tips,计算机相关知识,心得等。
展开
-
【leetcode】162. 寻找峰值(find-peak-element)(二分)[中等]
链接https://leetcode-cn.com/problems/find-peak-element/耗时解题:19 min题解:7 min题意峰值元素是指其值严格大于左右相邻值的元素。给你一个整数数组 nums,找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回 任何一个峰值 所在位置即可。你可以假设 nums[-1] = nums[n] = -∞ 。你必须实现时间复杂度为 O(log n) 的算法来解决此问题。提示: 1 <= nu原创 2021-09-15 09:44:02 · 200 阅读 · 0 评论 -
【leetcode】275. H 指数 II(h-index-ii)(二分)[中等]
链接https://leetcode-cn.com/problems/h-index-ii/耗时解题:5 h 5 min题解:9 min题意给定一位研究者论文被引用次数的数组(被引用次数是非负整数),数组已经按照 升序排列 。编写一个方法,计算出研究者的 h 指数。h 指数的定义: “h 代表“高引用次数”(high citations),一名科研人员的 h 指数是指他(她)的 (N 篇论文中)总共有 h 篇论文分别被引用了至少 h 次。(其余的 N - h&nb原创 2021-07-12 15:31:53 · 238 阅读 · 0 评论 -
【leetcode】274. H 指数(h-index)(二分)[中等]
链接https://leetcode-cn.com/problems/h-index/耗时解题:24 min题解:8 min题意给定一位研究者论文被引用次数的数组(被引用次数是非负整数)。编写一个方法,计算出研究者的 h 指数。h 指数的定义:h 代表“高引用次数”(high citations),一名科研人员的 h 指数是指他(她)的 (N 篇论文中)总共有 h 篇论文分别被引用了至少 h 次。且其余的 N - h 篇论文每篇被引用次数 不超过 h 次。例如:某人的 h 指数是 20,这表原创 2021-07-11 15:49:52 · 256 阅读 · 0 评论 -
【leetcode】1711. 大餐计数(count-good-meals)(二分)[中等]
链接https://leetcode-cn.com/problems/count-good-meals/耗时解题:5 h 16 min题解:38 min题意大餐 是指 恰好包含两道不同餐品 的一餐,其美味程度之和等于 2 的幂。你可以搭配 任意 两道餐品做一顿大餐。给你一个整数数组 deliciousness ,其中 deliciousness[i] 是第 i 道餐品的美味程度,返回你可以用数组中的餐品做出的不同 大餐 的数量。结果需要对 109 + 7 取余。原创 2021-07-07 17:21:53 · 212 阅读 · 0 评论 -
【leetcode】1482. 制作 m 束花所需的最少天数(minimum-number-of-days-to-make-m-bouquets)(二分)[中等]
链接https://leetcode-cn.com/problems/minimum-number-of-days-to-make-m-bouquets/耗时解题:7 h 36 min题解:16 min题意给你一个整数数组 bloomDay,以及两个整数 m 和 k 。现需要制作 m 束花。制作花束时,需要使用花园中 相邻的 k 朵花 。花园中有 n 朵花,第 i 朵花会在 bloomDay[i] 时盛开,恰好 可以用于 一束 花中。请你返回从花园中摘 m 束花需要等待的最少的天数。如果不原创 2021-05-09 18:37:07 · 183 阅读 · 0 评论 -
【leetcode】633. 平方数之和(sum-of-square-numbers)(二分)[中等]
链接https://leetcode-cn.com/problems/sum-of-square-numbers/耗时解题:25 min题解:7 min题意给定一个非负整数 c ,你要判断是否存在两个整数 a 和 b,使得 a2+b2=ca^2 + b^2 = ca2+b2=c 。提示:0 <= c <= 2^31 - 1思路算出所有小于等于 231−12^{31} - 1231−1 的平方数,存下来。遍历这个数组,并在这个数组中二分查找 c 减当前元素的元素,如果能二分原创 2021-04-28 20:09:17 · 187 阅读 · 0 评论 -
【leetcode】1011. 在 D 天内送达包裹的能力(capacity-to-ship-packages-within-d-days)(二分)[中等]
链接https://leetcode-cn.com/problems/capacity-to-ship-packages-within-d-days/耗时解题:62 min题解:30 min题意传送带上的包裹必须在 D 天内从一个港口运送到另一个港口。传送带上的第 i 个包裹的重量为 weights[i]。每一天,我们都会按给出重量的顺序往传送带上装载包裹。我们装载的重量不会超过船的最大运载重量。返回能在 D 天内将传送带上的所有包裹送达的船的最低运载能力。提示:1 <= D &原创 2021-04-26 22:10:25 · 194 阅读 · 0 评论 -
【leetcode】778. 水位上升的泳池中游泳(swim-in-rising-water)(二分+DFS)[困难]
链接https://leetcode-cn.com/problems/swim-in-rising-water/耗时解题:12 min题解:9 min题意在一个 N x N 的坐标方格 grid 中,每一个方格的值 grid[i][j] 表示在位置 (i,j) 的平台高度。现在开始下雨了。当时间为 t 时,此时雨水导致水池中任意位置的水位为 t 。你可以从一个平台游向四周相邻的任意一个平台,但是前提是此时水位必须同时淹没这两个平台。假定你可以瞬间移动无限距离,也就是默认在方格内部游动是不耗时的原创 2021-01-30 11:52:31 · 182 阅读 · 0 评论 -
【leetcode】1631. 最小体力消耗路径(path-with-minimum-effort)(二分+DFS)[中等]
链接https://leetcode-cn.com/problems/path-with-minimum-effort/耗时解题:2 h 55 min题解:38 min题意你准备参加一场远足活动。给你一个二维 rows x columns 的地图 heights ,其中 heights[row][col] 表示格子 (row, col) 的高度。一开始你在最左上角的格子 (0, 0) ,且你希望去最右下角的格子 (rows-1, columns-1) (注意下标从 0 开始编号)。你每次可以往原创 2021-01-29 23:33:30 · 250 阅读 · 0 评论 -
【leetcode】面试题 08.03. 魔术索引(magic-index-lcci)(二分)[简单]
链接https://leetcode-cn.com/problems/magic-index-lcci/耗时解题:40 min题解:21 min题意魔术索引。 在数组A[0…n-1]中,有所谓的魔术索引,满足条件A[i] = i。给定一个有序整数数组,编写一种方法找出魔术索引,若有的话,在数组A中找出一个魔术索引,如果没有,则返回-1。若有多个魔术索引,返回索引值最小的一个。思路二分,并分三种情况考虑。nums[m] == m: 这时找到了一个可能的答案,记录下来,并令 t=m 向前寻找原创 2020-07-31 12:25:15 · 196 阅读 · 0 评论 -
【leetcode】剑指 Offer 11. 旋转数组的最小数字(xuan-zhuan-shu-zu-de-zui-xiao-shu-zi-lcof)(二分)[简单]
链接https://leetcode-cn.com/problems/xuan-zhuan-shu-zu-de-zui-xiao-shu-zi-lcof/耗时解题:null min题解:32 min题意把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一个旋转,该数组的最小值为1。思路没有想出 存在元素相等的 的情况下怎么实现这个二分,想了几种方法,交了原创 2020-07-22 23:48:46 · 206 阅读 · 0 评论 -
【leetcode】167. 两数之和 II - 输入有序数组(two-sum-ii-input-array-is-sorted)(二分)[简单]
链接https://leetcode-cn.com/problems/two-sum-ii-input-array-is-sorted/耗时解题:16 min题解:4 min题意给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。说明:返回的下标值(index1 和 index2)不是从零开始的。你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。原创 2020-07-20 09:59:35 · 182 阅读 · 0 评论 -
【leetcode】35. 搜索插入位置(search-insert-position)(二分)[简单]
链接https://leetcode-cn.com/problems/search-insert-position/耗时解题:17 min题解:3 min题意给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。思路二分,找到数组中大于等于当前元素的第一个值,即实现 lower_bound 的功能。AC代码被注释的 return 即使用 lowe_bound ACACACclass Solu原创 2020-07-17 11:55:02 · 182 阅读 · 0 评论