![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
二分查找
文章平均质量分 91
二分查找题库
敲代码敲到头发茂密
欲戴王冠,必承其重
展开
-
【数据结构与算法】二分查找题解(二)
例如, [0,1,2,4,4,4,5,6,6,7] 在下标 5 处经旋转后可能变为 [4,5,6,6,7,0,1,2,4,4]。运用二分查找,从范围[1,n][1,n][1,n]开始,不断的折半,调用guessguessguess,如果midmidmid高了,就往左半折,如果低了就往右半折,直到找到了。调用预定义的接口guess来得到高了还是低了的信息,数字 范围是[1,n][1,n][1,n],直到猜中题目pick的数字。输入:nums = [2,5,6,0,0,1,2], target = 0。原创 2024-03-08 11:05:35 · 1102 阅读 · 30 评论 -
【数据结构与算法】二分查找题解(一)
中等给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1, -1]。你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。原创 2024-02-21 23:25:46 · 813 阅读 · 10 评论 -
【算法】算法题-20231120
解释:函数应返回新长度 length = 7, 并且原数组的前五个元素被修改为 0, 0, 1, 1, 2, 3, 3。解释:函数应返回新长度 length = 5, 并且原数组的前五个元素被修改为 1, 1, 2, 2, 3。输入: nums = [1,2,3,4,5,6,7], k = 3。输入:nums = [0,0,1,1,1,1,2,3,3]输出:7, nums = [0,0,1,1,2,3,3]向右轮转 1 步: [7,1,2,3,4,5,6]向右轮转 2 步: [6,7,1,2,3,4,5]原创 2023-11-20 05:00:00 · 674 阅读 · 2 评论 -
【算法】算法题-20231122
输入:nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3。合并结果是 [1,2,2,3,5,6] ,其中斜体加粗标注的为 nums1 中的元素。输入:nums1 = [0], m = 0, nums2 = [1], n = 1。输入:nums1 = [1], m = 1, nums2 = [], n = 0。解释:调用函数后,输入的数组将被修改为:[1,0,0,2,3,0,0,4]解释:需要合并 [1,2,3] 和 [2,5,6]。原创 2023-11-22 05:00:00 · 1477 阅读 · 2 评论 -
【算法】算法题-20231121
给你一个整数数组 nums ,你需要找出一个 连续子数组 ,如果对这个子数组进行升序排序,那么整个数组都会变为升序排序。解释:你只需要对 [6, 4, 8, 10, 9] 进行升序排序,那么整个表都会变为升序排序。输入:s = [“H”,“a”,“n”,“n”,“a”,“h”]输入:s = [“h”,“e”,“l”,“l”,“o”]输出:[“h”,“a”,“n”,“n”,“a”,“H”]输入:nums = [2,6,4,8,10,9,15]输出:[“o”,“l”,“l”,“e”,“h”]原创 2023-11-21 05:00:00 · 636 阅读 · 2 评论