LeetCode

以下带有 🔥 为LeetCode Clean Book 经典题目。

Bit Manipulation

🔥[Easy]single-number c XOR

🔥[Medium]single-number-ii c XOR

[Easy]sum-of-two-integers c overflow

[Medium]counting-bits c++

[Medium]bitwise-and-of-numbers-range 数字范围与 c++

[Easy]reverse-bits 数字范围相与 c++

Integer

🔥[Easy]reverse-integer golang overflow

🔥[Easy]palindrome-number golang 2019-3-18

[Easy]roman-to-integer - 罗马转阿拉伯 golang 2019-3-18

🔥[Medium]integer-to-roman - 阿拉伯转罗马 c++ 2019-4-16

[Easy]fibonacci-number - 斐波那契数列 c++ 2019-4-16 dp

[Easy]hamming-distance - 汉明距离 c++ 2019-5-7

[Easy]number-of-1-bits - 数字二进制位1的数量 c++ 2019-5-7

[Easy]happy-number - 快乐数字 c++ hashtable 2019-5-15

[Easy]guess-number-higher-or-lower - 猜数游戏 c++ binary search 2019-5-15

[Easy]first-bad-version - 第一个坏版本 c++ binary search 2019-5-16

[Easy]complement-of-base-10-integer - 2进制翻转 c++ binary 2019-5-28

[Easy]power-of-two - 2的幂次方 c++ 2019-5-28

[Easy]power-of-three - 3的幂次方 c++ 2019-5-28

[Easy]power-of-four - 4的幂次方 c++ 2019-5-28

[Easy]number-complement - 数字的补码 c++ 2019-6-14

[Easy]binary-number-with-alternating-bits - 二进制是否存在相邻bit c++ 2019-6-14

Math

[Easy]ugly-number c

[Easy]ugly-number-ii c

[Easy]divisor-game c

[Easy]count-primes - 计算素数的数量 c

[Easy]sqrtx - 对X开方 c binary search Newton's Method

[Easy]valid-perfect-square - 有效的完全平方数 c binary search

String

[Medium]length-of-last-word c

🔥[Easy]search-insert-position golang 2 pointer

🔥 [Easy]implement-strstr c KMP

🔥 [Medium]longest-substring-without-repeating-characters golang sliding window

[Medium]letter-combinations-of-a-phone-number c++ recursive 2019-3-26

[Easy]reverse-string c++ 2019-3-26 reverse

[Easy]reverse-string-ii c++ 2019-6-14

[Easy]reverse-words-in-a-string-iii - 翻转字符串III c++ 2019-6-13

[Easy]reverse-only-letters c++ 2019-3-26 reverse

🔥[Medium]reverse-words-in-a-string c++ 2019-4-11 reverse

[Medium]restore-ip-addresses c++ 2019-3-25

[Easy]add-binary c++ 2019-3-27

[Easy]add-strings c++ 2019-3-27

[Easy]detect-capital c++ 2019-3-27

[Easy]valid-parentheses c++ stack 2019-4-3

🔥 [Easy]valid-palindrome - 回文字符串 c++ 2 pointer 2019-4-8

🔥 [Medium]string-to-integer-atoi c++ overflow atoi

[Easy]jewels-and-stones c++ hash 2019-5-29

[Easy]find-the-difference - 找到两个字符串的不同 c++ counter 2019-5-26

[Medium]decode-string - 解压字符串 c++ compress 2019-6-4

[Easy]backspace-string-compare - 比较可回退字符串 c++ 2019-6-4

[Easy]unique-email-addresses - 唯一的邮件地址 c++ 2019-6-5

[Easy]to-lower-case - 实现lower-case c++ 2019-6-5

[Easy]read-n-characters-given-read4 - 使用read4读取buffer c++ 2019-6-5

[Hard]read-n-characters-given-read4-ii-call-multiple-times - 多次使用read4读取buffer c++ 2019-6-6

[Easy]unique-morse-code-words - 唯一的摩斯密码 c++ hashtable 2019-6-6

[Easy]student-attendance-record-i - 学生的出席记录 c++ 2019-6-6

[Medium]camelcase-matching - 驼峰匹配 c++ 2019-6-7

