- 这个专栏是Hollis知识星球的朋友们练习算法的地方
- 所有题目来源是leetCode官方公开题库
- 算法解答部分的代码注释细致到每一行
- 希望能为初学者提供最大的便利去理解每道题目和解法
- 欢迎网友为本项目做贡献,提交你的解题方法和详细解释
- 2018年11月27日~2019年01月16日
- 2018年11月16日
LeetCode动态规划专题
2018年11月27日
https://leetcode-cn.com/problems/reverse-linked-list/
英文官方题解:
https://leetcode.com/articles/reverse-linked-list/
知识点:数组、链表
难度:简单
2018年11月28日
https://leetcode-cn.com/problems/swap-nodes-in-pairs/
无官方题解,网友最高票Java答案:
知识点:数组、链表
难度:中等
2018年11月29日
https://leetcode-cn.com/problems/linked-list-cycle/
官方题解:
https://leetcode-cn.com/articles/linked-list-cycle/
知识点:数组、链表
难度:简单
2018年11月30日
https://leetcode-cn.com/problems/linked-list-cycle-ii/
无官方题解,网友高票Java答案:
知识点:数组、链表
难度:中等
2018年12月01日
https://leetcode-cn.com/problems/reverse-nodes-in-k-group/
无官方题解,网友高票Java答案:
知识点:数组、链表
难度:困难
2018年12月02日
https://leetcode-cn.com/problems/valid-parentheses/
官方题解:
https://leetcode-cn.com/articles/valid-parentheses/
知识点:堆栈、队列
难度:简单
2018年12月03日
https://leetcode-cn.com/problems/implement-queue-using-stacks/
英文官方题解:
https://leetcode.com/articles/implement-queue-using-stacks/
知识点:堆栈、队列
难度:简单
2018年12月04日
https://leetcode-cn.com/problems/implement-stack-using-queues/
英文官方题解:
https://leetcode.com/articles/implement-stack-using-queues/
知识点:堆栈、队列
难度:简单
2018年12月05日
https://leetcode-cn.com/problems/backspace-string-compare/
英文官方题解:
https://leetcode.com/articles/backspace-string-compare/
知识点:堆栈、队列
难度:简单
2018年12月06日
https://leetcode-cn.com/problems/kth-largest-element-in-a-stream/
无官方题解,网友高票Java答案:
https://leetcode.com/problems/kth-largest-element-in-a-stream/discuss/149050/Java-Priority-Queue
知识点:优先队列
难度:简单
2018年12月07日
https://leetcode-cn.com/problems/top-k-frequent-words/
英文官方题解:
https://leetcode.com/articles/top-k-frequent-words/
知识点:优先队列
难度:中等
2018年12月08日
https://leetcode-cn.com/problems/sliding-window-maximum/
无官方题解,网友高票Java答案:
知识点:优先队列
难度:困难
2018年12月09日
https://leetcode-cn.com/problems/valid-anagram/
英文官方题解:
https://leetcode.com/articles/valid-anagram/
知识点:哈希表和集合
难度:简单
2018年12月10日
https://leetcode-cn.com/problems/two-sum/
官方题解:
https://leetcode-cn.com/articles/two-sum/
知识点:哈希表和集合
难度:简单
2018年12月11日
https://leetcode-cn.com/problems/3sum/
无官方题解,网友高票Java答案:
https://leetcode.com/problems/3sum/discuss/7380/Concise-O(N2)-Java-solution
知识点:哈希表和集合
难度:中等
2018年12月12日
https://leetcode-cn.com/problems/validate-binary-search-tree/
无官方题解,网友高票Java答案1:
无官方题解,网友高票Java答案2:
知识点:树、二叉树、二叉搜索树
难度:中等
2018年12月13日
https://leetcode-cn.com/problems/lowest-common-ancestor-of-a-binary-tree/
英文官方题解:
https://leetcode.com/articles/lowest-common-ancestor-of-a-binary-tree/
知识点:树、二叉树、二叉搜索树
难度:中等
2018年12月14日
https://leetcode-cn.com/problems/powx-n/
无官方题解,网友高票Java答案1:
https://leetcode.com/problems/powx-n/discuss/19546/Short-and-easy-to-understand-solution
无官方题解,网友高票Java答案2:
https://leetcode.com/problems/powx-n/discuss/19544/5-different-choices-when-talk-with-interviewers
知识点:递归、分治
难度:中等
2018年12月15日
https://leetcode-cn.com/problems/majority-element/
英文官方题解:
https://leetcode.com/articles/majority-element/
知识点:递归、分治
难度:简单
2018年12月16日
https://leetcode-cn.com/problems/maximum-subarray/
无官方题解,网友高票Java答案1:
https://leetcode.com/problems/maximum-subarray/discuss/20193/DP-solution-and-some-thoughts
无官方题解,网友高票Java答案2:
https://leetcode.com/problems/maximum-subarray/discuss/20211/Accepted-O(n)-solution-in-java
知识点:递归、分治、动态规划
难度:简单
2018年12月17日
https://leetcode-cn.com/problems/lemonade-change/
官方题解:
https://leetcode-cn.com/articles/lemonade-change/
知识点:贪心算法
难度:简单
2018年12月18日
https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-ii/
官方题解:
https://leetcode-cn.com/articles/best-time-to-buy-and-sell-stock-ii/
知识点:贪心算法
难度:简单
2018年12月19日
https://leetcode-cn.com/problems/assign-cookies/
无官方题解,网友高票Java答案1:
https://leetcode.com/problems/assign-cookies/discuss/93987/Simple-Greedy-Java-Solution
无官方题解,网友高票Java答案2:
知识点:贪心算法
难度:简单
2018年12月20日
https://leetcode-cn.com/problems/walking-robot-simulation/
英文官方题解:
https://leetcode.com/problems/walking-robot-simulation/solution/
知识点:贪心算法
难度:简单
2018年12月21日
https://leetcode-cn.com/problems/binary-tree-level-order-traversal/
无官方题解,网友高票Java答案1:
无官方题解,网友高票Java答案2:
知识点:广度优先搜索
难度:中等
2018年12月22日
https://leetcode-cn.com/problems/maximum-depth-of-binary-tree/
官方题解:
https://leetcode-cn.com/articles/maximum-depth-of-binary-tree/
知识点:深度优先搜索
难度:简单
2018年12月23日
https://leetcode-cn.com/problems/n-queens/
无官方题解,网友高票Java答案1:
https://leetcode.com/problems/n-queens/discuss/19805/My-easy-understanding-Java-Solution
无官方题解,网友高票Java答案2:
知识点:剪枝
难度:困难
2018年12月24日
https://leetcode-cn.com/problems/valid-sudoku/
无官方题解,网友高票Java答案1:
https://leetcode.com/problems/valid-sudoku/discuss/15472/Short%2BSimple-Java-using-Strings
无官方题解,网友高票Java答案2:
https://leetcode.com/problems/valid-sudoku/discuss/15450/Shared-my-concise-Java-code
知识点:剪枝
难度:中等
2018年12月25日
https://leetcode-cn.com/problems/sudoku-solver/
无官方题解,网友高票Java答案:
知识点:剪枝
难度:困难
2018年12月26日
https://leetcode-cn.com/problems/sqrtx/
无官方题解,网友高票Java答案:
https://leetcode.com/problems/sqrtx/discuss/25047/A-Binary-Search-Solution
知识点:二分查找
难度:简单
2018年12月27日
https://leetcode-cn.com/problems/valid-perfect-square/
无官方题解,网友高票Java答案:
知识点:二分查找
难度:简单
2018年12月28日
https://leetcode-cn.com/problems/implement-trie-prefix-tree/
英文官方题解:
https://leetcode.com/articles/implement-trie-prefix-tree/
知识点:字典树
难度:中等
2018年12月29日
https://leetcode-cn.com/problems/word-search-ii/
无官方题解,网友高票Java答案:
https://leetcode.com/problems/word-search-ii/discuss/59780/Java-15ms-Easiest-Solution-(100.00)
知识点:字典树
难度:困难
2018年12月30日
https://leetcode-cn.com/problems/number-of-1-bits/
英文官方题解:
https://leetcode.com/articles/number-1-bits/
知识点:位运算
难度:简单
2018年12月31日
https://leetcode-cn.com/problems/counting-bits/
无官方题解,网友高票Java答案:
https://leetcode.com/problems/counting-bits/discuss/79539/Three-Line-Java-Solution
知识点:位运算
难度:中等
2019年01月01日
https://leetcode-cn.com/problems/power-of-two/
无官方题解,网友高票Java答案:
https://leetcode.com/problems/power-of-two/discuss/63972/One-line-java-solution-using-bitCount
知识点:位运算
难度:简单
2019年01月02日
https://leetcode-cn.com/problems/n-queens-ii/
无官方题解,网友高票Java答案1:
https://leetcode.com/problems/n-queens-ii/discuss/20058/Accepted-Java-Solution
无官方题解,网友高票Java答案2:
https://leetcode.com/problems/n-queens-ii/discuss/20048/Easiest-Java-Solution-(1ms-98.22)
知识点:位运算
难度:困难
2019年01月03日
https://leetcode-cn.com/problems/climbing-stairs/
英文官方题解:
https://leetcode.com/articles/climbing-stairs/
知识点:动态规划
难度:简单
2019年01月04日
https://leetcode-cn.com/problems/triangle/
无官方题解,网友高票Java答案1:
https://leetcode.com/problems/triangle/discuss/38730/DP-Solution-for-Triangle
无官方题解,网友高票Java答案2:
https://leetcode.com/problems/triangle/discuss/38724/7-lines-neat-Java-Solution
知识点:动态规划
难度:中等
2019年01月05日
https://leetcode-cn.com/problems/maximum-product-subarray/
无官方题解,网友高票Java答案1:
无官方题解,网友高票Java答案2:
知识点:动态规划
难度:中等
2019年01月06日
https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-iii/
无官方题解,网友高票Java答案1:
无官方题解,网友高票Java答案2:
知识点:动态规划
难度:困难
2019年01月07日
https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock/
官方题解:
https://leetcode-cn.com/articles/best-time-to-buy-and-sell-stock/
知识点:动态规划
难度:简单
2019年01月08日
https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-iv/
无官方题解,网友高票Java答案:
知识点:动态规划
难度:困难
2019年01月09日
https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-with-cooldown/
无官方题解,网友高票Java答案:
知识点:动态规划
难度:中等
2019年01月10日
https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-with-transaction-fee/
英文官方题解:
https://leetcode.com/articles/best-time-to-buy-and-sell-stock-with-transaction-fee/
知识点:动态规划
难度:中等
2019年01月11日
https://leetcode-cn.com/problems/longest-increasing-subsequence/
英文官方题解:
https://leetcode.com/articles/longest-increasing-subsequence/
知识点:动态规划
难度:中等
2019年01月12日
https://leetcode-cn.com/problems/coin-change/
英文官方题解:
https://leetcode.com/articles/coin-change/
知识点:动态规划
难度:中等
2019年01月13日
https://leetcode-cn.com/problems/edit-distance/
英文官方题解:
https://leetcode.com/articles/edit-distance/
知识点:动态规划
难度:困难
2019年01月14日
https://leetcode-cn.com/problems/number-of-islands/
无官方题解,网友高票Java答案:
https://leetcode.com/problems/number-of-islands/discuss/56359/Very-concise-Java-AC-solution
知识点:并查集
难度:中等
2019年01月15日
https://leetcode-cn.com/problems/friend-circles/
无官方题解,网友高票Java答案1(DFS):
https://leetcode.com/problems/friend-circles/discuss/101338/Neat-DFS-java-solution
无官方题解,网友高票Java答案2(Union Find):
https://leetcode.com/problems/friend-circles/discuss/101336/Java-solution-Union-Find
知识点:并查集
难度:中等
2019年01月16日
https://leetcode-cn.com/problems/lru-cache/
无官方题解,网友高票Java答案:
知识点:LRU
难度:困难
2019年01月17日
https://leetcode-cn.com/problems/range-sum-query-immutable/
英文官方题解:
https://leetcode.com/articles/range-sum-query-immutable/
知识点:动态规划
难度:简单
2019年01月18日
https://leetcode-cn.com/problems/min-cost-climbing-stairs/
英文官方题解:
https://leetcode.com/articles/min-cost-climbing-stairs/
知识点:动态规划
难度:简单
2019年01月19日
https://leetcode-cn.com/problems/house-robber/
无官方题解,网友高票Java答案:
知识点:动态规划
难度:简单
2019年01月20日
https://leetcode-cn.com/problems/stone-game/
官方题解:
https://leetcode-cn.com/articles/stone-game/
知识点:动态规划
难度:中等
2019年01月21日
https://leetcode-cn.com/problems/minimum-path-sum/
无官方题解,网友高票Java答案:
知识点:动态规划
难度:中等
2019年01月22日
https://leetcode-cn.com/problems/unique-binary-search-trees/
英文官方题解:
https://leetcode.com/articles/unique-binary-search-trees/
知识点:动态规划
难度:中等
2019年01月23日
https://leetcode-cn.com/problems/arithmetic-slices/
英文官方题解:
https://leetcode.com/articles/arithmetic-slices/
知识点:动态规划
难度:中等
2019年01月24日
https://leetcode-cn.com/problems/minimum-ascii-delete-sum-for-two-strings/
英文官方题解:
https://leetcode.com/articles/minimum-ascii-delete-sum-for-two-strings/
知识点:动态规划
难度:中等
2019年01月25日
https://leetcode-cn.com/problems/unique-paths/
无官方题解,网友高票Java答案1:
https://leetcode.com/problems/unique-paths/discuss/22958/Math-solution-O(1)-space
无官方题解,网友高票Java答案2:
https://leetcode.com/problems/unique-paths/discuss/22953/Java-DP-solution-with-complexity-O(n*m)
知识点:动态规划
难度:中等
2019年01月26日
https://leetcode-cn.com/problems/shopping-offers/
英文官方题解:
https://leetcode.com/articles/shopping-offers/
知识点:动态规划
难度:中等
2019年01月27日
https://leetcode-cn.com/problems/palindromic-substrings/
英文官方题解:
https://leetcode.com/articles/palindromic-substrings/
知识点:动态规划
难度:中等
2019年01月28日
https://leetcode-cn.com/problems/minimum-falling-path-sum/
英文官方题解:
https://leetcode.com/articles/minimum-path-falling-sum/
知识点:动态规划
难度:中等
2019年01月29日
https://leetcode-cn.com/problems/integer-break/
无官方题解,网友高票Java答案:
知识点:动态规划
难度:中等
2019年01月30日
https://leetcode-cn.com/problems/unique-binary-search-trees-ii/
英文官方题解:
https://leetcode.com/articles/unique-binary-search-trees-ii/
知识点:动态规划
难度:中等
2019年01月31日
https://leetcode-cn.com/problems/delete-and-earn/
英文官方题解:
https://leetcode.com/articles/delete-and-earn/
知识点:动态规划
难度:中等
2019年02月01日
https://leetcode-cn.com/problems/maximum-length-of-pair-chain/
英文官方题解:
https://leetcode.com/articles/maximum-length-of-pair-chain/
知识点:动态规划
难度:中等
2019年02月02日
https://leetcode-cn.com/problems/largest-plus-sign/
英文官方题解:
https://leetcode.com/articles/largest-plus-sign/
知识点:动态规划
难度:中等
2019年02月03日
https://leetcode-cn.com/problems/perfect-squares/
无官方题解,网友高票Java答案:
知识点:动态规划
难度:中等
2019年02月04日
https://leetcode-cn.com/problems/is-subsequence/
无官方题解,网友高票Java答案:
知识点:动态规划
难度:中等
2019年02月05日
https://leetcode-cn.com/problems/combination-sum-iv/
无官方题解,网友高票Java答案:
知识点:动态规划
难度:中等
2019年02月06日
https://leetcode-cn.com/problems/predict-the-winner/
英文官方题解:
https://leetcode.com/articles/predict-the-winner/
知识点:动态规划
难度:中等
2019年02月07日
https://leetcode-cn.com/problems/count-numbers-with-unique-digits/
无官方题解,网友高票Java答案:
https://leetcode.com/problems/count-numbers-with-unique-digits/discuss/83041/JAVA-DP-O(1)-solution.
知识点:动态规划
难度:中等
2019年02月08日
https://leetcode-cn.com/problems/target-sum/
英文官方题解:
https://leetcode.com/articles/target-sum/
知识点:动态规划
难度:中等
2019年02月09日
https://leetcode-cn.com/problems/longest-palindromic-subsequence/
无官方题解,网友高票Java答案:
知识点:动态规划
难度:中等
2019年02月10日
https://leetcode-cn.com/problems/knight-probability-in-chessboard/
英文官方题解:
https://leetcode.com/articles/knight-probability-in-chessboard/
知识点:动态规划
难度:中等
2019年02月11日
https://leetcode-cn.com/problems/maximum-length-of-repeated-subarray/
英文官方题解:
https://leetcode.com/articles/maximum-length-of-repeated-subarray/
知识点:动态规划
难度:中等
2019年02月12日
https://leetcode-cn.com/problems/2-keys-keyboard/
英文官方题解:
https://leetcode.com/articles/2-keys-keyboard/
知识点:动态规划
难度:中等
2019年02月13日
https://leetcode-cn.com/problems/length-of-longest-fibonacci-subsequence/
官方题解:
https://leetcode-cn.com/articles/length-of-longest-fibonacci-subsequence/
知识点:动态规划
难度:中等
2019年02月14日
https://leetcode-cn.com/problems/word-break/
无官方题解,网友高票Java答案:
https://leetcode.com/problems/word-break/discuss/43790/Java-implementation-using-DP-in-two-ways
知识点:动态规划
难度:中等
2019年02月15日
https://leetcode-cn.com/problems/ugly-number-ii/
无官方题解,网友高票Java答案:
https://leetcode.com/problems/ugly-number-ii/discuss/69362/O(n)-Java-solution
知识点:动态规划
难度:中等
2019年02月16日
https://leetcode-cn.com/problems/partition-equal-subset-sum/
无官方题解,网友高票Java答案1:
无官方题解,网友高票Java答案2:
知识点:动态规划
难度:中等
2019年02月17日
https://leetcode-cn.com/problems/range-sum-query-2d-immutable/
英文无官方题解:
https://leetcode.com/articles/range-sum-query-2d-immutable/
知识点:动态规划
难度:中等
2019年02月18日
https://leetcode-cn.com/problems/maximal-square/
英文官方题解:
https://leetcode.com/articles/maximal-square/
知识点:动态规划
难度:中等
2019年02月19日
https://leetcode-cn.com/problems/partition-to-k-equal-sum-subsets/
英文官方题解:
https://leetcode.com/articles/partition-to-k-equal-sum-subsets/
知识点:动态规划
难度:中等
2019年02月20日
https://leetcode-cn.com/problems/ones-and-zeroes/
无官方题解,网友高票Java答案1:
https://leetcode.com/problems/ones-and-zeroes/discuss/95807/0-1-knapsack-detailed-explanation.
无官方题解,网友高票Java答案2:
https://leetcode.com/problems/ones-and-zeroes/discuss/95811/Java-Iterative-DP-Solution-O(mn)-Space
知识点:动态规划
难度:中等
2019年02月21日
https://leetcode-cn.com/problems/push-dominoes/
无官方题解,网友高票Java答案:
https://leetcode.com/articles/push-dominoes/
知识点:动态规划
难度:中等
2019年02月22日
https://leetcode-cn.com/problems/domino-and-tromino-tiling/
无官方题解,网友高票Java答案:
知识点:动态规划
难度:中等
2019年02月23日
https://leetcode-cn.com/problems/largest-sum-of-averages/
英文官方题解:
https://leetcode.com/articles/largest-sum-of-averages/
知识点:动态规划
难度:中等
2019年02月24日
https://leetcode-cn.com/problems/wiggle-subsequence/
英文官方题解:
https://leetcode.com/articles/wiggle-subsequence/
知识点:动态规划
难度:中等
2019年02月25日
https://leetcode-cn.com/problems/minimum-swaps-to-make-sequences-increasing/
英文官方题解:
https://leetcode.com/articles/minimum-swaps-to-make-sequences-increasing/
知识点:动态规划
难度:中等
2019年02月26日
https://leetcode-cn.com/problems/soup-servings/
英文官方题解:
https://leetcode.com/articles/soup-servings/
知识点:动态规划
难度:中等
2019年02月27日
https://leetcode-cn.com/problems/unique-paths-ii/
英文官方题解:
https://leetcode.com/articles/unique-paths-ii/
知识点:动态规划
难度:中等
2019年02月28日
https://leetcode-cn.com/problems/house-robber-ii/
无官方题解,网友高票Java答案:
知识点:动态规划
难度:中等
2019年03月01日
https://leetcode-cn.com/problems/largest-divisible-subset/
无官方题解,网友高票Java答案:
知识点:动态规划
难度:中等
2019年03月02日
https://leetcode-cn.com/problems/unique-substrings-in-wraparound-string/
无官方题解,网友高票Java答案:
知识点:动态规划
难度:中等
2019年03月03日
https://leetcode-cn.com/problems/can-i-win/
无官方题解,网友高票Java答案1:
无官方题解,网友高票Java答案2:
知识点:动态规划
难度:中等
2019年03月04日
https://leetcode-cn.com/problems/knight-dialer/
英文官方题解:
https://leetcode.com/articles/knight-dialer/
知识点:动态规划
难度:中等
2019年03月05日
https://leetcode-cn.com/problems/cheapest-flights-within-k-stops/
无官方题解,网友高票Java答案1:
无官方题解,网友高票Java答案2:
知识点:动态规划
难度:中等
2019年03月06日
https://leetcode-cn.com/problems/out-of-boundary-paths/
英文官方题解:
https://leetcode.com/articles/out-of-boundary-paths/
知识点:动态规划
难度:中等
2019年03月07日
https://leetcode-cn.com/problems/numbers-with-same-consecutive-differences/submissions/
英文官方题解:
https://leetcode.com/articles/numbers-with-same-consecutive-differences/
知识点:动态规划
难度:中等
2019年03月08日
https://leetcode-cn.com/problems/number-of-longest-increasing-subsequence/
英文官方题解:
https://leetcode.com/articles/number-of-longest-increasing-subsequence/
知识点:动态规划
难度:中等
2019年03月09日
https://leetcode-cn.com/problems/guess-number-higher-or-lower-ii/
无官方题解,网友高票Java答案:
知识点:动态规划
难度:中等
2019年03月10日
https://leetcode-cn.com/problems/longest-palindromic-substring/
英文官方题解:
https://leetcode.com/articles/longest-palindromic-substring/
知识点:动态规划
难度:中等