二分查找
文章平均质量分 59
克里马查
这个作者很懒,什么都没留下…
展开
-
1011. 在 D 天内送达包裹的能力
算法题(程序员面试宝典)解题思路主要来源于leetcode官方与《程序员面试宝典》。1011. 在 D 天内送达包裹的能力传送带上的包裹必须在 D 天内从一个港口运送到另一个港口。传送带上的第 i 个包裹的重量为 weights[i]。每一天,我们都会按给出重量的顺序往传送带上装载包裹。我们装载的重量不会超过船的最大运载重量。返回能在 D 天内将传送带上的所有包裹送达的船的最低运载能力。示例 1:输入:weights = [1,2,3,4,5,6,7,8,9,10], D = 5输出:15原创 2021-03-12 21:49:25 · 94 阅读 · 0 评论 -
875. 爱吃香蕉的珂珂
算法题(程序员面试宝典)解题思路主要来源于leetcode官方与《程序员面试宝典》。875. 爱吃香蕉的珂珂珂珂喜欢吃香蕉。这里有 N 堆香蕉,第 i 堆中有 piles[i] 根香蕉。警卫已经离开了,将在 H 小时后回来。珂珂可以决定她吃香蕉的速度 K (单位:根/小时)。每个小时,她将会选择一堆香蕉,从中吃掉 K 根。如果这堆香蕉少于 K 根,她将吃掉这堆的所有香蕉,然后这一小时内不会再吃更多的香蕉。珂珂喜欢慢慢吃,但仍然想在警卫回来前吃掉所有的香蕉。返回她可以在 H 小时内吃掉所有香蕉的最原创 2021-03-11 20:23:30 · 114 阅读 · 0 评论 -
300. 最长上升子序列
链表算法题(程序员面试宝典)解题思路主要来源于leetcode官方与《程序员面试宝典》。300. 最长上升子序列给定一个无序的整数数组,找到其中最长上升子序列的长度。示例:输入: [10,9,2,5,3,7,101,18]输出: 4解释: 最长的上升子序列是 [2,3,7,101],它的长度是 4。说明:可能会有多种最长上升子序列的组合,你只需要输出对应的长度即可。你算法的时间复杂度应该为 O(n2) 。进阶: 你能将算法的时间复杂度降低到 O(n log n) 吗?解题方法解题思原创 2020-12-15 17:01:17 · 97 阅读 · 0 评论 -
34. 在排序数组中查找元素的第一个和最后一个位置
链表算法题(程序员面试宝典)解题思路主要来源于leetcode官方与《程序员面试宝典》。34. 在排序数组中查找元素的第一个和最后一个位置给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1, -1]。进阶:你可以设计并实现时间复杂度为 O(log n) 的算法解决此问题吗?示例 1:输入:nums = [5,7,7,8,8,10], target = 8输出:[3,4]示例原创 2020-12-14 16:09:27 · 93 阅读 · 0 评论 -
704. 二分查找
链表算法题(程序员面试宝典)解题思路主要来源于leetcode官方与《程序员面试宝典》。704. 二分查找给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。示例 1:输入: nums = [-1,0,3,5,9,12], target = 9输出: 4解释: 9 出现在 nums 中并且下标为 4示例 2:输入: nums = [-1,0,3,5,9,12], targ原创 2020-12-14 15:40:09 · 356 阅读 · 1 评论