[Easy]excel-sheet-column-number - Excel行转数字 c++ 2019-6-10

[Easy]excel-sheet-column-title - 数字转Excel行 c++ 2019-6-11

[Easy]most-common-word - 出现最多次的单词 c++ 2019-6-13

[Easy]robot-return-to-origin - 机器人回到原点 c++ 2019-6-14

[Easy]find-common-characters - 找到公共字母 c++ 2019-6-17

[Easy]intersection-of-two-arrays - 两个数组的共同点 c++ hashtable 2019-6-17

[Easy]intersection-of-two-arrays-ii - 两个数组的共同点 c++ hashtable 2019-6-17

[Easy]isomorphic-strings - 两个相同模式的字符串 c++ hashtable 2019-6-25

[Easy]uncommon-words-from-two-sentences - 两个句子的非公共单词 c++ hashtable 2019-6-25

[Easy]word-pattern - 单词匹配 c++ hashtable 2019-6-25

[Easy]defanging-an-ip-address - 拔掉IP地址的点 c++ 2019-7-8

[Medium]custom-sort-string - 个性化排序字符串 c++ 2019-7-8

[Easy]number-of-segments-in-a-string - 字符串中片段的数量 c++ 2019-7-9

[Medium]find-and-replace-in-string - 按照索引替换字符串 c++ 2019-7-9

[Medium]find-and-replace-pattern - 按照模式进行替换 c++ hashtable 2019-7-9

[Easy]subdomain-visit-count - 按照模式进行替换 c++ hashtable 2019-7-11

[Easy]di-string-match - 增长-降序匹配 c++ 2019-8-7

[Easy]keyboard-row - 键盘行 c++ 2019-8-8

[Easy]longest-word-in-dictionary - 字典中最长的单词 c++ 2019-8-9

[Medium]zigzag-conversion - 折叠式遍历字符串 c++ 2019-8-9

[easy]is-subsequence - 是否是子序列 c++ 2020-1-27

[Medium]sort-characters-by-frequency - 按频率排序字母 c++ sort 2020-3-10

[Medium]search-suggestions-system - 搜索建议系统 c++ string match trie 2021-6-6

[Easy]long-pressed-name - 长按键盘的名字 c++ pointer 2021-6-6

Array

🔥 [Easy]two-sum c++ hashtable

[Easy]two-sum-less-than-k - 两数之和小于K的最大值 c++ 2 pointer 2020-2-23*

🔥 [Easy]two-sum-ii-input-array-is-sorted c++ 2 pointer

[Easy]two-sum-iv-input-is-a-bst c++ 2 pointer bst

🔥 [Easy]two-sum-iii-data-structure-design c++ 2 pointer design

[Medium]3sum php 2 pointer

[Medium]3sum-closest php 2 pointer

[Medium]4sum php 2 pointer

[Medium]search-in-rotated-sorted-array golang

[Medium]search-in-rotated-sorted-array-ii golang 2 pointer

[Medium]find-first-and-last-element-in-sorted-array golang 2 pointer

[Easy]remove-duplicates-from-sorted-array c

[Easy]best-time-to-buy-and-sell-stock c++ 2020.4.6

[Easy]best-time-to-buy-and-sell-stock-ii c++ 2020.4.6

[Easy]longest-common-prefix golang overflow

[Medium]rotate-image c matrix

[Easy]flipping-an-image - 翻转画布 c++ matrix 2019-07-16

🔥[Medium]spiral-matrix - 螺旋遍历矩阵 c matrix

[Medium]spiral-matrix-ii - 构造螺旋矩阵 c matrix

[Medium]search-a-2d-matrix c++ matrix 2 pointer

[Medium]search-a-2d-matrix-ii c++ matrix 2 pointer

[Medium]find-the-duplicate-number - 寻找数组的重复数 c cycle

[Medium]array-nesting - 寻找数组中最大的环元素个数 c++ cycle 2019-4-2

[Easy]merge-sorted-array c++

[Easy]pascals-triangle c++

[Easy]pascals-triangle-ii c++

[Easy]next-greater-element-i - 找到右侧第一个大于本身的元素 c++ 2019-4-2

