来源: https://github.com/azl 397985856/leet code
解答介绍leetcode问题,记录自己解决leetcode问题的途径。
这个仓库现在被分成五个部分。
第一部分是对leetcode经典主题的分析,包括创意、关键点和具体代码实现。
第二部分是数据结构和算法的总结
第三部分是anki卡,用一定的方法将leetcode主题记录到anki中,方便大家记住。
第四部分是每天的问题
第五部分是计划,在此记录将来追加到上述三个部分的内容
只有熟悉基础数据结构和算法才能处理复杂的问题。
使用指南有关最近添加的部分,请稍后再说? 标记
关于最近更新的部分,是稍后吗? 标记
将来在这里更新anki卡
这里有一个思维导图,总结了互联网公司面试中经常考虑的问题类型,结合图片信息进行分析吧。
其中,算法主要包括:
基础技巧:分治、二分、贪婪
排序算法:快速排序、合并排序、计数排序
搜索算法:回溯、递归、深度优先搜索、广度优先搜索、双叉搜索树等
图论:最短路径,最小生成树
动态规划:背包问题,长子序列
数据结构主要包括:
数组链表:单/双向链表
堆栈和队列
散列表
堆:最大堆/最小堆
树与图:近期公众祖先,并检集
字符串:前缀树(词典树) /后缀树
3358 www.Sina.com/0042.trapping-rain-water :
浏览器中的堆栈:
回溯探测3360
0198.house-robber:
0454.4-sum-ii:
33558 www.Sina.com/top 100锁定查询(54/100 )。
topinterviewquestions(82/145 ) )。
3358 www.Sina.com/http://www.Sina.com /这里只是列举了代表性主题,并没有列举所有主题
33558 www.Sina.com/0020.valid parentheses
026.remove-duplicates-from-sorted-array
0088 .合并的阵列
0104 .最大深度-二进制树?
0121 .最佳时间-待办事项-与- sell stock
0122 .最佳时间-待办事项-与- sell-stock-ii
0125.valid-palindrome?
0136.single-number
0155.min-stack?
0167.two-sum-ii-input-array-is-sorted
0172.factorial-trailing-zeroes?
0169.majority-element
0190 .反转位
0191 .编号1位
0198.house-robber
0203 .移除链接列表元素
0206 .恢复链接列表
0219.contains-duplicate-ii
0226.invert-binary-tree
0263.ugly-number
0283.move-zeroes
0342 .电源关闭
0349.Intersection-of-two-arrays
0371.sum-of-two-integers
0575.distribute-candies
33558 www.Sina.com/0002.addtwonumbers
003.longestsubstringwithoutrepeatingcharacters
005.longest-palindromic-substring?
0011.container-with-most-water
00
15.3-sum0019. Remove Nth Node From End of List
0024. Swap Nodes In Pairs
0029.divide-two-integers ?
0039.combination-sum
0040.combination-sum-ii
0046.permutations
0047.permutations-ii
0048.rotate-image ?
0049.group-anagrams ?
0055.jump-game
0056.merge-intervals
0062.unique-paths
0073.set-matrix-zeroes
0075.sort-colors
0078.subsets
0086.partition-list
0090.subsets-ii
0091.decode-ways
0092.reverse-linked-list-ii
0094.binary-tree-inorder-traversal
0098.validate-binary-search-tree ?
0102.binary-tree-level-order-traversal
0103.binary-tree-zigzag-level-order-traversal
0131.palindrome-partitioning ?
0139.word-break
0144.binary-tree-preorder-traversal
0150.evaluate-reverse-polish-notation
0152.maximum-product-subarray
0199.binary-tree-right-side-view
0201.bitwise-and-of-numbers-range
0208.implement-trie-prefix-tree
0209.minimum-size-subarray-sum
0230.kth-smallest-element-in-a-bst
0236.lowest-common-ancestor-of-a-binary-tree?
0238.product-of-array-except-self
0240.search-a-2-d-matrix-ii
0279.perfect-squares
0309.best-time-to-buy-and-sell-stock-with-cooldown ?
0322.coin-change
0328.odd-even-linked-list
0334.increasing-triplet-subsequence
0365.water-and-jug-problem
0416.partition-equal-subset-sum
0445.add-two-numbers-ii
0454.4-sum-ii
0494.target-sum
0516.longest-palindromic-subsequence ?
0518.coin-change-2
0609.find-duplicate-file-in-system ?
0875.koko-eating-bananas
0877.stone-game
0887.super-egg-drop
0900.rle-iterator
1031.maximum-sum-of-two-non-overlapping-subarrays ?
困难难度0023.merge-k-sorted-lists
0032.longest-valid-parentheses ?
0042.trapping-rain-water
0128.longest-consecutive-sequence ?
0145.binary-tree-postorder-traversal
0146.lru-cache
0239.sliding-window-maximum
0295.find-median-from-data-stream ?
0301.remove-invalid-parentheses
数据结构与算法的总结数据结构(草稿)
基础算法(草稿)
二叉树的遍历
动态规划
哈夫曼编码和游程编码
布隆过滤器
字符串问题
anki 卡片Anki主要分为两个部分:一部分是关键点到题目的映射,另一部分是题目到思路,关键点,代码的映射。
全部卡片都在anki-card
使用方法:
anki - 文件 - 导入 - 下拉格式选择“打包的 anki集合”,然后选中你下载好的文件,确定即可。
更多关于anki使用方法的请查看anki官网
目前已更新卡片一览(仅列举正面):
二分法解决问题的关键点是什么,相关问题有哪些?
如何用栈的特点来简化操作, 涉及到的题目有哪些?
双指针问题的思路以及相关题目有哪些?
滑动窗口问题的思路以及相关题目有哪些?
回溯法解题的思路以及相关题目有哪些?
数论解决问题的关键点是什么,相关问题有哪些?
位运算解决问题的关键点是什么,相关问题有哪些?
已加入的题目有:#2 #3 #11
每日一题每日一题汇总
每日一题认领区
计划anki 卡片 完善
字符串类问题汇总