
算法
文章平均质量分 59
Yuan_xii
这个作者很懒,什么都没留下…
展开
-
260. 只出现一次的数字 III
260. 只出现一次的数字 III给定一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。你可以按 任意顺序 返回答案。进阶:你的算法应该具有线性时间复杂度。你能否仅使用常数空间复杂度来实现?示例 1:输入:nums = [1,2,1,3,2,5]输出:[3,5]解释:[5, 3] 也是有效的答案。示例 2:输入:nums = [-1,0]输出:[-1,0]示例 3:输入:nums = [0,1]输出:[1,0]提示:2 &原创 2021-04-18 18:27:25 · 88 阅读 · 0 评论 -
算法思路
一种针对有序区间内的O(logn)的搜索方式;两大基本原则1.每次都要缩减区域2.每次缩减不能排除潜在答案三大模版(1)找一个准确值循环条件:l<=r搜检搜索空间:l=mid+1;r = mid-1(2)找一个模糊值循环条件:l<r缩减搜索空间:l=mid;r = mid-1l=mid+1;r = mid(3)万用型循环条件: l<r-1缩减搜索空间:l=mid,r=mid...原创 2021-01-12 12:08:09 · 166 阅读 · 0 评论 -
算法:双指针笔记
1.双指针同向[0, i) :已经处理完的数据[i ,j) :处理过但不需要的数据[j, length) :待处理的数据//经过此方法处理的数据最后顺序会相同i 为下一个待填充的数据;i 为下一个待填充的数据;i 为下一个待填充的数据;i 为下一个待填充的数据;反向[0, i), (0,length) 均为已经处理过了的数据;[i, j]为待处理的数据每次至少移动一个方向的指针;每次至少移动一个方向的指针;每次至少移动一个方向的指针;每次至少移动一个方向的指针;.原创 2021-01-10 22:39:43 · 128 阅读 · 0 评论 -
1695. 删除子数组的最大得分
1695. 删除子数组的最大得分给你一个正整数数组 nums ,请你从中删除一个含有 若干不同元素 的子数组。删除子数组的 得分 就是子数组各元素之 和 。返回 只删除一个 子数组可获得的 最大得分 。如果数组 b 是数组 a 的一个连续子序列,即如果它等于 a[l],a[l+1],…,a[r] ,那么它就是 a 的一个子数组。思路:一开始我看到这题,看到子数组这个关键字,就立马想到了回溯,结果回溯超时,我…,然后就去看题解了,题解使用的是华东窗口,我阅读了下源码,觉得也不大难理解,因此就来记录下原创 2020-12-22 10:47:40 · 218 阅读 · 0 评论 -
211. 添加与搜索单词 - 数据结构设计
211. 添加与搜索单词 - 数据结构设计请你设计一个数据结构,支持 添加新单词 和 查找字符串是否与任何先前添加的字符串匹配 。实现词典类 WordDictionary :WordDictionary() 初始化词典对象void addWord(word) 将 word 添加到数据结构中,之后可以对它进行匹配bool search(word) 如果数据结构中存在字符串与 word 匹配,则返回 true ;否则,返回 false 。word 中可能包含一些 '.' ,每个 . 都可以表示任原创 2020-12-04 22:46:27 · 176 阅读 · 0 评论 -
221. 最大正方形
221. 最大正方形在一个由 '0' 和 '1' 组成的二维矩阵内,找到只包含 '1' 的最大正方形,并返回其面积。 示例:输入:matrix = [["1","0","1","0","0"], ["1","0","1","1","1"], ["1","1","1","1","1"], ["1","0","0","1","0"]]输出:4来源:力扣(LeetCode)链接:https://leetcode-cn.com/p原创 2020-11-29 10:15:42 · 110 阅读 · 0 评论 -
210. 课程表 II
210. 课程表 II现在你总共有 n 门课需要选,记为 0 到 n-1。在选修某些课程之前需要一些先修课程。 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们: [0,1]给定课程总量以及它们的先决条件,返回你为了学完所有课程所安排的学习顺序。可能会有多个正确的顺序,你只要返回一种就可以了。如果不可能完成所有课程,返回一个空数组。示例 1:输入: 2, [[1,0]] 输出: [0,1]解释: 总共有 2 门课程。要学习课程 1,你需要先完成课程 0。因原创 2020-11-27 17:50:35 · 144 阅读 · 0 评论 -
207. 课程表
## 207. 课程表你这个学期必须选修 numCourse 门课程,记为 0 到 numCourse-1 。在选修某些课程之前需要一些先修课程。 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们:[0,1]给定课程总量以及它们的先决条件,请你判断是否可能完成所有课程的学习? 示例 1:输入: 2, [[1,0]] 输出: true解释: 总共有 2 门课程。学习课程 1 之前,你需要完成课程 0。所以这是可能的。示例 2:输入: 2, [[1,0]原创 2020-10-28 19:21:57 · 185 阅读 · 0 评论