[Medium]next-greater-element-ii - 找到右侧第一个大于本身的元素 c++ stack 2019-4-2

[Medium]next-greater-element-iii - 找到大于自己的最大数 c++ 2019-4-3

🔥[Easy]plus-one - 数组末尾加一 c++ over 2019-4-3

[Easy]add-to-array-form-of-integer - 计算数组和数字的加和 c++ add-nums 2019-4-3

[Medium]multiply-strings - 计算字符串相乘 c++ add-nums 2019-4-3

[Easy]baseball-game - 计分 c++ accumulate 2019-4-4

[Hard]median-of-two-sorted-arrays - 计算两个排序数组的中值 c++ median 2019-4-8

[Medium]longest-arithmetic-sequence - 最长的排序序列 c++ 2019-4-13 dp

[Medium]find-minimum-in-rotated-sorted-array c++ 2019-4-17

[Hard]find-minimum-in-rotated-sorted-array-ii c++ 2019-4-17

[Easy]move-zeros - 移动0至末尾 c++ 2019-4-29

[Easy]find-pivot-index - 计算中值 c++ 2019-5-8 left right

[Medium]product-of-array-except-self - 计算除自己以外的乘积 c++ 2019-4-29 left right

[Medium]jump-game - 跳步游戏 c++ 2019-4-30 greedy

[Hard]jump-game-ii - 跳步游戏II c++ 2019-5-1 greedy

[Easy]majority-element - 求众数 c++ hashtable 摩尔投票算法 2019-5-5

[Medium]majority-element-ii - 求众数II c++ 摩尔投票算法 2019-5-5

[Medium]kth-largest-element-in-an-array - 第K大的元素 c++ sort partial_sort heap 2019-5-7

[Medium]top-k-frequent-elements - top-k个高频数字 c++ multimap 2019-5-30

[Medium]top-k-frequent-words - top-k个高频词 c++ multimap 2019-5-31

[Easy]third-maximum-number - 第3大的元素 c++ sort unique set 2019-5-7

[Medium]subarray-sum-equals-k - 子数组和为K的数量 c++ presum hashtable 2019-5-8

[Medium]subarray-sums-divisible-by-k - 子数组之和可整除K的数量 c++ presum hashtable 2019-5-8

[Medium]contiguous-array - binary数组0和1出现次数一样的子数组长度 c++ presum hashtable 2020-4-13

[Medium]binary-subarrays-with-sum - 子数组和为K的数量 c++ 2019-7-3

[Medium]maximum-size-subarray-sum-equals-k - 子数组和为K的长度 c++ presum hashtable 2019-6-4

[Medium]find-all-numbers-disappeared-in-an-array - 寻找消失的数字 c++ 2019-5-8

[Hard]first-missing-positive - 第一个消失的正数 c++ 2019-5-9 swap

[Medium]combination-sum - 组合之和 c++ combination 2019-5-9

[Medium]combination-sum-ii - 组合之和II c++ combination 2019-5-9

[Medium]combinations - 组合项 c++ combination 2019-5-10

[Medium]permutations - 全排列 c++ permutations 2019-5-14

[Medium]permutations-ii - 全排列II c++ permutations 2019-5-14

[Medium]next-permutations - 下一个全排列 c++ permutations 2019-5-14

[Medium]previous-permutation-with-one-swap - 上一个全排列 c++ permutations 2019-5-26

[Easy]letter-case-permutation - 大小写字母全排列 c++ permutations 2019-6-26

[Medium]permutation-sequence - 第K个全排列 c++ n! 2019-5-15

[Medium]letter-tile-possibilities - 字母组合的可能性 c++ permutation 2019-8-5

[Medium]subsets - 子序列 c++ 2019-5-29

[Medium]subsets-ii - 子序列II c++ 2019-5-29

[Easy]arranging-coins - 排列硬币 c++ n! 2019-5-15

[Easy]robot-bounded-in-circle - 机器人是否能回到原点 c++ 2019-5-12

[Medium]merge-intervals - 合并重叠数组 c++ 2019-5-21

[Easy]meeting-rooms - 会议室 c++ minheap 2019-5-21

[Medium]meeting-rooms-ii - 会议室 c++ map minheap 2019-5-21

