Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/houbb/leetcode

The leetcode problem solutions.(力扣算法个人学习笔记) 查询、排序、五大算法汇总
https://github.com/houbb/leetcode

algorithm algorithms basic code data-struct leetcode

Last synced: about 2 months ago
JSON representation

The leetcode problem solutions.(力扣算法个人学习笔记) 查询、排序、五大算法汇总

Awesome Lists containing this project

README

        

# leetcode

leetcode 算法笔记。

```
程序 = 数据结构 + 算法
```

# 推荐阅读

[000-从零开始的数据结构与算法](https://houbb.github.io/2020/06/08/algorithm-000-index)

[001-01-ksum 求符合条件的 k 个数 1. Two Sum/15. 3Sum/18. 4Sum/](https://houbb.github.io/2020/06/08/algorithm-001-leetcode-01-ksum)

[002-两数相加 add two numbers](https://houbb.github.io/2020/06/08/algorithm-002-leetcode-02-add-two-numbers)

[003-无重复字符的最长子串 Longest Substring Without Repeating Characters](https://houbb.github.io/2020/06/08/algorithm-003-leetcode-03-longest-substring-without-repeating-characters)

[004-寻找两个正序数组的中位数](https://houbb.github.io/2020/06/08/algorithm-004-leetcode-04-median-of-two-sorted-arrays)

[005-最长回文子串 Longest Palindromic Substring](https://houbb.github.io/2020/06/08/algorithm-005-leetcode-05-longest-palindromic-substring)

[006-N 字形变换 zigzag conversion](https://houbb.github.io/2020/06/08/algorithm-006-leetcode-06-zigzag-conversion)

[007-整数反转 reverse integer 整数的位运算汇总](https://houbb.github.io/2020/06/08/algorithm-007-leetcode-07-reverse-integer)

[008-Regular Expression Matching 正则表达式匹配 + 42.Wildcard Matching 通配符匹配](https://houbb.github.io/2020/06/08/algorithm-008-leetcode-10-regex-match)

[009-盛最多水的容器 Container With Most Water 双指针法 + 42. 接雨水 Trapping Rain Water + 407. Trapping Rain Water II](https://houbb.github.io/2020/06/08/algorithm-009-leetcode-11-container-with-most-water)

[010-删除链表的倒数第 N 个结点 Remove Nth Node From End of List 双指针](https://houbb.github.io/2020/06/08/algorithm-010-leetcode-19-remove-nth-node-from-end-of-list)

[011-21.合并多个有序的链表 merge k sorted lists](https://houbb.github.io/2020/06/08/algorithm-011-leetcode-21-merge-k-sorted-lists)

[012-括号生成 generate-parentheses + 20. 有效的括号 valid parentheses + 32. 最长有效括号 Longest Valid Parentheses](https://houbb.github.io/2020/06/08/algorithm-012-leetcode-22-generate-parentheses)

[013-K 个一组翻转链表 Reverse Nodes in k-Group + 24. 两两交换链表中的节点 swap nodes in pairs](https://houbb.github.io/2020/06/08/algorithm-013-leetcode-25-reverse-nodes-in-k-group)

[014-两数相除 divide two integers](https://houbb.github.io/2020/06/08/algorithm-014-leetcode-29-divide-two-integers)

[015-串联所有单词的子串 Substring with Concatenation of All Words](https://houbb.github.io/2020/06/08/algorithm-015-leetcode-30-substring-with-concatenation-of-all-words)

[016-31.下一个排列 next permutation + 46. 全排列 permutations + 47. 全排列 II permutations-ii + 60. 排列序列 permutation sequence](https://houbb.github.io/2020/06/08/algorithm-016-leetcode-31-next-permutation)

[017-33. 搜索旋转排序数组 Search in Rotated Sorted Array + 81. Search in Rotated Sorted Array II + 153. Find Minimum in Rotated Sorted Array 寻找旋转排序数组中的最小值 + 154.Find Minimum in Rotated Sorted Array II](https://houbb.github.io/2020/06/08/algorithm-017-leetcode-33-search-in-rotated-sorted-array)

[018-34. 在排序数组中查找元素的第一个和最后一个位置 Find First and Last Position of Element in Sorted Array](https://houbb.github.io/2020/06/08/algorithm-018-leetcode-34-find-first-and-last-position-of-element-in-sorted-array)

[019-36. 有效的数独 Valid Sudoku + 37. 解数独 sudoku solver](https://houbb.github.io/2020/06/08/algorithm-019-leetcode-36-valid-suduku)

[020-39. 组合总和 Combination Sum + 40. 组合总和 II Combination Sum II + 77. 组合 combinations + 216. Combination Sum III + 377. 组合总和 Ⅳ](https://houbb.github.io/2020/06/08/algorithm-020-leetcode-39-combination-sum)

# 基础算法

## 查找

[java 如何实现 binary search 二分查找法?](https://houbb.github.io/2020/06/08/algorithm-12-binary-search)

## 排序

[sort-00-排序算法汇总](https://houbb.github.io/2016/07/14/sort-00-overview-sort)

[sort-01-bubble sort 冒泡排序算法详解](https://houbb.github.io/2016/07/14/sort-01-bubble-sort)

[sort-02-QuickSort 快速排序到底快在哪里?](https://houbb.github.io/2016/07/14/sort-02-quick-sort)

[sort-03-SelectSort 选择排序算法详解](https://houbb.github.io/2016/07/14/sort-03-select-sort)

[sort-04-heap sort 堆排序算法详解](https://houbb.github.io/2016/07/14/sort-03-select-sort)

[sort-05-insert sort 插入排序算法详解](https://houbb.github.io/2016/07/14/sort-05-insert-sort)

[sort-06-shell sort 希尔排序算法详解](https://houbb.github.io/2016/07/14/sort-06-shell-sort)

[sort-07-merge sort 归并排序](https://houbb.github.io/2016/07/14/sort-07-merge-sort)

[sort-08-counting sort 计数排序](https://houbb.github.io/2016/07/14/sort-08-counting-sort)

[sort-08-bucket sort 桶排序](https://houbb.github.io/2016/07/14/sort-09-bucket-sort)

[sort-09-timesort 时间排序](https://houbb.github.io/2018/07/26/timesort)

[sort-10-java big file sort 超大文件如何实现排序?外归并排序(External merge sort)](https://houbb.github.io/2022/08/12/java-diff-sort-big-file)

## 五大算法

[五大基本算法概览](https://houbb.github.io/2020/01/23/data-struct-learn-07-base)

[五大基本算法之回溯算法 backtracking](https://houbb.github.io/2020/01/23/data-struct-learn-07-base-backtracking)

[五大基本算法之分治算法 Divided](https://houbb.github.io/2020/01/23/data-struct-learn-07-base-divided)

[五大基本算法之动态规划算法 DP dynamic programming](https://houbb.github.io/2020/01/23/data-struct-learn-07-base-dp)

[五大基本算法之穷举算法](https://houbb.github.io/2020/01/23/data-struct-learn-07-base-enum)

[五大基本算法之贪心算法 Greedy](https://houbb.github.io/2020/01/23/data-struct-learn-07-base-greedy)

# 算法实现

## 000-100

| 序号 | 难题 | 解决方案 | 速度% | 内存% | 时间 | 难度 |
|:----|:--------------------------------------------------------------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------|:------|:------|:--------------------|:-------|
| 001 | [two-num-sum](doc/001-100/001-two-num-sum.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/TwoNumSum.java) | 99.93 | 69.35 | 2020-6-9 11:24:16 | EASY |
| 002 | [add-two-numbers](doc/001-100/002-add-two-numbers.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/AddTwoNumbersLeetCodeVersion3.java) | 100 | 44.45 | 2020-6-9 14:54:51 | EASY |
| 003 | [longest-substring-without-repeating-characters](doc/001-100/003-longest-substring-without-repeating-characters.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/LongestSubstringWithoutRepeatingCharacters.java) | 99.78 | 84.35 | 2020-6-9 17:40:26 | EASY |
| 004 | [median-of-two-sorted-arrays](doc/001-100/004-median-of-two-sorted-arrays.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/MedianOfTwoSortedArrays.java) | 99.81 | 91.06 | 2020-6-9 20:09:57 | EASY |
| 005 | [longest-palindromic-substring](doc/001-100/005-longest-palindromic-substring.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/LongestPalindromicSubstringManacher.java) | 96.20 | 62.76 | 2020-6-9 23:43:38 | EASY |
| 006 | [zigzag-conversion](doc/001-100/006-zigzag-conversion.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/ZigzagConversion.java) | 99.85 | 99.38 | 2020-6-10 11:01:12 | EASY |
| 007 | [reverse-integer](doc/001-100/007-reverse-integer.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/ReverseInteger.java) | 100 | 94.78 | 2020-6-10 13:00:59 | EASY |
| 008 | [string-to-integer-atoi](doc/001-100/008-string-to-integer-atoi.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/StringToIntegerAtoiOptimize.java) | 81.23 | 55.25 | 2020-6-10 16:55:11 | EASY |
| 009 | [palindrome-number](doc/001-100/009-palindrome-number.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/PalindromeNumberOptimize.java) | 100 | 71.67 | 2020-6-10 18:15:00 | EASY |
| 010 | [regular-expression-matching](doc/001-100/010-regular-expression-matching.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/PalindromeNumberOptimize.java) | 92.84 | 73.31 | 2020-6-11 14:54:29 | EASY |
| 011 | [container-with-most-water](doc/001-100/011-container-with-most-water.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/PalindromeNumberOptimize.java) | 95.28 | 38.16 | 2020-6-11 17:11:50 | EASY |
| 012 | [integer-to-roman](doc/001-100/012-integer-to-roman.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/IntegerToRomanBest.java) | 100 | 99.54 | 2020-6-11 17:11:50 | EASY |
| 013 | [roman-to-integer](doc/001-100/013-roman-to-integer.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/RomanToInteger.java) | 100 | 95.16 | 2020-6-11 22:12:57 | EASY |
| 014 | [longest-common-prefix](doc/001-100/014-longest-common-prefix.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/LongestCommonPrefix.java) | 100 | 51.74 | 2020-6-11 22:38:49 | EASY |
| 015 | [3num](doc/001-100/015-3num.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/ThirdNumSortedAndTwoPointer.java) | 99.87 | 60 | 2020-6-12 15:34:15 | EASY |
| 016 | [3sum-closest](doc/001-100/016-3sum-closest.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/ThirdSumClosestOptimize.java) | 100 | 85.21 | 2020-6-12 16:26:29 | EASY |
| 017 | [letter-combinations-of-a-phone-number](doc/001-100/017-letter-combinations-of-a-phone-number.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/LetterCombinationsOfAPhoneNumberRecursive.java) | 100 | 94.58 | 2020-6-15 11:34:35 | EASY |
| 018 | [4sum](doc/001-100/018-4sum.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/FourSumBest.java) | 92.21 | 56.17 | 2020-6-15 14:49:57 | EASY |
| 019 | [remove-nth-node-from-end-of-list](doc/001-100/019-remove-nth-node-from-end-of-list.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/removeNthFromEnd.java) | 100 | 30.88 | 2020-6-16 22:45:02 | EASY |
| 020 | [valid-parentheses](doc/001-100/020-valid-parentheses.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/ValidParenthesesOptimize.java) | 100 | 95.67 | 2020-6-16 22:45:02 | EASY |
| 021 | [merge-two-sorted-lists](doc/001-100/021-merge-two-sorted-lists.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/MergeTwoSortedLists2.java) | 100 | 88.76 | 2020-6-17 14:03:02 | EASY |
| 022 | [generate-parentheses](doc/001-100/022-generate-parentheses.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/GenerateParenthesesOptimize.java) | 100 | 63.29 | 2020-6-17 17:25:18 | EASY |
| 023 | [merge-k-sorted-lists](doc/001-100/023-merge-k-sorted-lists.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/MergeKSortedListsBest.java) | 100 | 35.98 | 2020-6-23 23:00:47 | EASY |
| 024 | [swap-nodes-in-pairs](doc/001-100/024-swap-nodes-in-pairs.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/SwapNodesInPairs.java) | 100 | 71.71 | 2020-6-24 13:37:18 | EASY |
| 025 | [reverse-nodes-in-k-group](doc/001-100/025-reverse-nodes-in-k-group.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/ReverseNodesInKGroupOptimize.java) | 100 | 28.23 | 2020-6-24 17:25:24 | EASY |
| 026 | [remove-duplicates-from-sorted-array](doc/001-100/026-remove-duplicates-from-sorted-array.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/RemoveDuplicatesFromSortedArray.java) | 100 | 59.78 | 2020-6-28 22:27:49 | EASY |
| 027 | [remove-element](doc/001-100/027-remove-element.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/RemoveElement.java) | 100 | 42.61 | 2020-6-28 22:27:49 | EASY |
| 028 | [implement-strstr](doc/001-100/028-implement-strstr.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/ImplementStrStr.java) | 64.82 | 45.26 | 2020-6-28 22:27:49 | EASY |
| 029 | [divide-two-integers](doc/001-100/029-divide-two-integers.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/DivideTwoIntegers.java) | 100 | 23.80 | 2020-6-28 22:27:49 | EASY |
| 030 | [substring-with-concatenation-of-all-words](doc/001-100/030-substring-with-concatenation-of-all-words.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/SubstringWithConcatenationOfAllWordsBest.java) | 99.96 | 57.99 | 2020-6-29 14:34:24 | EASY |
| 031 | [next-permutation](doc/001-100/031-next-permutation.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/NextPermutation.java) | 100 | 66.28 | 2021-2-26 00:19:24 | MEDIUM |
| 033 | [search-in-rotated-sorted-array](doc/001-100/033-search-in-rotated-sorted-array.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/SearchInRotatedSortedArray.java) | 100 | 75.97 | 2021-2-26 23:27:24 | MEDIUM |
| 034 | [find-first-and-last-position-of-element-in-sorted-array](doc/001-100/034-find-first-and-last-position-of-element-in-sorted-array.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/FindFirstAndLastPosition.java) | 100 | 72.92 | 2021-2-27 12:26:24 | MEDIUM |
| 036 | [valid-sudoku](doc/001-100/036-valid-sudoku.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/ValidSoduku.java) | 100 | 87.00 | 2021-2-27 12:26:24 | MEDIUM |
| 038 | [count-and-say](doc/001-100/038-count-and-say.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/CountAndSay.java) | 100 | 99.63 | 2021-2-27 12:26:24 | MEDIUM |
| 039 | [combine-sum](doc/001-100/039-combination-sum.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/CombinationSumBest.java) | 99 | 92.84 | 2021-2-28 12:26:24 | MEDIUM |
| 040 | [combine-sum-ii](doc/001-100/040-combination-sum-ii.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/CombinationSumIIBest.java) | 99 | 96.64 | 2021-2-28 12:26:24 | MEDIUM |
| 043 | [multiply-strings](doc/001-100/043-multiply-strings.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/MultiplyStrings.java) | 100 | 74.17 | 2021-2-28 18:01:24 | MEDIUM |
| 044 | [wildcard-matching](doc/001-100/044-wildcard-matching.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/F000T100/T044_WildcardMatching.java) | 100 | 74.17 | 2021-2-28 18:01:24 | MEDIUM |
| 045 | [jump-game-ii](doc/001-100/045-jump-game-ii.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/F000T100/T045_JumpGameII.java) | 100 | 74.17 | 2021-2-28 18:01:24 | MEDIUM |
| 046 | [permutations](doc/001-100/046-permutations.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/Permutations.java) | 93.75 | 59.41 | 2021-2-28 18:40:24 | MEDIUM |
| 047 | [permutations-ii](doc/001-100/047-permutations-ii.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/PermutationsII.java) | 99.37 | 94.21 | 2021-2-28 19:15:24 | MEDIUM |
| 048 | [rotate-image](doc/001-100/048-rotate-image.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/RotateImage.java) | 100 | 94.21 | 2021-2-28 21:15:24 | MEDIUM |
| 049 | [group-anagrams](doc/001-100/049-group-anagrams.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/GroupAnagrams.java) | 99.74 | 42.56 | 2021-2-28 22:15:24 | MEDIUM |
| 050 | [powerx-n](doc/001-100/050-powerxn.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/PowerxN.java) | 100 | 46.64 | 2021-2-28 23:05:24 | MEDIUM |
| 054 | [spiral-matrix](doc/001-100/054-spiral-matrix.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/SpiralMatrix.java) | 100 | 88.28 | 2021-03-01 22:05:24 | MEDIUM |
| 055 | [jump-game](doc/001-100/055-jump-game.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/JumpGame.java) | 86.66 | 52.22 | 2021-03-01 22:58:24 | MEDIUM |
| 056 | [merge-intervals](doc/001-100/056-merge-intervals.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/MergeIntervals.java) | 97.75 | 35.99 | 2021-03-02 21:08:24 | MEDIUM |
| 057 | [insert-intervals](doc/001-100/057-insert-intervals.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/InsertIntervals.java) | 100 | 93.68 | 2021-03-02 22:08:24 | MEDIUM |
| 059 | [spiral-matrix-ii](doc/001-100/059-spiral-matrix-ii.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/SpiralMatrixII.java) | 100 | 81.11 | 2021-03-02 22:30:24 | MEDIUM |
| 061 | [rotate-list](doc/001-100/061-rotate-list.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/RotateListBest.java) | 100 | 87.66 | 2021-03-02 21:34:24 | MEDIUM |
| 062 | [unique-paths](doc/001-100/062-unique-paths.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/UniquePaths.java) | 100 | 87.66 | 2021-03-03 21:00:24 | MEDIUM |
| 063 | [unique-paths-ii](doc/001-100/063-unique-paths-ii.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/UniquePathsII.java) | 100 | 87.66 | 2021-03-03 21:34:24 | MEDIUM |
| 064 | [minimum-path-sum](doc/001-100/064-minimum-path-sum.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/UniquePathsII.java) | 96 | 87.66 | 2021-03-03 21:34:24 | MEDIUM |
| 070 | [climbing-stairs](doc/001-100/070-climbing-stairs.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/ClimbStairs.java) | 100 | 91.67 | 2021-03-08 23:34:24 | EASY |
| 071 | [simplify-path](doc/001-100/071-simplify-path.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/SimplifyPath.java) | 94.5 | 87.66 | 2021-03-04 21:34:24 | MEDIUM |
| 073 | [set-matrix-zeroes](doc/001-100/073-set-matrix-zeroes.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/SetMatrixZeroes.java) | 96 | 87.66 | 2021-03-04 22:18:24 | MEDIUM |
| 074 | [search-a-2d-matrix](doc/001-100/074-search-a-2d-matrix.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/SearchA2dMatrix.java) | 100 | 73.35 | 2021-03-07 13:03:24 | MEDIUM |
| 075 | [sort-colors](doc/001-100/075-sort-colors.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/SortColors.java) | 100 | 45.23 | 2021-03-07 13:50:24 | MEDIUM |
| 077 | [combinations](doc/001-100/077-combinations.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/Combinations.java) | 92.65 | 95.25 | 2021-03-04 23:18:24 | MEDIUM |
| 078 | [subsets](doc/001-100/078-subsets.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/Subsets.java) | 100 | 95.25 | 2021-03-07 14:20:24 | MEDIUM |
| 079 | [word-search](doc/001-100/079-word-search.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/WordSearch.java) | 10.76 | 95.25 | 2021-03-07 18:20:24 | MEDIUM |
| 080 | [remove-duplicates-from-sorted-array-ii](doc/001-100/080-remove-duplicates-from-sorted-array-ii.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/RemoveDuplicatesFromSortedArrayII.java) | 100 | 95.25 | 2021-03-07 19:20:24 | MEDIUM |
| 081 | [search-in-rotated-sorted-array-ii](doc/001-100/081-search-in-rotated-sorted-array-ii.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/SearchInRotatedSortedArrayII.java) | 100 | 95.25 | 2021-03-07 20:20:24 | MEDIUM |
| 082 | [remove-duplicates-from-sorted-list-ii](doc/001-100/082-remove-duplicates-from-sorted-list-ii.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/RemoveDuplicatesFromSortedListIIBest.java) | 100 | 95.25 | 2021-03-07 21:20:24 | MEDIUM |
| 086 | [partition-list](doc/001-100/086-partition-list.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/PartitionListBetter.java) | 100 | 89.24 | 2021-03-07 22:08:24 | MEDIUM |
| 089 | [grey-code](doc/001-100/089-grey-code.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/GreyCode.java) | 75.5 | 89.24 | 2021-03-07 22:38:24 | MEDIUM |
| 090 | [subsets-ii](doc/001-100/090-subsets-ii.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/SubsetsII.java) | 99.49 | 93.43 | 2021-03-07 14:27:24 | MEDIUM |
| 091 | [decode-ways](doc/001-100/091-decode-ways.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/DecodeWays.java) | 100 | 93.43 | 2021-03-08 23:27:24 | MEDIUM |
| 092 | [reverse-linked-list-ii](doc/001-100/092-reverse-linked-list-ii.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/ReverseLinkedListII.java) | 100 | 28.17 | 2021-03-09 22:27:24 | MEDIUM |
| 093 | [restore-ip-addresses](doc/001-100/093-restore-ip-addresses.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/RestoreIpAddresses.java) | 98.71 | 95.13 | 2021-03-09 23:27:24 | MEDIUM |
| 094 | [binary-tree-inorder-traversal](doc/001-100/094-binary-tree-inorder-traversal.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/BinaryTreeInorderTraversal.java) | 100 | 88.15 | 2021-03-10 23:27:24 | MEDIUM |
| 095 | [unique-binary-search-trees-ii](doc/001-100/095-unique-binary-search-trees-ii.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/UniqueBinarySearchTreesII.java) | 93.81 | 88.47 | 2021-03-10 23:27:24 | MEDIUM |
| 096 | [unique-binary-search-trees](doc/001-100/096-unique-binary-search-trees.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/UniqueBinarySearchTrees.java) | 100 | 90.45 | 2021-03-10 23:27:24 | MEDIUM |
| 098 | [validate-binary-search-tree](doc/001-100/098-validate-binary-search-tree.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/medium/ValidateBinarySearchTree.java) | 100 | 44.59 | 2021-03-10 23:27:24 | MEDIUM |
| 099 | [recover-binary-search-tree](doc/001-100/099-recover-binary-search-tree.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/F000T100/T99_RecoverBinarySearchTree.java) | 99.96 | 64.64 | 2023-01-03 15:00:24 | MEDIUM |
| 100 | [same-tree](doc/001-100/100-same-tree.md) | [java](https://github.com/houbb/leetcode/blob/master/src/main/java/com/github/houbb/leetcode/F000T100/T100_SameTree.java) | 100 | 44.66 | 2023-01-03 15:27:24 | EASY |

## 101-200

| 序号 | 难题 | 速度% & 内存% | 时间 | 难度 |
|:----|:--------------------------------------------------------------------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------|:-----------------|:-------|
| 101 | [symmetric-tree](doc/101-200/101-symmetric-tree.md) | [100 & 88.82](https://leetcode.com/problems/symmetric-tree/submissions/870298167/) | 2023-01-03 16:08 | EASY |
| 102 | [binary-tree-level-order-traversal](doc/101-200/102-binary-tree-level-order-traversal.md) | [100 & 99.99](https://leetcode.com/problems/binary-tree-level-order-traversal/submissions/468533749/) | 2021-03-16 21:37 | MEDIUM |
| 103 | [binary-tree-zigzag-level-order-traversal](doc/101-200/103-binary-tree-zigzag-level-order-traversal.md) | [100 & 99.98](https://leetcode.com/problems/binary-tree-zigzag-level-order-traversal/submissions/468942448/) | 2021-03-17 19:54 | MEDIUM |
| 104 | [maximum-depth-of-binary-tree](doc/101-200/104-maximum-depth-of-binary-tree.md) | [100 & 42.64](https://leetcode.com/problems/maximum-depth-of-binary-tree/submissions/870313682/) | 2023-01-03 16:42 | EASY |
| 105 | [construct-binary-tree-from-preorder-and-inorder-traversal](doc/101-200/105-construct-binary-tree-from-preorder-and-inorder-traversal.md) | [100 & 100](https://leetcode.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/submissions/468963046/) | 2021-03-17 21:21 | MEDIUM |
| 106 | [construct-binary-tree-from-inorder-and-postorder-traversal](doc/101-200/106-construct-binary-tree-from-inorder-and-postorder-traversal.md) | [100 & 100](https://leetcode.com/problems/construct-binary-tree-from-inorder-and-postorder-traversal/submissions/468980046/) | 2021-03-17 22:20 | MEDIUM |
| 107 | [binary-tree-level-order-traversal-ii](doc/101-200/107-binary-tree-level-order-traversal-ii.md) | [100 & 100](https://leetcode.com/problems/binary-tree-level-order-traversal-ii/submissions/468538323/) | 2021-03-16 21:54 | MEDIUM |
| 108 | [convert-sorted-array-to-binary-search-tree](doc/101-200/108-convert-sorted-array-to-binary-search-tree.md) | [100 & 64.93](https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree/submissions/870346879/) | 2023-01-03 17:32 | EASY |
| 109 | [convert-sorted-list-to-binary-search-tree](doc/101-200/109-convert-sorted-list-to-binary-search-tree.md) | [100 & 100](https://leetcode.com/problems/convert-sorted-list-to-binary-search-tree/submissions/468998688/) | 2021-03-17 23:19 | MEDIUM |
| 110 | [balanced-binary-tree](doc/101-200/110-balanced-binary-tree.md) | [97.66 & 37.73](https://leetcode.com/problems/balanced-binary-tree/submissions/870360401/) | 2023-01-03 18:14 | EASY |
| 111 | [minimum-depth-of-binary-tree](doc/101-200/111-minimum-depth-of-binary-tree.md) | [100 & 91](https://leetcode.com/problems/minimum-depth-of-binary-tree/submissions/870506324/) | 2023-01-03 23:14 | EASY |
| 112 | [path-sum](doc/101-200/112-path-sum.md) | [100 & 100](https://leetcode.com/problems/path-sum/submissions/469407728/) | 2021-03-18 22:09 | EASY |
| 113 | [path-sum-ii](doc/101-200/113-path-sum-ii.md) | [100 & 100](https://leetcode.com/problems/path-sum-ii/submissions/469405528/) | 2021-03-18 22:01 | MEDIUM |
| 114 | [flatten-binary-tree-to-linked-list](doc/101-200/114-flatten-binary-tree-to-linked-list.md) | [100 & 87.14](https://leetcode.com/problems/flatten-binary-tree-to-linked-list/submissions/870834075/) | 2023-01-04 09:48 | MEDIUM |
| 115 | [distinct-subsequences](doc/101-200/115-distinct-subsequences.md) | [93 & 97](https://leetcode.com/problems/distinct-subsequences/submissions/870873895/) | 2023-01-04 11:15 | HARD |
| 116 | [populating-next-right-pointers-in-each-node](doc/101-200/116-populating-next-right-pointers-in-each-node.md) | [100 & 100](https://leetcode.com/problems/populating-next-right-pointers-in-each-node/submissions/470054061/) | 2021-03-30 14:58 | MEDIUM |
| 117 | [populating-next-right-pointers-in-each-node-ii](doc/101-200/117-populating-next-right-pointers-in-each-node-ii.md) | [79 & 100](https://leetcode.com/problems/populating-next-right-pointers-in-each-node-ii/submissions/470080389/) | 2021-03-20 16:47 | MEDIUM |
| 118 | [pascals-triangle](doc/101-200/118-pascals-triangle.md) | [100 & 87](https://leetcode.com/problems/pascals-triangle/submissions/870946721/) | 2023-01-04 13:30 | EASY |
| 119 | [pascals-triangle-ii](doc/101-200/119-pascals-triangle-ii.md) | [100 & 20](https://leetcode.com/problems/pascals-triangle-ii/submissions/870960520/) | 2023-01-04 13:52 | EASY |
| 120 | [triangle](doc/101-200/120-triangle.md) | [69 & 99](https://leetcode.com/problems/triangle/submissions/470939749/) | 2021-01-22 17:07 | MEDIUM |
| 121 | [best-time-to-buy-and-sell-stock](doc/101-200/121-best-time-to-buy-and-sell-stock.md) | [100 & 88](https://leetcode.com/problems/best-time-to-buy-and-sell-stock/submissions/870982480/) | 2023-01-04 14:40 | EASY |
| 122 | [best-time-to-buy-and-sell-stock-ii](doc/101-200/122-best-time-to-buy-and-sell-stock-ii.md) | [93 & 65](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-ii/submissions/871005311/) | 2023-01-04 15:05 | MEDIUM |
| 123 | [best-time-to-buy-and-sell-stock-iii](doc/101-200/123-best-time-to-buy-and-sell-stock-iii.md) | [73 & 52](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-iii/submissions/871080203/) | 2023-01-04 17:21 | HARD |
| 124 | [binary-tree-maximum-path-sum](doc/101-200/124-binary-tree-maximum-path-sum.md) | [99 & 30](https://leetcode.com/problems/binary-tree-maximum-path-sum/submissions/871112853/) | 2023-01-04 18:27 | HARD |
| 125 | [valid-palindrome](doc/101-200/125-valid-palindrome.md) | [56 & 33](https://leetcode.com/problems/valid-palindrome/submissions/871593353/) | 2023-01-05 10:06 | EASY |
| 126 | [word-ladder-ii](doc/101-200/126-word-ladder-ii.md) | [X](https://leetcode.com/problems/word-ladder-ii/submissions/871819309/) | 2023-01-05 17:21 | HARD |
| 127 | [word-ladder](doc/101-200/127-word-ladder.md) | [97 & 50](https://leetcode.com/problems/word-ladder/submissions/871772607/) | 2023-01-05 15:48 | HARD |
| 128 | [longest-consecutive-sequence](doc/101-200/128-longest-consecutive-sequence.md) | [99 & 96](https://leetcode.com/problems/longest-consecutive-sequence/submissions/871826888/) | 2023-01-05 17:37 | MEDIUM |
| 129 | [sum-root-to-leaf-numbers](doc/101-200/129-sum-root-to-leaf-numbers.md) | [100 & 100](https://leetcode.com/problems/sum-root-to-leaf-numbers/submissions/470951954/) | 2021-03-22 18:01 | MEDIUM |
| 130 | [surrounded-regions](doc/101-200/130-surrounded-regions.md) | [99 & 100](https://leetcode.com/problems/surrounded-regions/submissions/471027711/) | 2021-03-22 23:05 | MEDIUM |
| 131 | [palindrome-partitioning](doc/101-200/131-palindrome-partitioning.md) | [70 & 60](https://leetcode.com/problems/palindrome-partitioning/submissions/871922147/) | 2023-01-05 21:02 | MEDIUM |
| 132 | [palindrome-partitioning-ii](doc/101-200/132-palindrome-partitioning-ii.md) | [72 & 42](https://leetcode.com/problems/palindrome-partitioning-ii/submissions/871938086/) | 2023-01-05 21:33 | HARD |
| 133 | [clone-graph](doc/101-200/133-clone-graph.md) | [98 & 100](https://leetcode.com/problems/clone-graph/submissions/471866296/) | 2021-03-24 21:34 | MEDIUM |
| 134 | [gas-station](doc/101-200/134-gas-station.md) | [100 & 100](https://leetcode.com/problems/gas-station/submissions/472307477/) | 2021-03-25 22:40 | MEDIUM |
| 135 | [candy](doc/101-200/135-candy.md) | [63 & 56](https://leetcode.com/problems/candy/submissions/872426959/) | 2023-01-06 13:49 | HARD |
| 136 | [single-number](doc/101-200/136-single-number.md) | [100 & 100](https://leetcode.com/problems/single-number/submissions/472327828/) | 2021-03-25 23:49 | EASY |
| 137 | [single-number-ii](doc/101-200/137-single-number-ii.md) | [100 & 100](https://leetcode.com/problems/single-number-ii/submissions/472670012/) | 2021-03-26 21:00 | MEDIUM |
| 138 | [copy-list-with-random-pointer](doc/101-200/138-copy-list-with-random-pointer.md) | [100 & 100](https://leetcode.com/problems/copy-list-with-random-pointer/submissions/474686970/) | 2021-03-31 21:03 | MEDIUM |
| 139 | [word-break](doc/101-200/139-word-break.md) | [100 & 99](https://leetcode.com/problems/word-break/submissions/872501884/) | 2023-01-06 16:01 | MEDIUM |
| 140 | [word-break-ii](doc/101-200/140-word-break-ii.md) | [98 & 30](https://leetcode.com/problems/word-break-ii/submissions/872514364/) | 2023-01-06 16:27 | HARD |
| 188 | [best-time-to-buy-and-sell-stock-iv](doc/101-200/188-best-time-to-buy-and-sell-stock-iv.md) | [63 & 37](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-iv/submissions/871081104/) | 2023-01-04 17:25 | HARD |