leetcode刷题
文章平均质量分 93
LLM1602
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
leetcode-dfs总结
一:二分图:颜色分图1:leetcode:785https://leetcode-cn.com/problems/is-graph-bipartite/ 思想:即然要分成两组,二分,即颜色不同,把一天边的两个结点分成A,B两个集合,则考虑用一个颜色(eg:蓝色)赋予当 前结点,把与它相邻的结点赋予另一颜色(...原创 2020-03-18 10:52:04 · 1349 阅读 · 0 评论 -
字符串的删除,重构匹配-leetcode,524,767,1054(学习优先队列的用法),355(优先队列重载比较函数)
1:524:https://leetcode-cn.com/problems/longest-word-in-dictionary-through-deleting/题目:思路:为了更快得出结论,先将d中的字符串排序(以长度为首要原则,再以字母顺序为其次原则),有因为d中的字符串是s中删除某些字符而产生的,也就是说d中各字符出现的顺序是有一定顺序的,因此可以用下标来记录d在s中匹配...原创 2020-03-24 22:51:43 · 278 阅读 · 0 评论 -
leetcode:853-车队
853:https://leetcode-cn.com/problems/car-fleet/题目:思路:考虑要想成为一个车队,必然起点远点比起点进的肯定要用时少或者相等,既然这样,那就用map来记录时间以及起点,为了方便比较,应当将距离近的放在map的前面,这样的话,进行比较时,只用挨个比较,如果后面用时少于前者那必然是一个车队,否则就是另一个车队。代码:...原创 2020-03-25 14:28:18 · 266 阅读 · 0 评论 -
leetcode-三角形(学习了怎么简洁的判断能否构成三角型,以及常用三角形面积公式)
1:976:https://leetcode-cn.com/problems/largest-perimeter-triangle/题目:思路:先将数组排序,首先只有最大的数,小于另外两个数的和则定可以构成三角形。则可以选择从末尾开始比较,若是可以构成三角形,则返回三者之和。代码:收获:排序后,只要判断最大数,是否小于另两个数之和,就可以判断是否构成三角形2:812:h...原创 2020-03-25 15:26:14 · 611 阅读 · 0 评论 -
leetcode-1305-(学习使用mergr函数)
1305:https://leetcode-cn.com/problems/all-elements-in-two-binary-search-trees/题目:思路:先中序遍历,再用Merge函数合并。代码:收获:merge(v1.begin(),v1.end(),v2.begin(),v2.end(),v3,compare);v3为结果集,compare可不写,则默认为...原创 2020-03-25 15:57:47 · 459 阅读 · 0 评论 -
leetcode-1329,1356,1333(学会在map里排序)(自定义排序算法,用auto const& a,这样会快很多)
1:1329:https://leetcode-cn.com/problems/sort-the-matrix-diagonally/题目:思路1:用map将对角线上的元素都存储起来,然后排序,再放回原来的位置,代码:收获:这个对map的排序,sort(hashmap[s.first].begin(),hashmap[s.first].end());学习上了思路2:一次遍历...原创 2020-03-25 16:27:26 · 480 阅读 · 0 评论 -
leetcode-对字符串的判断,205(字符串用find() ),290(用stringstream 把有空格的字符串,转化为无空格字符串)
1:205https://leetcode-cn.com/problems/isomorphic-strings/题目:思路:其实只用判断相同字符是否在相同位置,也就是一旦有相同字符,只用判断位置是否相同,find()会返回第一次出现的位置代码:收获:利用s.find(),转化思想,只要判断相同字符是否在相同位置,因为不同字符,无法比较2:290:https:/...原创 2020-03-25 17:02:04 · 234 阅读 · 0 评论 -
leetcode-380c++(学会使用rand() 函数,以及auto = s.begin(),it++)
380:https://leetcode-cn.com/problems/insert-delete-getrandom-o1/题目:思路:主要是如何随机返回set里的一个数,这里用rand()%s.size(),再输出set里的这个数代码:收获:rand()函数的应用,set的,erase(),迭代器的 auto it = s.begin(),it++...原创 2020-03-26 10:31:04 · 629 阅读 · 0 评论 -
leetcode-回文数,回文串(非dp,排序问题哈,dp太难,以后再总结)
266:https://leetcode-cn.com/problems/palindrome-permutation/题目:思路:判断能否形成回文串,那只要数奇数个字符的种类是否大于2,大于2肯定不可以形成代码:409:https://leetcode-cn.com/problems/longest-palindrome/题目:思路:那遇到偶数个重复的字符可以...原创 2020-03-26 14:43:45 · 315 阅读 · 0 评论 -
leetcode-滑动窗口(双指针-代码有套路-附总结代码)总结-满足条件-破坏条件(76,438,3,209有模板(别人总结的很好,学习一波))
滑动窗口:(其实可以理解为双指针)原作者链接:https://leetcode-cn.com/problems/find-all-anagrams-in-a-string/solution/hua-dong-chuang-kou-tong-yong-si-xiang-jie-jue-zi-/步骤:1、我们在字符串 S 中使用双指针中的左右指针技巧,初始化 left = right = ...原创 2020-03-26 15:31:09 · 697 阅读 · 0 评论 -
leetcode-几数之和问题汇总(二大类,用双指针(必须有序才能用双指针) 或者 map)
一:用map<int,int>1:https://leetcode-cn.com/problems/two-sum/题目:思路:用map<int,int>存储数据,遇到一个新的数时,就用目标值减去这个数,在map里查找,是否有这个结果,有说明成功,返回这两个数。代码:收获:比暴力来的舒服,采用target-nums[i],再在map里找,很高效。...原创 2020-03-26 16:32:01 · 332 阅读 · 0 评论 -
leetcode-滑动窗口(更像是前缀和:代码有套路-附总结模板)-有关于子数组(523.560,724,974,1218)-
724:https://leetcode-cn.com/problems/find-pivot-index/题目:思路:既然要左右和相等,那么先算出总和,逐个累加到leftSum数组里,一旦发现leftSum*2 = totalSum - nums[i],即可返回代码:收获:注意leftSum[]的应用,其次函数accmulate(begin(),end(),0);的应用。...原创 2020-03-27 10:28:20 · 403 阅读 · 0 评论 -
leetcode-层次遍历题目集合(102,107,429,637,314,993,111)
一102:https://leetcode-cn.com/problems/binary-tree-level-order-traversal/题目思路:层次遍历,就一层层遍历,先将根节点入队,然后根据目前队列的大小,来进行几次入队出队操作(看代码,会有注释)代码:二:107:https://leetcode-cn.com/problems/binary-tree-leve...原创 2020-03-28 14:55:53 · 451 阅读 · 0 评论 -
leetcode-二分查找总结(34,240,1111,162,658;153,154,33,81;287,875,1011,1283;528,497,1292)
一:旋转数组中用二分查找1:153:https://leetcode-cn.com/problems/find-minimum-in-rotated-sorted-array/题目:思路:通过排除最小元素不可能在哪里,从而缩小区间,当我们拿中间的数和最右边的数相比时,有2种情况//1.中间的数比右边的大,那么中间数不可能是最小的数,最小的数只可能出现在中间数的...原创 2020-04-03 15:41:22 · 762 阅读 · 0 评论 -
leetcode:平方,平方根(50,69)
50:https://leetcode-cn.com/problems/powx-n/题目:思路:代码:69:https://leetcode-cn.com/problems/sqrtx/题目:思路:二分来做代码:原创 2020-04-03 23:17:02 · 240 阅读 · 0 评论 -
leetcode:丑数总结(263,264,1201)
一:263:https://leetcode-cn.com/problems/ugly-number/题目:思路:首先要理解题意,并不是我刚开始的理解(以为必须所有的因子都只能是2,3,5,这样8就不可以,显然与题目给的案例矛盾),从而说明题意是,可以存在因子组合,只有2,3,5就是丑数,eg:8,8=2*2*2,这样就存在一个组合的因子只包含,2,3,5.->>因此就可以...原创 2020-04-04 09:59:52 · 399 阅读 · 0 评论 -
leetcode:dp-子序列汇总(300,334,1027,1048)代码有套路,总结模板
1:300:https://leetcode-cn.com/problems/longest-increasing-subsequence/题目:思路:两重for循环遍历,比较i之前的数字j(0<j<i),如果nums[j] < nums[i] 则比较dp[i],dp[j]+1的大小从而更新dp;代码:2:334:https://leetcode-c...原创 2020-04-04 11:14:07 · 699 阅读 · 0 评论
分享