[Easy]height-checker c++ 2019-5-26

[Easy]squares-of-a-sorted-array c++ 2019-5-27

[Medium]sort-transformed-array c++ palabalo 2019-5-27

[Easy]contains-duplicate c++ hashtable 2019-5-28

[Easy]contains-duplicate-ii c++ hashtable 2019-5-28

[Medium]contains-duplicate-iii c++ map 2019-5-28

[Medium]find-all-duplicates-in-an-array - 找到数组中所有重复的数字 c++ 2019-5-29

[Easy]shortest-unsorted-continuous-subarray - 未排序的连续子数组 c++ 2019-5-29

[Easy]island-perimeter - 计算岛的周长 c++ 2019-6-13

[Easy]sort-array-by-parity - 按奇偶排序数组 c++ 2019-6-17

[Easy]sort-array-by-parity-ii - 按奇偶排序数组II c++ 2pointer 2019-6-17

[Easy]largest-number-at-least-twice-of-others - 最大数比其他数大二倍 c++ map 2019-6-17

[Easy]maximize-distance-to-closest-person - 座位距离最远的位置 c++ 2019-6-18

[Medium]exam-room - 考试房间 c++ set 2019-6-18

[Hard]insert-interval - 插入区间 c++ map range 2019-6-19

[Medium]interval-list-intersections - 两个区间的交集 c++ range 2019-6-20

[Medium]summary-ranges - 数字范围摘要 c++ 2019-6-19

[Medium]missing-ranges - 消失的区间 c++ 2019-6-19

[Easy]max-consecutive-ones - 最大连续1的长度 c++ 2019-6-20

[Medium]max-consecutive-ones-ii - 最大连续1的长度II c++ 2019-6-20

[Medium]max-consecutive-ones-iii - 最大连续1的长度III c++ sliding window 2019-6-20

[Medium]longest-repeating-character-replacement - 可替换K个字母的最大连续相同字母的长度 c++ sliding window 2019-6-20

[Easy]maximum-average-subarray-i - 最大子数组平均数 c++ sliding window 2019-8-5

[Medium]container-with-most-water - 容纳最大的水 c++ 2 pointer 2019-6-21

[Hard]trapping-rain-water - 收集雨水 c++ monotone stack 2 pointer 2019-6-21

[Hard]largest-rectangle-in-histogram - 最大长方形面积 c++ monotone stack dp 2019-6-26

[Medium]word-search - 单词搜索 c++ DFS 2019-6-21

[Medium]max-increase-to-keep-city-skyline - 增长城市天际线 c++ 2019-6-27

[Easy]k-diff-pairs-in-an-array - 计算有多少不同的pair c++ hashtable 2019-6-27

[Medium]longest-mountain-in-array - 最长的山 c++ 2019-6-27

[Medium]subarray-product-less-than-k - 子数组的积小于K c++ slding window 2019-6-28

[Medium]rectangle-area - 长方形面积(除了重叠) c++ overlap 2019-6-28

[Easy]rectangle-overlap - 长方形是否重叠 c++ overlap 2019-6-28

[Medium]sort-an-array - 对数组排序 c++ quick heap bubble insertion 2019-7-1

[Medium]sort-colors - 排序颜色 c++ counter multi quicksort 2019-7-30

[Easy]sort-array-by-parity - 偶数在前,奇数在后 c++ 2019-7-3

[Easy]n-repeated-element-in-size-2n-array - 2N大小的数组中出现N次的数字 c++ 2019-7-11

[Medium]queue-reconstruction-by-height - 根据身高重建队列 c++ 2019-7-15

[Medium]daily-temperatures - 每日天气 c++ hashtable monotone stack 2019-7-15

[Easy]relative-sort-array - 按相关性排序数组 c++ 2019-7-17

[Hard]maximum-gap - 最大间距 c++ bucketsort 2019-7-17

[Medium]distant-barcodes - 遥远的二维码 c++ priority_queue 2019-7-19

[Easy]peak-index-in-a-mountain-array - 山顶的位置 c++ 2019-8-5

[Easy]unique-number-of-occurrences - 数字出现的次数是否唯一 c++ HashTable 2019-10-3

[Easy]reorder-data-in-log-files - 排序日志文件 c++ sort 2020-2-13

[Medium]k-closest-points-to-origin - k个最接近原点的坐标 c++ priority_queue 2020-2-13

[Medium]shuffle-an-array - 打乱数组 c++ rand 2020-2-15

[Medium]minimum-cost-to-connect-sticks - 连接sticks的最小开销 c++ priority_queue 2020-2-21

[Easy]how-many-numbers-are-smaller-than-the-current-number - 小于当前值的数量 c++ hashtable 2020-2-29

[Medium]rank-teams-by-votes - 按照选票排队 c++ sort 2020-2-29

Slide Window

[Easy]valid-anagram - 是否是相同乱序字符串 c++ hash slide window 2019-4-30

[Easy]find-all-anagrams-in-a-string - 找到所有乱序字符串 c++ hash slide window 2019-4-30

[Medium]group-anagrams - 对乱序字符串分组 c++ hash slide window 2019-5-7

[Medium]grumpy-bookstore-owner - 坏脾气的书店老板 c++ slide window 2019-5-26

[Medium]minimum-size-subarray-sum - 和为sum的最小连续子数组 c++ slide window 2019-6-4

[Hard]sliding-window-median - 滑动窗口的中位数 c++ slide window 2019-6-6

[Medium]number-of-substrings-containing-all-three-characters - 包含a/b/c三个字母的所有子串数量 c++ slide window 2020-3-2

[Medium]find-k-length-substrings-with-no-repeated-characters - 非重复K个字符子串的数量 c++ slide window 2020-3-2

Linked-List

[Medium]rotate-list c

🔥[Easy]merge-two-sorted-lists c

🔥[Hard]merge-k-sorted-lists c 分治 最小堆(优先队列)

[Easy]remove-duplicates-from-sorted-array c

🔥[Medium]add-two-numbers c add-num over

[Medium]plus-one-linked-list 链表末尾加1 c++ over 2019-6-10

[Medium]add-two-numbers-ii c medium add-num

[Easy]reverse-linked-list c

[Medium]reverse-linked-list-ii c

[Medium]remove-duplicates-from-sorted-list-ii c

[Easy]delete-node-in-a-linked-list golang

[Easy]linked-list-cycle c 2 pointer

[Medium]linked-list-cycle-ii c 2 pointer(fast&&slow)

🔥[Medium]swap-nodes-in-pairs c

[Hard]reverse-nodes-in-k-group c hard

[Easy]middle-of-the-linked-list c 2 pointer easy

[Easy]remove-linked-list-elements c 2 pointer easy

[Medium]remove-nth-node-from-end-of-list c 2019-3-17

[Easy]palindrome-linked-list c slower faster

[Easy]design-linked-list c

[Medium]odd-even-linked-list c

[Medium]insertion-sort-list c insertion sort

[Medium]partition-list c 2019-3-19

[Medium]reorder-list c slow faster 2019-3-20

[Medium]split-linked-list-in-parts c 2019-3-21

[Medium]linked-list-components c++ 2019-3-21

[Easy]intersection-of-two-linked-lists c++ 2019-3-21

[Medium]flatten-a-multilevel-doubly-linked-list c++ 2019-3-22

🔥[Medium]copy-list-with-random-pointer c++ 2019-3-22

[Medium]sort-list c++ merge sort

[Medium]next-greater-node-in-linked-list - 链表中第一个大于当前节点的值 c++ stack 2019-5-24

[Medium]insert-into-a-cyclic-sorted-list - 排序成环链表插值 c++ 2019-6-10

[Medium]linked-list-random-node - 链表随机值 c++ 2019-6-14

Stack

[Easy]score-of-parentheses c

[Easy]implement-stack-using-queues c++ 2019-4-1

🔥[Easy]min-stack c++ 2019-4-17

🔥[Medium]evaluate-reverse-polish-notation c++ 2019-4-17

Queue

[Easy]implement-queue-using-stacks c++ 2019-4-1

Tree

[Easy]same-tree - 是否相同的树 c recursive

[Easy]subtree-of-another-tree - 是否是子树 c recursive

[Easy]symmetric-tree - 是否是对称的树 c++ recursive 2019-4-5

🔥[Easy]balanced-binary-tree - 是否是完全二叉树 c++ level 2019-4-9

🔥[Easy]maximum-depth-of-binary-tree - 二叉树的最大深度 c++ recursive

🔥[Easy]minimum-depth-of-binary-tree - 二叉树的最小深度 c++ recursive bfs

[Easy]maximum-depth-of-n-ary-tree - 数的最大深度 c++

[Medium]binary-tree-level-order-traversal c++

[Easy]binary-tree-level-order-traversal-ii c++ reverse

[Easy]average-of-levels-in-binary-tree 层序遍历每层平均数 c++ overflow

[Easy]cousins-in-binary-tree - cousin关系的二叉树 c++

[Easy]n-ary-tree-level-order-traversal - 层序遍历树 c++ bfs

[Medium]find-largest-value-in-each-tree-row.md - 提取二叉树每层最大值 c++ bfs

[Medium]binary-tree-zigzag-level-order-traversal - 从左到右从右到左交替层序遍历 c++ bfs

[Easy]search-in-a-binary-search-tree - 搜索二叉树 c++ 2019-3-29

[Easy]univalued-binary-tree - 二叉树所有节点值是否都一样 c++ 2019-3-29

[Medium]flatten-binary-tree-to-linked-list - 打平二叉树为链表 c++ preorder 2019-3-29

[Medium]populating-next-right-pointers-in-each-node - 使二叉树每层成链 c++ 2019-3-30

[Medium]binary-tree-right-side-view - 提取二叉树每层最右节点 c++ 2019-3-31

[Medium]binary-tree-inorder-traversal - 中序遍历二叉树 c++ inorder 2019-3-31

[Medium]binary-tree-preorder-traversal - 先序遍历二叉树 c++ preorder 2019-3-31

[Easy]n-ary-tree-preorder-traversal - 先序遍历树 c++ preorder 2019-3-31

[Easy]n-ary-tree-postorder-traversal - 后续遍历树 c++ postorder 2019-3-31

[Hard]binary-tree-postorder-traversal - 后续遍历二叉树 c++ postorder 2019-4-1

[Easy]increasing-order-search-tree - 中序重新处理树 c++ inorder 2019-4-9

[Easy]minimum-distance-between-bst-nodes - 寻找二叉搜索树节点间最小差值 c++ 2019-3-31

🔥[Medium]validate-binary-search-tree - 是否是合法的二叉搜索树 c++ 2019-4-1

[Easy]find-mode-in-bianry-search-tree - 寻找二叉搜索树的众数 c++ 2019-4-1

[Easy]second-minimum-node-in-a-binary-tree - 寻找二叉树中倒数第二小的数 c++ 2019-4-5

[Easy]construct-string-from-binary-tree - 二叉树转换包含括号的字符串 c++ 2019-4-1

[Medium]binary-search-tree-iterator - BST迭代器 c++ 2019-4-1

[Easy]binary-tree-paths c++ tree preorder 2019-4-9

[Medium]smallest-string-starting-from-leaf 最小的从叶子到根节点路径 c++ 2019-4-10

[Easy]path-sum c++ 2019-4-5

[Medium]path-sum-ii c++ 2019-4-5

[Easy]path-sum-iii c++ 2019-4-6

[Medium]sum-root-to-leaf-numbers c++ 2019-4-6

[Easy]sum-of-root-to-leaf-binary-numbers c++ 2019-4-9

[Hard]binary-tree-maximum-path-sum c++ 2019-4-15 pathsum

[Medium]binary-tree-pruning c++ tree operation 2019-4-9

[Easy]lowest-common-ancestor-of-a-binary-search-tree c++ LCA BST 2019-4-10

[Medium]lowest-common-ancestor-of-a-binary-tree c++ LCA BST 2019-4-10

[Medium]maximum-difference-between-node-and-ancestor c++ 2019-4-14

🔥:[Medium]convert-sorted-list-to-binary-search-tree c recursive

🔥[Easy]convert-sorted-array-to-binary-search-tree c recursive

[Easy]merge-two-binary-trees c++ merge 2019-4-30

[Easy]invert-binary-tree c++ invert 2019-4-30

[Easy]diameter-of-binary-tree c++ height 2019-5-2

[Medium]convert-binary-search-tree-to-sorted-doubly-linked-list c++ height 2019-5-2

[Medium]binary-search-tree-to-greater-sum-tree c++ greater 2019-5-5

[Easy]convert-bst-to-greater-tree c++ greater 2019-5-6

[Medium]find-leaves-of-binary-tree - 寻找叶子节点 c++ leaves 2019-5-6

[Medium]find-bottom-left-tree-value - 寻找左下节点值 c++ 2019-5-7

[Medium]populating-next-right-pointers-in-each-node-ii - 层序连接二叉树 c++ bfs 2019-6-7

[Easy]range-sum-of-bst - 二叉树范围内的和 c++ 2019-6-27

[Easy]minimum-absolute-difference-in-bst - 二叉搜索树相邻两值的最小值 c++ 2019-6-27

[Medium]delete-nodes-and-return-forest - 删除树的节点并收集出来 c++ 2019-7-7

[Medium]binary-tree-vertical-order-traversal - 竖直遍历二叉树 c++ BFS 2020-2-15

[Medium]linked-list-in-binary-tree - 二叉树中的链表 c++ preorder 2020-3-1

[Medium]validate-binary-tree-nodes - 是否是合法的二叉树 c++ 2020-3-1

[Medium]maximum-level-sum-of-a-binary-tree - 二叉树最大level的和的level c++ BFS 2020-3-1

[Medium]inorder-successor-in-bst - 二叉搜索树中序遍历的successor c++ stack inorder BFS 2020-3-10

graph

[Medium]number-of-islands - 岛的数量 c++ DFS BFS 2019-6-24

[Medium]number-of-distinct-islands - 唯一形状岛的数量 c++ DFS Set 2020-2-15

[Easy]flood-fill - 填充颜色 c++ BFS 2019-6-24

[Medium]max-area-of-island - 最大的岛的面积 c++ DFS 2019-6-24

[Medium]surrounded-regions - 被包围的区域 c++ DFS 2019-6-24

[Medium]keys-and-rooms - 钥匙和房间 c++ DFS 2019-7-17

[Medium]all-paths-from-source-to-target - 从头到尾所有的路径 c++ dfs 2019-7-22

[Medium]shortest-path-in-binary-matrix - 最短路径 c++ bfs 2019-7-26

[Medium]the-maze - 迷宫 c++ dfs 2020-2-25

[Medium]battleships-in-a-board - 列队中的战舰 c++ bfs 2020-2-25

dynamic programing

🔥[Easy]climbing-stairs c++ 2019-4-18

[Easy]min-cost-climbing-stairs c++ 2019-5-13

🔥[Medium]unique-paths c++ 2019-4-18

🔥[Medium]unique-paths-ii c++ 2019-4-18

🔥[Easy]maximum-subarray c++ 2019-4-18

🔥[Medium]maximum-product-subarray c++ 2019-4-19

[Easy]house-robber - 打家劫舍 c++ 2019-4-19

[Medium]house-robber-ii - 打家劫舍II c++ 2019-4-19

[Medium]house-robber-iii - 打家劫舍III c++ 2019-4-20

[Medium]minimum-path-sum - 路径最小值 c++ 2019-4-19

[Medium]longest-increasing-subsequence - 最长递增子序列 c++ 2019-5-10

[Medium]partition-array-for-maximum-sum - 分解数组的最大值 c++ 2019-7-7

design

[Easy]two-sum-iii-data-structure-design - two-sum设计 c++ 2019-4-20

[Medium]flatten-nested-list-iterator - 打平复杂列表 c++ 2019-4-2

[Medium]peeking-iterator - 顶端迭代器 c++ 2019-4-26 iterator

[Medium]zigzag-iterator - 遍历交叉数组 c++ design array 2019-4-26

[Medium]implement-trie-prefix-tree - Trie树 c++ trie 字典树 前缀树 2019-4-28

[Easy]kth-largest-element-in-a-stream - 第K个最大的数 c++ kth heap 2019-5-7

[Hard]lru-cahce - 最少使用缓存器 c++ list<pair<int,int>> unordered_map 2019-5-22

[Easy]design-compressed-string-iterator - 压缩字符串迭代器 c++ compress 2019-5-23

[Easy]logger-rate-limiter - 日志限流器 c++ hashtable 2019-6-4

[Easy]range-sum-query-immutable - 可变数组和区间 c++ presum 2019-6-4

[Medium]range-sum-query-mutable - 可变数组和区间 c++ presum group 2019-6-5

[Medium]range-sum-query-2d-immutable - 可变2维数组和区间 c++ presum 2019-6-5

[Hard]range-sum-query-2d-mutable - 可变2维数组和区间HARD c++ presum 2019-6-5

[Hard]find-median-from-data-stream - 寻找数据流的中位数 c++ median 2019-6-6

[Medium]time-based-key-value-store - 时间戳k-v存储器 c++ hashtable 2019-6-7

[Hard]data-stream-as-disjoint-intervals - 合并邻接数据范围 c++ map 2019-6-18

[Hard]range-module - 范围模块 c++ map 2019-6-19

[Easy]design-hashmap - 设计Hash表 c++ 2019-6-25

[Easy]design-hashset - 设计hash集合 c++ 2019-6-25

[Medium]insert-delete-getrandom-o1 - O(1)级别的插入、删除及随机操作 c++ 2019-8-8

[Hard]insert-delete-getrandom-o1-duplicates-allowed - O(1)级别的插入、删除及随机操作(允许重复元素) c++ HashTable priorityqueue 2019-8-8

[Medium]encode-and-decode-tinyurl - 设计短链接 c++ 2020-3-2

[Medium]design-bounded-blocking-queue - 设计优先容量阻塞队列 c++ multithreading 2020-3-10

Airbnb

[Medium]longest-palindromic-substring - 最长回文子字符串 c++ 2019-4-21

[Hard]palindrome-pairs - 回文对 c++ 2019-5-16

[Medium]pour-water - 倒水 c++ array 2019-4-25

[Medium]flatten-2d-vector - 打平2维数组 c++ design array 2019-4-26

[Medium]add-and-search-word-data-structure-design c++ design trie 2019-4-28

[Medium]combination-sum - 组合之和 c++ 2019-5-9

[Medium]longest-increasing-subsequence - 最长递增子序列 c++ 2019-5-10 dp binary search

SQL

[Easy]combine-two-tables - 合并两个表 sql left join 2019-6-13

[Easy]employee-bonus - 员工奖金 sql left join 2019-6-13

[Easy]shortest-distance-in-a-line - 员工奖金 sql min 2019-6-13

[Easy]classes-more-than-5-students - 超过5个学生选择的课程 sql groupby having 2019-6-13

[Easy]big-countries - 大国家 sql 2019-7-5

[Easy]not-boring-movies - 不无聊的电影 sql 2019-7-19

[Easy]swap-salary - 交换薪水 sql case when 2019-7-22

[Easy]replace-employee-id-with-the-unique-identifier sql left join 2020-3-11

should review

search-a-2d-matrix-ii c++ matrix 2 pointer

merge-k-sorted-lists c 分治 最小堆(优先队列)

linked-list-cycle-ii c 2 pointer(fast&&slow)

[medium]find-the-duplicate-number c cycle

[medium]array-nesting - 寻找数组中最大的环元素个数 c++ cycle 2019-4-2

restore-ip-addresses c++ 2019-3-25

[Medium]next-greater-element-iii - 找到大于自己的最大数 c++ 2019-4-3

[Medium]lowest-common-ancestor-of-a-binary-tree c++ LCA BST 2019-4-10

🔥[Easy]minimum-depth-of-binary-tree - 二叉树的最小深度 c++ recursive bfs

🔥[Medium]single-number-ii c XOR

[Medium]house-robber-iii - 打家劫舍III c++ 2019-4-20

[Medium]subarray-sum-equals-k - 子数组和为K的数量 c++ hashtable 2019-5-8

[Medium]combination-sum - 组合之和 c++ 2019-5-9

[Medium]longest-increasing-subsequence - 最长递增子序列 c++ 2019-5-10