From 0174ec5d989bf9f1acd37d35d75a9637738aab92 Mon Sep 17 00:00:00 2001 From: bestgopher <84328409@qq.com> Date: Mon, 26 Jul 2021 22:58:06 +0800 Subject: [PATCH] feature: add difficulty --- README.md | 504 +++++++++++++++++++++++++------------------------- src/file.rs | 4 +- src/http.rs | 58 +++++- src/render.rs | 26 ++- 4 files changed, 331 insertions(+), 261 deletions(-) diff --git a/README.md b/README.md index 51f5f25c..5167fd36 100644 --- a/README.md +++ b/README.md @@ -1,256 +1,258 @@ # leetcode -当前已刷:248 +| Total | Easy | Medium | Hard | +| :----: | :----: | :----: | :----: | +| 248 | 117 | 125 | 6 | ### 题目 -| 编号 | 题目 | 描述 | 代码 | -| ---- | ----- | ------------------------------------------------------------ | ----------------------------------------------------- | -|1 | 两数之和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/two-sum.rs) | [leetcode](https://leetcode-cn.com/problems/two-sum/) | -|2 | 两数相加 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/add-two-numbers.rs) | [leetcode](https://leetcode-cn.com/problems/add-two-numbers/) | -|3 | 无重复字符的最长子串 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/longest-substring-without-repeating-characters.rs) | [leetcode](https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/) | -|4 | 寻找两个正序数组的中位数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/median-of-two-sorted-arrays.rs) | [leetcode](https://leetcode-cn.com/problems/median-of-two-sorted-arrays/) | -|6 | Z 字形变换 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/zigzag-conversion.rs) | [leetcode](https://leetcode-cn.com/problems/zigzag-conversion/) | -|7 | 整数反转 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/reverse-integer.rs) | [leetcode](https://leetcode-cn.com/problems/reverse-integer/) | -|8 | 字符串转换整数 (atoi) | [src](https://github.com/rustors/leetcode/blob/main/src/bin/string-to-integer-atoi.rs) | [leetcode](https://leetcode-cn.com/problems/string-to-integer-atoi/) | -|9 | 回文数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/palindrome-number.rs) | [leetcode](https://leetcode-cn.com/problems/palindrome-number/) | -|11 | 盛最多水的容器 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/container-with-most-water.rs) | [leetcode](https://leetcode-cn.com/problems/container-with-most-water/) | -|12 | 整数转罗马数字 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/integer-to-roman.rs) | [leetcode](https://leetcode-cn.com/problems/integer-to-roman/) | -|13 | 罗马数字转整数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/roman-to-integer.rs) | [leetcode](https://leetcode-cn.com/problems/roman-to-integer/) | -|14 | 最长公共前缀 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/longest-common-prefix.rs) | [leetcode](https://leetcode-cn.com/problems/longest-common-prefix/) | -|15 | 三数之和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/3sum.rs) | [leetcode](https://leetcode-cn.com/problems/3sum/) | -|16 | 最接近的三数之和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/3sum-closest.rs) | [leetcode](https://leetcode-cn.com/problems/3sum-closest/) | -|17 | 电话号码的字母组合 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/letter-combinations-of-a-phone-number.rs) | [leetcode](https://leetcode-cn.com/problems/letter-combinations-of-a-phone-number/) | -|18 | 四数之和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/4sum.rs) | [leetcode](https://leetcode-cn.com/problems/4sum/) | -|19 | 删除链表的倒数第 N 个结点 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-nth-node-from-end-of-list.rs) | [leetcode](https://leetcode-cn.com/problems/remove-nth-node-from-end-of-list/) | -|20 | 有效的括号 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/valid-parentheses.rs) | [leetcode](https://leetcode-cn.com/problems/valid-parentheses/) | -|21 | 合并两个有序链表 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/merge-two-sorted-lists.rs) | [leetcode](https://leetcode-cn.com/problems/merge-two-sorted-lists/) | -|23 | 合并K个升序链表 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/merge-k-sorted-lists.rs) | [leetcode](https://leetcode-cn.com/problems/merge-k-sorted-lists/) | -|24 | 两两交换链表中的节点 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/swap-nodes-in-pairs.rs) | [leetcode](https://leetcode-cn.com/problems/swap-nodes-in-pairs/) | -|25 | K 个一组翻转链表 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/reverse-nodes-in-k-group.rs) | [leetcode](https://leetcode-cn.com/problems/reverse-nodes-in-k-group/) | -|26 | 删除有序数组中的重复项 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-duplicates-from-sorted-array.rs) | [leetcode](https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/) | -|27 | 移除元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-element.rs) | [leetcode](https://leetcode-cn.com/problems/remove-element/) | -|28 | 实现 strStr() | [src](https://github.com/rustors/leetcode/blob/main/src/bin/implement-strstr.rs) | [leetcode](https://leetcode-cn.com/problems/implement-strstr/) | -|31 | 下一个排列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/next-permutation.rs) | [leetcode](https://leetcode-cn.com/problems/next-permutation/) | -|33 | 搜索旋转排序数组 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/search-in-rotated-sorted-array.rs) | [leetcode](https://leetcode-cn.com/problems/search-in-rotated-sorted-array/) | -|34 | 在排序数组中查找元素的第一个和最后一个位置 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/find-first-and-last-position-of-element-in-sorted-array.rs) | [leetcode](https://leetcode-cn.com/problems/find-first-and-last-position-of-element-in-sorted-array/) | -|35 | 搜索插入位置 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/search-insert-position.rs) | [leetcode](https://leetcode-cn.com/problems/search-insert-position/) | -|36 | 有效的数独 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/valid-sudoku.rs) | [leetcode](https://leetcode-cn.com/problems/valid-sudoku/) | -|38 | 外观数列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/count-and-say.rs) | [leetcode](https://leetcode-cn.com/problems/count-and-say/) | -|39 | 组合总和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/combination-sum.rs) | [leetcode](https://leetcode-cn.com/problems/combination-sum/) | -|41 | 缺失的第一个正数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/first-missing-positive.rs) | [leetcode](https://leetcode-cn.com/problems/first-missing-positive/) | -|43 | 字符串相乘 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/multiply-strings.rs) | [leetcode](https://leetcode-cn.com/problems/multiply-strings/) | -|45 | 跳跃游戏 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/jump-game-ii.rs) | [leetcode](https://leetcode-cn.com/problems/jump-game-ii/) | -|46 | 全排列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/permutations.rs) | [leetcode](https://leetcode-cn.com/problems/permutations/) | -|48 | 旋转图像 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/rotate-image.rs) | [leetcode](https://leetcode-cn.com/problems/rotate-image/) | -|49 | 字母异位词分组 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/group-anagrams.rs) | [leetcode](https://leetcode-cn.com/problems/group-anagrams/) | -|50 | Pow(x, n) | [src](https://github.com/rustors/leetcode/blob/main/src/bin/powx-n.rs) | [leetcode](https://leetcode-cn.com/problems/powx-n/) | -|51 | N 皇后 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/n-queens.rs) | [leetcode](https://leetcode-cn.com/problems/n-queens/) | -|52 | N皇后 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/n-queens-ii.rs) | [leetcode](https://leetcode-cn.com/problems/n-queens-ii/) | -|53 | 最大子序和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-subarray.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-subarray/) | -|55 | 跳跃游戏 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/jump-game.rs) | [leetcode](https://leetcode-cn.com/problems/jump-game/) | -|56 | 合并区间 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/merge-intervals.rs) | [leetcode](https://leetcode-cn.com/problems/merge-intervals/) | -|57 | 插入区间 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/insert-interval.rs) | [leetcode](https://leetcode-cn.com/problems/insert-interval/) | -|58 | 最后一个单词的长度 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/length-of-last-word.rs) | [leetcode](https://leetcode-cn.com/problems/length-of-last-word/) | -|62 | 不同路径 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/unique-paths.rs) | [leetcode](https://leetcode-cn.com/problems/unique-paths/) | -|63 | 不同路径 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/unique-paths-ii.rs) | [leetcode](https://leetcode-cn.com/problems/unique-paths-ii/) | -|64 | 最小路径和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/minimum-path-sum.rs) | [leetcode](https://leetcode-cn.com/problems/minimum-path-sum/) | -|66 | 加一 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/plus-one.rs) | [leetcode](https://leetcode-cn.com/problems/plus-one/) | -|67 | 二进制求和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/add-binary.rs) | [leetcode](https://leetcode-cn.com/problems/add-binary/) | -|69 | x 的平方根 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/sqrtx.rs) | [leetcode](https://leetcode-cn.com/problems/sqrtx/) | -|70 | 爬楼梯 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/climbing-stairs.rs) | [leetcode](https://leetcode-cn.com/problems/climbing-stairs/) | -|71 | 简化路径 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/simplify-path.rs) | [leetcode](https://leetcode-cn.com/problems/simplify-path/) | -|73 | 矩阵置零 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/set-matrix-zeroes.rs) | [leetcode](https://leetcode-cn.com/problems/set-matrix-zeroes/) | -|74 | 搜索二维矩阵 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/search-a-2d-matrix.rs) | [leetcode](https://leetcode-cn.com/problems/search-a-2d-matrix/) | -|75 | 颜色分类 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/sort-colors.rs) | [leetcode](https://leetcode-cn.com/problems/sort-colors/) | -|77 | 组合 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/combinations.rs) | [leetcode](https://leetcode-cn.com/problems/combinations/) | -|78 | 子集 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/subsets.rs) | [leetcode](https://leetcode-cn.com/problems/subsets/) | -|79 | 单词搜索 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/word-search.rs) | [leetcode](https://leetcode-cn.com/problems/word-search/) | -|80 | 删除有序数组中的重复项 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-duplicates-from-sorted-array-ii.rs) | [leetcode](https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array-ii/) | -|81 | 搜索旋转排序数组 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/search-in-rotated-sorted-array-ii.rs) | [leetcode](https://leetcode-cn.com/problems/search-in-rotated-sorted-array-ii/) | -|82 | 删除排序链表中的重复元素 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-duplicates-from-sorted-list-ii.rs) | [leetcode](https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list-ii/) | -|83 | 删除排序链表中的重复元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-duplicates-from-sorted-list.rs) | [leetcode](https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list/) | -|88 | 合并两个有序数组 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/merge-sorted-array.rs) | [leetcode](https://leetcode-cn.com/problems/merge-sorted-array/) | -|89 | 格雷编码 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/gray-code.rs) | [leetcode](https://leetcode-cn.com/problems/gray-code/) | -|91 | 解码方法 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/decode-ways.rs) | [leetcode](https://leetcode-cn.com/problems/decode-ways/) | -|93 | 复原 IP 地址 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/restore-ip-addresses.rs) | [leetcode](https://leetcode-cn.com/problems/restore-ip-addresses/) | -|94 | 二叉树的中序遍历 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-tree-inorder-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/binary-tree-inorder-traversal/) | -|95 | 不同的二叉搜索树 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/unique-binary-search-trees-ii.rs) | [leetcode](https://leetcode-cn.com/problems/unique-binary-search-trees-ii/) | -|96 | 不同的二叉搜索树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/unique-binary-search-trees.rs) | [leetcode](https://leetcode-cn.com/problems/unique-binary-search-trees/) | -|98 | 验证二叉搜索树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/validate-binary-search-tree.rs) | [leetcode](https://leetcode-cn.com/problems/validate-binary-search-tree/) | -|100 | 相同的树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/same-tree.rs) | [leetcode](https://leetcode-cn.com/problems/same-tree/) | -|101 | 对称二叉树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/symmetric-tree.rs) | [leetcode](https://leetcode-cn.com/problems/symmetric-tree/) | -|102 | 二叉树的层序遍历 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-tree-level-order-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/binary-tree-level-order-traversal/) | -|103 | 二叉树的锯齿形层序遍历 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-tree-zigzag-level-order-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/binary-tree-zigzag-level-order-traversal/) | -|104 | 二叉树的最大深度 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-depth-of-binary-tree.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-depth-of-binary-tree/) | -|105 | 从前序与中序遍历序列构造二叉树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/construct-binary-tree-from-preorder-and-inorder-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/) | -|106 | 从中序与后序遍历序列构造二叉树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/construct-binary-tree-from-inorder-and-postorder-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/construct-binary-tree-from-inorder-and-postorder-traversal/) | -|107 | 二叉树的层序遍历 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-tree-level-order-traversal-ii.rs) | [leetcode](https://leetcode-cn.com/problems/binary-tree-level-order-traversal-ii/) | -|108 | 将有序数组转换为二叉搜索树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/convert-sorted-array-to-binary-search-tree.rs) | [leetcode](https://leetcode-cn.com/problems/convert-sorted-array-to-binary-search-tree/) | -|110 | 平衡二叉树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/balanced-binary-tree.rs) | [leetcode](https://leetcode-cn.com/problems/balanced-binary-tree/) | -|111 | 二叉树的最小深度 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/minimum-depth-of-binary-tree.rs) | [leetcode](https://leetcode-cn.com/problems/minimum-depth-of-binary-tree/) | -|112 | 路径总和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/path-sum.rs) | [leetcode](https://leetcode-cn.com/problems/path-sum/) | -|113 | 路径总和 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/path-sum-ii.rs) | [leetcode](https://leetcode-cn.com/problems/path-sum-ii/) | -|118 | 杨辉三角 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/pascals-triangle.rs) | [leetcode](https://leetcode-cn.com/problems/pascals-triangle/) | -|119 | 杨辉三角 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/pascals-triangle-ii.rs) | [leetcode](https://leetcode-cn.com/problems/pascals-triangle-ii/) | -|120 | 三角形最小路径和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/triangle.rs) | [leetcode](https://leetcode-cn.com/problems/triangle/) | -|121 | 买卖股票的最佳时机 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/best-time-to-buy-and-sell-stock.rs) | [leetcode](https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock/) | -|122 | 买卖股票的最佳时机 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/best-time-to-buy-and-sell-stock-ii.rs) | [leetcode](https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-ii/) | -|125 | 验证回文串 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/valid-palindrome.rs) | [leetcode](https://leetcode-cn.com/problems/valid-palindrome/) | -|129 | 求根节点到叶节点数字之和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/sum-root-to-leaf-numbers.rs) | [leetcode](https://leetcode-cn.com/problems/sum-root-to-leaf-numbers/) | -|136 | 只出现一次的数字 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/single-number.rs) | [leetcode](https://leetcode-cn.com/problems/single-number/) | -|137 | 只出现一次的数字 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/single-number-ii.rs) | [leetcode](https://leetcode-cn.com/problems/single-number-ii/) | -|144 | 二叉树的前序遍历 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-tree-preorder-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/binary-tree-preorder-traversal/) | -|145 | 二叉树的后序遍历 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-tree-postorder-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/binary-tree-postorder-traversal/) | -|150 | 逆波兰表达式求值 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/evaluate-reverse-polish-notation.rs) | [leetcode](https://leetcode-cn.com/problems/evaluate-reverse-polish-notation/) | -|151 | 翻转字符串里的单词 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/reverse-words-in-a-string.rs) | [leetcode](https://leetcode-cn.com/problems/reverse-words-in-a-string/) | -|152 | 乘积最大子数组 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-product-subarray.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-product-subarray/) | -|153 | 寻找旋转排序数组中的最小值 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/find-minimum-in-rotated-sorted-array.rs) | [leetcode](https://leetcode-cn.com/problems/find-minimum-in-rotated-sorted-array/) | -|155 | 最小栈 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/min-stack.rs) | [leetcode](https://leetcode-cn.com/problems/min-stack/) | -|162 | 寻找峰值 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/find-peak-element.rs) | [leetcode](https://leetcode-cn.com/problems/find-peak-element/) | -|165 | 比较版本号 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/compare-version-numbers.rs) | [leetcode](https://leetcode-cn.com/problems/compare-version-numbers/) | -|166 | 分数到小数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/fraction-to-recurring-decimal.rs) | [leetcode](https://leetcode-cn.com/problems/fraction-to-recurring-decimal/) | -|167 | 两数之和 II - 输入有序数组 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/two-sum-ii-input-array-is-sorted.rs) | [leetcode](https://leetcode-cn.com/problems/two-sum-ii-input-array-is-sorted/) | -|168 | Excel表列名称 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/excel-sheet-column-title.rs) | [leetcode](https://leetcode-cn.com/problems/excel-sheet-column-title/) | -|169 | 多数元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/majority-element.rs) | [leetcode](https://leetcode-cn.com/problems/majority-element/) | -|171 | Excel表列序号 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/excel-sheet-column-number.rs) | [leetcode](https://leetcode-cn.com/problems/excel-sheet-column-number/) | -|172 | 阶乘后的零 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/factorial-trailing-zeroes.rs) | [leetcode](https://leetcode-cn.com/problems/factorial-trailing-zeroes/) | -|173 | 二叉搜索树迭代器 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-search-tree-iterator.rs) | [leetcode](https://leetcode-cn.com/problems/binary-search-tree-iterator/) | -|187 | 重复的DNA序列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/repeated-dna-sequences.rs) | [leetcode](https://leetcode-cn.com/problems/repeated-dna-sequences/) | -|190 | 颠倒二进制位 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/reverse-bits.rs) | [leetcode](https://leetcode-cn.com/problems/reverse-bits/) | -|191 | 位1的个数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/number-of-1-bits.rs) | [leetcode](https://leetcode-cn.com/problems/number-of-1-bits/) | -|198 | 打家劫舍 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/house-robber.rs) | [leetcode](https://leetcode-cn.com/problems/house-robber/) | -|199 | 二叉树的右视图 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-tree-right-side-view.rs) | [leetcode](https://leetcode-cn.com/problems/binary-tree-right-side-view/) | -|200 | 岛屿数量 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/number-of-islands.rs) | [leetcode](https://leetcode-cn.com/problems/number-of-islands/) | -|201 | 数字范围按位与 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/bitwise-and-of-numbers-range.rs) | [leetcode](https://leetcode-cn.com/problems/bitwise-and-of-numbers-range/) | -|202 | 快乐数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/happy-number.rs) | [leetcode](https://leetcode-cn.com/problems/happy-number/) | -|203 | 移除链表元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-linked-list-elements.rs) | [leetcode](https://leetcode-cn.com/problems/remove-linked-list-elements/) | -|204 | 计数质数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/count-primes.rs) | [leetcode](https://leetcode-cn.com/problems/count-primes/) | -|205 | 同构字符串 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/isomorphic-strings.rs) | [leetcode](https://leetcode-cn.com/problems/isomorphic-strings/) | -|206 | 反转链表 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/reverse-linked-list.rs) | [leetcode](https://leetcode-cn.com/problems/reverse-linked-list/) | -|208 | 实现 Trie (前缀树) | [src](https://github.com/rustors/leetcode/blob/main/src/bin/implement-trie-prefix-tree.rs) | [leetcode](https://leetcode-cn.com/problems/implement-trie-prefix-tree/) | -|211 | 添加与搜索单词 - 数据结构设计 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/design-add-and-search-words-data-structure.rs) | [leetcode](https://leetcode-cn.com/problems/design-add-and-search-words-data-structure/) | -|213 | 打家劫舍 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/house-robber-ii.rs) | [leetcode](https://leetcode-cn.com/problems/house-robber-ii/) | -|215 | 数组中的第K个最大元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/kth-largest-element-in-an-array.rs) | [leetcode](https://leetcode-cn.com/problems/kth-largest-element-in-an-array/) | -|216 | 组合总和 III | [src](https://github.com/rustors/leetcode/blob/main/src/bin/combination-sum-iii.rs) | [leetcode](https://leetcode-cn.com/problems/combination-sum-iii/) | -|217 | 存在重复元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/contains-duplicate.rs) | [leetcode](https://leetcode-cn.com/problems/contains-duplicate/) | -|219 | 存在重复元素 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/contains-duplicate-ii.rs) | [leetcode](https://leetcode-cn.com/problems/contains-duplicate-ii/) | -|222 | 完全二叉树的节点个数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/count-complete-tree-nodes.rs) | [leetcode](https://leetcode-cn.com/problems/count-complete-tree-nodes/) | -|223 | 矩形面积 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/rectangle-area.rs) | [leetcode](https://leetcode-cn.com/problems/rectangle-area/) | -|225 | 用队列实现栈 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/implement-stack-using-queues.rs) | [leetcode](https://leetcode-cn.com/problems/implement-stack-using-queues/) | -|226 | 翻转二叉树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/invert-binary-tree.rs) | [leetcode](https://leetcode-cn.com/problems/invert-binary-tree/) | -|228 | 汇总区间 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/summary-ranges.rs) | [leetcode](https://leetcode-cn.com/problems/summary-ranges/) | -|229 | 求众数 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/majority-element-ii.rs) | [leetcode](https://leetcode-cn.com/problems/majority-element-ii/) | -|230 | 二叉搜索树中第K小的元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/kth-smallest-element-in-a-bst.rs) | [leetcode](https://leetcode-cn.com/problems/kth-smallest-element-in-a-bst/) | -|231 | 2 的幂 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/power-of-two.rs) | [leetcode](https://leetcode-cn.com/problems/power-of-two/) | -|232 | 用栈实现队列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/implement-queue-using-stacks.rs) | [leetcode](https://leetcode-cn.com/problems/implement-queue-using-stacks/) | -|234 | 回文链表 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/palindrome-linked-list.rs) | [leetcode](https://leetcode-cn.com/problems/palindrome-linked-list/) | -|235 | 二叉搜索树的最近公共祖先 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/lowest-common-ancestor-of-a-binary-search-tree.rs) | [leetcode](https://leetcode-cn.com/problems/lowest-common-ancestor-of-a-binary-search-tree/) | -|238 | 除自身以外数组的乘积 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/product-of-array-except-self.rs) | [leetcode](https://leetcode-cn.com/problems/product-of-array-except-self/) | -|242 | 有效的字母异位词 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/valid-anagram.rs) | [leetcode](https://leetcode-cn.com/problems/valid-anagram/) | -|257 | 二叉树的所有路径 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-tree-paths.rs) | [leetcode](https://leetcode-cn.com/problems/binary-tree-paths/) | -|258 | 各位相加 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/add-digits.rs) | [leetcode](https://leetcode-cn.com/problems/add-digits/) | -|263 | 丑数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/ugly-number.rs) | [leetcode](https://leetcode-cn.com/problems/ugly-number/) | -|268 | 丢失的数字 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/missing-number.rs) | [leetcode](https://leetcode-cn.com/problems/missing-number/) | -|274 | H 指数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/h-index.rs) | [leetcode](https://leetcode-cn.com/problems/h-index/) | -|278 | 第一个错误的版本 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/first-bad-version.rs) | [leetcode](https://leetcode-cn.com/problems/first-bad-version/) | -|279 | 完全平方数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/perfect-squares.rs) | [leetcode](https://leetcode-cn.com/problems/perfect-squares/) | -|290 | 单词规律 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/word-pattern.rs) | [leetcode](https://leetcode-cn.com/problems/word-pattern/) | -|303 | 区域和检索 - 数组不可变 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/range-sum-query-immutable.rs) | [leetcode](https://leetcode-cn.com/problems/range-sum-query-immutable/) | -|318 | 最大单词长度乘积 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-product-of-word-lengths.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-product-of-word-lengths/) | -|319 | 灯泡开关 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/bulb-switcher.rs) | [leetcode](https://leetcode-cn.com/problems/bulb-switcher/) | -|326 | 3的幂 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/power-of-three.rs) | [leetcode](https://leetcode-cn.com/problems/power-of-three/) | -|349 | 两个数组的交集 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/intersection-of-two-arrays.rs) | [leetcode](https://leetcode-cn.com/problems/intersection-of-two-arrays/) | -|350 | 两个数组的交集 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/intersection-of-two-arrays-ii.rs) | [leetcode](https://leetcode-cn.com/problems/intersection-of-two-arrays-ii/) | -|357 | 计算各个位数不同的数字个数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/count-numbers-with-unique-digits.rs) | [leetcode](https://leetcode-cn.com/problems/count-numbers-with-unique-digits/) | -|367 | 有效的完全平方数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/valid-perfect-square.rs) | [leetcode](https://leetcode-cn.com/problems/valid-perfect-square/) | -|371 | 两整数之和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/sum-of-two-integers.rs) | [leetcode](https://leetcode-cn.com/problems/sum-of-two-integers/) | -|374 | 猜数字大小 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/guess-number-higher-or-lower.rs) | [leetcode](https://leetcode-cn.com/problems/guess-number-higher-or-lower/) | -|387 | 字符串中的第一个唯一字符 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/first-unique-character-in-a-string.rs) | [leetcode](https://leetcode-cn.com/problems/first-unique-character-in-a-string/) | -|404 | 左叶子之和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/sum-of-left-leaves.rs) | [leetcode](https://leetcode-cn.com/problems/sum-of-left-leaves/) | -|419 | 甲板上的战舰 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/battleships-in-a-board.rs) | [leetcode](https://leetcode-cn.com/problems/battleships-in-a-board/) | -|423 | 从英文中重建数字 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/reconstruct-original-digits-from-english.rs) | [leetcode](https://leetcode-cn.com/problems/reconstruct-original-digits-from-english/) | -|434 | 字符串中的单词数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/number-of-segments-in-a-string.rs) | [leetcode](https://leetcode-cn.com/problems/number-of-segments-in-a-string/) | -|476 | 数字的补数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/number-complement.rs) | [leetcode](https://leetcode-cn.com/problems/number-complement/) | -|481 | 神奇字符串 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/magical-string.rs) | [leetcode](https://leetcode-cn.com/problems/magical-string/) | -|500 | 键盘行 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/keyboard-row.rs) | [leetcode](https://leetcode-cn.com/problems/keyboard-row/) | -|520 | 检测大写字母 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/detect-capital.rs) | [leetcode](https://leetcode-cn.com/problems/detect-capital/) | -|528 | 交换链表中的节点 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/swapping-nodes-in-a-linked-list.rs) | [leetcode](https://leetcode-cn.com/problems/swapping-nodes-in-a-linked-list/) | -|551 | 学生出勤记录 I | [src](https://github.com/rustors/leetcode/blob/main/src/bin/student-attendance-record-i.rs) | [leetcode](https://leetcode-cn.com/problems/student-attendance-record-i/) | -|560 | 和为K的子数组 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/subarray-sum-equals-k.rs) | [leetcode](https://leetcode-cn.com/problems/subarray-sum-equals-k/) | -|565 | 数组嵌套 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/array-nesting.rs) | [leetcode](https://leetcode-cn.com/problems/array-nesting/) | -|594 | 最长和谐子序列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/longest-harmonious-subsequence.rs) | [leetcode](https://leetcode-cn.com/problems/longest-harmonious-subsequence/) | -|617 | 合并二叉树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/merge-two-binary-trees.rs) | [leetcode](https://leetcode-cn.com/problems/merge-two-binary-trees/) | -|649 | Dota2 参议院 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/dota2-senate.rs) | [leetcode](https://leetcode-cn.com/problems/dota2-senate/) | -|650 | 只有两个键的键盘 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/2-keys-keyboard.rs) | [leetcode](https://leetcode-cn.com/problems/2-keys-keyboard/) | -|653 | 两数之和 IV - 输入 BST | [src](https://github.com/rustors/leetcode/blob/main/src/bin/two-sum-iv-input-is-a-bst.rs) | [leetcode](https://leetcode-cn.com/problems/two-sum-iv-input-is-a-bst/) | -|658 | 找到 K 个最接近的元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/find-k-closest-elements.rs) | [leetcode](https://leetcode-cn.com/problems/find-k-closest-elements/) | -|674 | 最长连续递增序列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/longest-continuous-increasing-subsequence.rs) | [leetcode](https://leetcode-cn.com/problems/longest-continuous-increasing-subsequence/) | -|800 | 字母大小写全排列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/letter-case-permutation.rs) | [leetcode](https://leetcode-cn.com/problems/letter-case-permutation/) | -|825 | 保持城市天际线 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/max-increase-to-keep-city-skyline.rs) | [leetcode](https://leetcode-cn.com/problems/max-increase-to-keep-city-skyline/) | -|829 | 子域名访问计数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/subdomain-visit-count.rs) | [leetcode](https://leetcode-cn.com/problems/subdomain-visit-count/) | -|857 | 较大分组的位置 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/positions-of-large-groups.rs) | [leetcode](https://leetcode-cn.com/problems/positions-of-large-groups/) | -|868 | 推多米诺 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/push-dominoes.rs) | [leetcode](https://leetcode-cn.com/problems/push-dominoes/) | -|917 | 救生艇 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/boats-to-save-people.rs) | [leetcode](https://leetcode-cn.com/problems/boats-to-save-people/) | -|921 | 螺旋矩阵 III | [src](https://github.com/rustors/leetcode/blob/main/src/bin/spiral-matrix-iii.rs) | [leetcode](https://leetcode-cn.com/problems/spiral-matrix-iii/) | -|924 | 公平的糖果棒交换 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/fair-candy-swap.rs) | [leetcode](https://leetcode-cn.com/problems/fair-candy-swap/) | -|925 | 根据前序和后序遍历构造二叉树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/construct-binary-tree-from-preorder-and-postorder-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/construct-binary-tree-from-preorder-and-postorder-traversal/) | -|932 | 单调数列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/monotonic-array.rs) | [leetcode](https://leetcode-cn.com/problems/monotonic-array/) | -|979 | 增减字符串匹配 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/di-string-match.rs) | [leetcode](https://leetcode-cn.com/problems/di-string-match/) | -|981 | 删列造序 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/delete-columns-to-make-sorted.rs) | [leetcode](https://leetcode-cn.com/problems/delete-columns-to-make-sorted/) | -|982 | 使数组唯一的最小增量 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/minimum-increment-to-make-array-unique.rs) | [leetcode](https://leetcode-cn.com/problems/minimum-increment-to-make-array-unique/) | -|1002 | 最大宽度坡 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-width-ramp.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-width-ramp/) | -|1005 | 单值二叉树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/univalued-binary-tree.rs) | [leetcode](https://leetcode-cn.com/problems/univalued-binary-tree/) | -|1007 | 连续差相同的数字 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/numbers-with-same-consecutive-differences.rs) | [leetcode](https://leetcode-cn.com/problems/numbers-with-same-consecutive-differences/) | -|1046 | 最大连续1的个数 III | [src](https://github.com/rustors/leetcode/blob/main/src/bin/max-consecutive-ones-iii.rs) | [leetcode](https://leetcode-cn.com/problems/max-consecutive-ones-iii/) | -|1050 | 前序遍历构造二叉搜索树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/construct-binary-search-tree-from-preorder-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/construct-binary-search-tree-from-preorder-traversal/) | -|1054 | 十进制整数的反码 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/complement-of-base-10-integer.rs) | [leetcode](https://leetcode-cn.com/problems/complement-of-base-10-integer/) | -|1072 | 链表中的下一个更大节点 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/next-greater-node-in-linked-list.rs) | [leetcode](https://leetcode-cn.com/problems/next-greater-node-in-linked-list/) | -|1119 | 困于环中的机器人 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/robot-bounded-in-circle.rs) | [leetcode](https://leetcode-cn.com/problems/robot-bounded-in-circle/) | -|1128 | 删除字符串中的所有相邻重复项 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-all-adjacent-duplicates-in-string.rs) | [leetcode](https://leetcode-cn.com/problems/remove-all-adjacent-duplicates-in-string/) | -|1157 | 根到叶路径上的不足节点 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/insufficient-nodes-in-root-to-leaf-paths.rs) | [leetcode](https://leetcode-cn.com/problems/insufficient-nodes-in-root-to-leaf-paths/) | -|1210 | 删除某些元素后的数组均值 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/mean-of-array-after-removing-some-elements.rs) | [leetcode](https://leetcode-cn.com/problems/mean-of-array-after-removing-some-elements/) | -|1238 | 字母板上的路径 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/alphabet-board-path.rs) | [leetcode](https://leetcode-cn.com/problems/alphabet-board-path/) | -|1287 | 公交站间的距离 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/distance-between-bus-stops.rs) | [leetcode](https://leetcode-cn.com/problems/distance-between-bus-stops/) | -|1320 | 删除字符串中的所有相邻重复项 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-all-adjacent-duplicates-in-string-ii.rs) | [leetcode](https://leetcode-cn.com/problems/remove-all-adjacent-duplicates-in-string-ii/) | -|1341 | 分割平衡字符串 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/split-a-string-in-balanced-strings.rs) | [leetcode](https://leetcode-cn.com/problems/split-a-string-in-balanced-strings/) | -|1362 | 飞机座位分配概率 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/airplane-seat-assignment-probability.rs) | [leetcode](https://leetcode-cn.com/problems/airplane-seat-assignment-probability/) | -|1370 | 统计「优美子数组」 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/count-number-of-nice-subarrays.rs) | [leetcode](https://leetcode-cn.com/problems/count-number-of-nice-subarrays/) | -|1371 | 移除无效的括号 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/minimum-remove-to-make-valid-parentheses.rs) | [leetcode](https://leetcode-cn.com/problems/minimum-remove-to-make-valid-parentheses/) | -|1379 | 重构 2 行二进制矩阵 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/reconstruct-a-2-row-binary-matrix.rs) | [leetcode](https://leetcode-cn.com/problems/reconstruct-a-2-row-binary-matrix/) | -|1387 | 在受污染的二叉树中查找元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/find-elements-in-a-contaminated-binary-tree.rs) | [leetcode](https://leetcode-cn.com/problems/find-elements-in-a-contaminated-binary-tree/) | -|1411 | 二进制链表转整数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/convert-binary-number-in-a-linked-list-to-integer.rs) | [leetcode](https://leetcode-cn.com/problems/convert-binary-number-in-a-linked-list-to-integer/) | -|1426 | 和为零的N个唯一整数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/find-n-unique-integers-sum-up-to-zero.rs) | [leetcode](https://leetcode-cn.com/problems/find-n-unique-integers-sum-up-to-zero/) | -|1428 | 跳跃游戏 III | [src](https://github.com/rustors/leetcode/blob/main/src/bin/jump-game-iii.rs) | [leetcode](https://leetcode-cn.com/problems/jump-game-iii/) | -|1434 | 解码字母到整数映射 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/decrypt-string-from-alphabet-to-integer-mapping.rs) | [leetcode](https://leetcode-cn.com/problems/decrypt-string-from-alphabet-to-integer-mapping/) | -|1441 | 或运算的最小翻转次数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/minimum-flips-to-make-a-or-b-equal-to-c.rs) | [leetcode](https://leetcode-cn.com/problems/minimum-flips-to-make-a-or-b-equal-to-c/) | -|1468 | 检查整数及其两倍数是否存在 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/check-if-n-and-its-double-exist.rs) | [leetcode](https://leetcode-cn.com/problems/check-if-n-and-its-double-exist/) | -|1537 | 分割字符串的最大得分 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-score-after-splitting-a-string.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-score-after-splitting-a-string/) | -|1538 | 可获得的最大点数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-points-you-can-obtain-from-cards.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-points-you-can-obtain-from-cards/) | -|1552 | 用栈操作构建数组 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/build-an-array-with-stack-operations.rs) | [leetcode](https://leetcode-cn.com/problems/build-an-array-with-stack-operations/) | -|1566 | 检查单词是否为句中其他单词的前缀 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/check-if-a-word-occurs-as-a-prefix-of-any-word-in-a-sentence.rs) | [leetcode](https://leetcode-cn.com/problems/check-if-a-word-occurs-as-a-prefix-of-any-word-in-a-sentence/) | -|1567 | 定长子串中元音的最大数目 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-number-of-vowels-in-a-substring-of-given-length.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-number-of-vowels-in-a-substring-of-given-length/) | -|1603 | 一维数组的动态和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/running-sum-of-1d-array.rs) | [leetcode](https://leetcode-cn.com/problems/running-sum-of-1d-array/) | -|1604 | 不同整数的最少数目 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/least-number-of-unique-integers-after-k-removals.rs) | [leetcode](https://leetcode-cn.com/problems/least-number-of-unique-integers-after-k-removals/) | -|1620 | 检查数组对是否可以被 k 整除 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/check-if-array-pairs-are-divisible-by-k.rs) | [leetcode](https://leetcode-cn.com/problems/check-if-array-pairs-are-divisible-by-k/) | -|1642 | 换酒问题 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/water-bottles.rs) | [leetcode](https://leetcode-cn.com/problems/water-bottles/) | -|1656 | 统计好三元组 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/count-good-triplets.rs) | [leetcode](https://leetcode-cn.com/problems/count-good-triplets/) | -|1660 | 千位分隔数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/thousand-separator.rs) | [leetcode](https://leetcode-cn.com/problems/thousand-separator/) | -|1666 | 整理字符串 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/make-the-string-great.rs) | [leetcode](https://leetcode-cn.com/problems/make-the-string-great/) | -|1791 | 最富有客户的资产总量 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/richest-customer-wealth.rs) | [leetcode](https://leetcode-cn.com/problems/richest-customer-wealth/) | -|1797 | 设计 Goal 解析器 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/goal-parser-interpretation.rs) | [leetcode](https://leetcode-cn.com/problems/goal-parser-interpretation/) | -|1806 | 比赛中的配对次数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/count-of-matches-in-tournament.rs) | [leetcode](https://leetcode-cn.com/problems/count-of-matches-in-tournament/) | -|1807 | 十-二进制数的最少数目 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/partitioning-into-minimum-number-of-deci-binary-numbers.rs) | [leetcode](https://leetcode-cn.com/problems/partitioning-into-minimum-number-of-deci-binary-numbers/) | -|1983 | 人口最多的年份 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-population-year.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-population-year/) | -|100273 | 用两个栈实现队列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/yong-liang-ge-zhan-shi-xian-dui-lie-lcof.rs) | [leetcode](https://leetcode-cn.com/problems/yong-liang-ge-zhan-shi-xian-dui-lie-lcof/) | -|100274 | 斐波那契数列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/fei-bo-na-qi-shu-lie-lcof.rs) | [leetcode](https://leetcode-cn.com/problems/fei-bo-na-qi-shu-lie-lcof/) | -|100299 | 删除链表的节点 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/shan-chu-lian-biao-de-jie-dian-lcof.rs) | [leetcode](https://leetcode-cn.com/problems/shan-chu-lian-biao-de-jie-dian-lcof/) | -|100316 | 第一个只出现一次的字符 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/di-yi-ge-zhi-chu-xian-yi-ci-de-zi-fu-lcof.rs) | [leetcode](https://leetcode-cn.com/problems/di-yi-ge-zhi-chu-xian-yi-ci-de-zi-fu-lcof/) | -|100325 | 把数字翻译成字符串 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/ba-shu-zi-fan-yi-cheng-zi-fu-chuan-lcof.rs) | [leetcode](https://leetcode-cn.com/problems/ba-shu-zi-fan-yi-cheng-zi-fu-chuan-lcof/) | -|100333 | 二叉搜索树的第k大节点 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/er-cha-sou-suo-shu-de-di-kda-jie-dian-lcof.rs) | [leetcode](https://leetcode-cn.com/problems/er-cha-sou-suo-shu-de-di-kda-jie-dian-lcof/) | -|100344 | 股票的最大利润 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/gu-piao-de-zui-da-li-run-lcof.rs) | [leetcode](https://leetcode-cn.com/problems/gu-piao-de-zui-da-li-run-lcof/) | -|100345 | 求1+2+…+n | [src](https://github.com/rustors/leetcode/blob/main/src/bin/qiu-12n-lcof.rs) | [leetcode](https://leetcode-cn.com/problems/qiu-12n-lcof/) | -|100349 | 最大数值 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-lcci.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-lcci/) | -|100352 | 跳水板 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/diving-board-lcci.rs) | [leetcode](https://leetcode-cn.com/problems/diving-board-lcci/) | -|100353 | 平分正方形 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/bisect-squares-lcci.rs) | [leetcode](https://leetcode-cn.com/problems/bisect-squares-lcci/) | -|1000063 | 传递信息 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/chuan-di-xin-xi.rs) | [leetcode](https://leetcode-cn.com/problems/chuan-di-xin-xi/) | +| 编号 | 题目 | 描述 | 代码 | 难度 | +| ---- | ---- | ---- | ---- | ---- | +|1 | 两数之和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/two-sum.rs) | [leetcode](https://leetcode-cn.com/problems/two-sum/) | Easy | +|2 | 两数相加 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/add-two-numbers.rs) | [leetcode](https://leetcode-cn.com/problems/add-two-numbers/) | Medium | +|3 | 无重复字符的最长子串 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/longest-substring-without-repeating-characters.rs) | [leetcode](https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/) | Medium | +|4 | 寻找两个正序数组的中位数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/median-of-two-sorted-arrays.rs) | [leetcode](https://leetcode-cn.com/problems/median-of-two-sorted-arrays/) | Hard | +|6 | Z 字形变换 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/zigzag-conversion.rs) | [leetcode](https://leetcode-cn.com/problems/zigzag-conversion/) | Medium | +|7 | 整数反转 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/reverse-integer.rs) | [leetcode](https://leetcode-cn.com/problems/reverse-integer/) | Easy | +|8 | 字符串转换整数 (atoi) | [src](https://github.com/rustors/leetcode/blob/main/src/bin/string-to-integer-atoi.rs) | [leetcode](https://leetcode-cn.com/problems/string-to-integer-atoi/) | Medium | +|9 | 回文数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/palindrome-number.rs) | [leetcode](https://leetcode-cn.com/problems/palindrome-number/) | Easy | +|11 | 盛最多水的容器 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/container-with-most-water.rs) | [leetcode](https://leetcode-cn.com/problems/container-with-most-water/) | Medium | +|12 | 整数转罗马数字 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/integer-to-roman.rs) | [leetcode](https://leetcode-cn.com/problems/integer-to-roman/) | Medium | +|13 | 罗马数字转整数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/roman-to-integer.rs) | [leetcode](https://leetcode-cn.com/problems/roman-to-integer/) | Easy | +|14 | 最长公共前缀 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/longest-common-prefix.rs) | [leetcode](https://leetcode-cn.com/problems/longest-common-prefix/) | Easy | +|15 | 三数之和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/3sum.rs) | [leetcode](https://leetcode-cn.com/problems/3sum/) | Medium | +|16 | 最接近的三数之和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/3sum-closest.rs) | [leetcode](https://leetcode-cn.com/problems/3sum-closest/) | Medium | +|17 | 电话号码的字母组合 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/letter-combinations-of-a-phone-number.rs) | [leetcode](https://leetcode-cn.com/problems/letter-combinations-of-a-phone-number/) | Medium | +|18 | 四数之和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/4sum.rs) | [leetcode](https://leetcode-cn.com/problems/4sum/) | Medium | +|19 | 删除链表的倒数第 N 个结点 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-nth-node-from-end-of-list.rs) | [leetcode](https://leetcode-cn.com/problems/remove-nth-node-from-end-of-list/) | Medium | +|20 | 有效的括号 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/valid-parentheses.rs) | [leetcode](https://leetcode-cn.com/problems/valid-parentheses/) | Easy | +|21 | 合并两个有序链表 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/merge-two-sorted-lists.rs) | [leetcode](https://leetcode-cn.com/problems/merge-two-sorted-lists/) | Easy | +|23 | 合并K个升序链表 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/merge-k-sorted-lists.rs) | [leetcode](https://leetcode-cn.com/problems/merge-k-sorted-lists/) | Hard | +|24 | 两两交换链表中的节点 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/swap-nodes-in-pairs.rs) | [leetcode](https://leetcode-cn.com/problems/swap-nodes-in-pairs/) | Medium | +|25 | K 个一组翻转链表 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/reverse-nodes-in-k-group.rs) | [leetcode](https://leetcode-cn.com/problems/reverse-nodes-in-k-group/) | Hard | +|26 | 删除有序数组中的重复项 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-duplicates-from-sorted-array.rs) | [leetcode](https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/) | Easy | +|27 | 移除元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-element.rs) | [leetcode](https://leetcode-cn.com/problems/remove-element/) | Easy | +|28 | 实现 strStr() | [src](https://github.com/rustors/leetcode/blob/main/src/bin/implement-strstr.rs) | [leetcode](https://leetcode-cn.com/problems/implement-strstr/) | Easy | +|31 | 下一个排列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/next-permutation.rs) | [leetcode](https://leetcode-cn.com/problems/next-permutation/) | Medium | +|33 | 搜索旋转排序数组 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/search-in-rotated-sorted-array.rs) | [leetcode](https://leetcode-cn.com/problems/search-in-rotated-sorted-array/) | Medium | +|34 | 在排序数组中查找元素的第一个和最后一个位置 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/find-first-and-last-position-of-element-in-sorted-array.rs) | [leetcode](https://leetcode-cn.com/problems/find-first-and-last-position-of-element-in-sorted-array/) | Medium | +|35 | 搜索插入位置 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/search-insert-position.rs) | [leetcode](https://leetcode-cn.com/problems/search-insert-position/) | Easy | +|36 | 有效的数独 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/valid-sudoku.rs) | [leetcode](https://leetcode-cn.com/problems/valid-sudoku/) | Medium | +|38 | 外观数列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/count-and-say.rs) | [leetcode](https://leetcode-cn.com/problems/count-and-say/) | Medium | +|39 | 组合总和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/combination-sum.rs) | [leetcode](https://leetcode-cn.com/problems/combination-sum/) | Medium | +|41 | 缺失的第一个正数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/first-missing-positive.rs) | [leetcode](https://leetcode-cn.com/problems/first-missing-positive/) | Hard | +|43 | 字符串相乘 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/multiply-strings.rs) | [leetcode](https://leetcode-cn.com/problems/multiply-strings/) | Medium | +|45 | 跳跃游戏 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/jump-game-ii.rs) | [leetcode](https://leetcode-cn.com/problems/jump-game-ii/) | Medium | +|46 | 全排列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/permutations.rs) | [leetcode](https://leetcode-cn.com/problems/permutations/) | Medium | +|48 | 旋转图像 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/rotate-image.rs) | [leetcode](https://leetcode-cn.com/problems/rotate-image/) | Medium | +|49 | 字母异位词分组 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/group-anagrams.rs) | [leetcode](https://leetcode-cn.com/problems/group-anagrams/) | Medium | +|50 | Pow(x, n) | [src](https://github.com/rustors/leetcode/blob/main/src/bin/powx-n.rs) | [leetcode](https://leetcode-cn.com/problems/powx-n/) | Medium | +|51 | N 皇后 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/n-queens.rs) | [leetcode](https://leetcode-cn.com/problems/n-queens/) | Hard | +|52 | N皇后 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/n-queens-ii.rs) | [leetcode](https://leetcode-cn.com/problems/n-queens-ii/) | Hard | +|53 | 最大子序和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-subarray.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-subarray/) | Easy | +|55 | 跳跃游戏 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/jump-game.rs) | [leetcode](https://leetcode-cn.com/problems/jump-game/) | Medium | +|56 | 合并区间 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/merge-intervals.rs) | [leetcode](https://leetcode-cn.com/problems/merge-intervals/) | Medium | +|57 | 插入区间 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/insert-interval.rs) | [leetcode](https://leetcode-cn.com/problems/insert-interval/) | Medium | +|58 | 最后一个单词的长度 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/length-of-last-word.rs) | [leetcode](https://leetcode-cn.com/problems/length-of-last-word/) | Easy | +|62 | 不同路径 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/unique-paths.rs) | [leetcode](https://leetcode-cn.com/problems/unique-paths/) | Medium | +|63 | 不同路径 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/unique-paths-ii.rs) | [leetcode](https://leetcode-cn.com/problems/unique-paths-ii/) | Medium | +|64 | 最小路径和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/minimum-path-sum.rs) | [leetcode](https://leetcode-cn.com/problems/minimum-path-sum/) | Medium | +|66 | 加一 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/plus-one.rs) | [leetcode](https://leetcode-cn.com/problems/plus-one/) | Easy | +|67 | 二进制求和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/add-binary.rs) | [leetcode](https://leetcode-cn.com/problems/add-binary/) | Easy | +|69 | x 的平方根 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/sqrtx.rs) | [leetcode](https://leetcode-cn.com/problems/sqrtx/) | Easy | +|70 | 爬楼梯 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/climbing-stairs.rs) | [leetcode](https://leetcode-cn.com/problems/climbing-stairs/) | Easy | +|71 | 简化路径 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/simplify-path.rs) | [leetcode](https://leetcode-cn.com/problems/simplify-path/) | Medium | +|73 | 矩阵置零 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/set-matrix-zeroes.rs) | [leetcode](https://leetcode-cn.com/problems/set-matrix-zeroes/) | Medium | +|74 | 搜索二维矩阵 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/search-a-2d-matrix.rs) | [leetcode](https://leetcode-cn.com/problems/search-a-2d-matrix/) | Medium | +|75 | 颜色分类 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/sort-colors.rs) | [leetcode](https://leetcode-cn.com/problems/sort-colors/) | Medium | +|77 | 组合 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/combinations.rs) | [leetcode](https://leetcode-cn.com/problems/combinations/) | Medium | +|78 | 子集 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/subsets.rs) | [leetcode](https://leetcode-cn.com/problems/subsets/) | Medium | +|79 | 单词搜索 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/word-search.rs) | [leetcode](https://leetcode-cn.com/problems/word-search/) | Medium | +|80 | 删除有序数组中的重复项 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-duplicates-from-sorted-array-ii.rs) | [leetcode](https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array-ii/) | Medium | +|81 | 搜索旋转排序数组 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/search-in-rotated-sorted-array-ii.rs) | [leetcode](https://leetcode-cn.com/problems/search-in-rotated-sorted-array-ii/) | Medium | +|82 | 删除排序链表中的重复元素 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-duplicates-from-sorted-list-ii.rs) | [leetcode](https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list-ii/) | Medium | +|83 | 删除排序链表中的重复元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-duplicates-from-sorted-list.rs) | [leetcode](https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list/) | Easy | +|88 | 合并两个有序数组 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/merge-sorted-array.rs) | [leetcode](https://leetcode-cn.com/problems/merge-sorted-array/) | Easy | +|89 | 格雷编码 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/gray-code.rs) | [leetcode](https://leetcode-cn.com/problems/gray-code/) | Medium | +|91 | 解码方法 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/decode-ways.rs) | [leetcode](https://leetcode-cn.com/problems/decode-ways/) | Medium | +|93 | 复原 IP 地址 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/restore-ip-addresses.rs) | [leetcode](https://leetcode-cn.com/problems/restore-ip-addresses/) | Medium | +|94 | 二叉树的中序遍历 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-tree-inorder-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/binary-tree-inorder-traversal/) | Easy | +|95 | 不同的二叉搜索树 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/unique-binary-search-trees-ii.rs) | [leetcode](https://leetcode-cn.com/problems/unique-binary-search-trees-ii/) | Medium | +|96 | 不同的二叉搜索树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/unique-binary-search-trees.rs) | [leetcode](https://leetcode-cn.com/problems/unique-binary-search-trees/) | Medium | +|98 | 验证二叉搜索树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/validate-binary-search-tree.rs) | [leetcode](https://leetcode-cn.com/problems/validate-binary-search-tree/) | Medium | +|100 | 相同的树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/same-tree.rs) | [leetcode](https://leetcode-cn.com/problems/same-tree/) | Easy | +|101 | 对称二叉树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/symmetric-tree.rs) | [leetcode](https://leetcode-cn.com/problems/symmetric-tree/) | Easy | +|102 | 二叉树的层序遍历 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-tree-level-order-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/binary-tree-level-order-traversal/) | Medium | +|103 | 二叉树的锯齿形层序遍历 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-tree-zigzag-level-order-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/binary-tree-zigzag-level-order-traversal/) | Medium | +|104 | 二叉树的最大深度 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-depth-of-binary-tree.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-depth-of-binary-tree/) | Easy | +|105 | 从前序与中序遍历序列构造二叉树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/construct-binary-tree-from-preorder-and-inorder-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/) | Medium | +|106 | 从中序与后序遍历序列构造二叉树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/construct-binary-tree-from-inorder-and-postorder-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/construct-binary-tree-from-inorder-and-postorder-traversal/) | Medium | +|107 | 二叉树的层序遍历 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-tree-level-order-traversal-ii.rs) | [leetcode](https://leetcode-cn.com/problems/binary-tree-level-order-traversal-ii/) | Medium | +|108 | 将有序数组转换为二叉搜索树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/convert-sorted-array-to-binary-search-tree.rs) | [leetcode](https://leetcode-cn.com/problems/convert-sorted-array-to-binary-search-tree/) | Easy | +|110 | 平衡二叉树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/balanced-binary-tree.rs) | [leetcode](https://leetcode-cn.com/problems/balanced-binary-tree/) | Easy | +|111 | 二叉树的最小深度 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/minimum-depth-of-binary-tree.rs) | [leetcode](https://leetcode-cn.com/problems/minimum-depth-of-binary-tree/) | Easy | +|112 | 路径总和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/path-sum.rs) | [leetcode](https://leetcode-cn.com/problems/path-sum/) | Easy | +|113 | 路径总和 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/path-sum-ii.rs) | [leetcode](https://leetcode-cn.com/problems/path-sum-ii/) | Medium | +|118 | 杨辉三角 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/pascals-triangle.rs) | [leetcode](https://leetcode-cn.com/problems/pascals-triangle/) | Easy | +|119 | 杨辉三角 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/pascals-triangle-ii.rs) | [leetcode](https://leetcode-cn.com/problems/pascals-triangle-ii/) | Easy | +|120 | 三角形最小路径和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/triangle.rs) | [leetcode](https://leetcode-cn.com/problems/triangle/) | Medium | +|121 | 买卖股票的最佳时机 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/best-time-to-buy-and-sell-stock.rs) | [leetcode](https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock/) | Easy | +|122 | 买卖股票的最佳时机 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/best-time-to-buy-and-sell-stock-ii.rs) | [leetcode](https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-ii/) | Easy | +|125 | 验证回文串 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/valid-palindrome.rs) | [leetcode](https://leetcode-cn.com/problems/valid-palindrome/) | Easy | +|129 | 求根节点到叶节点数字之和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/sum-root-to-leaf-numbers.rs) | [leetcode](https://leetcode-cn.com/problems/sum-root-to-leaf-numbers/) | Medium | +|136 | 只出现一次的数字 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/single-number.rs) | [leetcode](https://leetcode-cn.com/problems/single-number/) | Easy | +|137 | 只出现一次的数字 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/single-number-ii.rs) | [leetcode](https://leetcode-cn.com/problems/single-number-ii/) | Medium | +|144 | 二叉树的前序遍历 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-tree-preorder-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/binary-tree-preorder-traversal/) | Easy | +|145 | 二叉树的后序遍历 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-tree-postorder-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/binary-tree-postorder-traversal/) | Easy | +|150 | 逆波兰表达式求值 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/evaluate-reverse-polish-notation.rs) | [leetcode](https://leetcode-cn.com/problems/evaluate-reverse-polish-notation/) | Medium | +|151 | 翻转字符串里的单词 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/reverse-words-in-a-string.rs) | [leetcode](https://leetcode-cn.com/problems/reverse-words-in-a-string/) | Medium | +|152 | 乘积最大子数组 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-product-subarray.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-product-subarray/) | Medium | +|153 | 寻找旋转排序数组中的最小值 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/find-minimum-in-rotated-sorted-array.rs) | [leetcode](https://leetcode-cn.com/problems/find-minimum-in-rotated-sorted-array/) | Medium | +|155 | 最小栈 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/min-stack.rs) | [leetcode](https://leetcode-cn.com/problems/min-stack/) | Easy | +|162 | 寻找峰值 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/find-peak-element.rs) | [leetcode](https://leetcode-cn.com/problems/find-peak-element/) | Medium | +|165 | 比较版本号 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/compare-version-numbers.rs) | [leetcode](https://leetcode-cn.com/problems/compare-version-numbers/) | Medium | +|166 | 分数到小数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/fraction-to-recurring-decimal.rs) | [leetcode](https://leetcode-cn.com/problems/fraction-to-recurring-decimal/) | Medium | +|167 | 两数之和 II - 输入有序数组 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/two-sum-ii-input-array-is-sorted.rs) | [leetcode](https://leetcode-cn.com/problems/two-sum-ii-input-array-is-sorted/) | Easy | +|168 | Excel表列名称 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/excel-sheet-column-title.rs) | [leetcode](https://leetcode-cn.com/problems/excel-sheet-column-title/) | Easy | +|169 | 多数元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/majority-element.rs) | [leetcode](https://leetcode-cn.com/problems/majority-element/) | Easy | +|171 | Excel表列序号 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/excel-sheet-column-number.rs) | [leetcode](https://leetcode-cn.com/problems/excel-sheet-column-number/) | Easy | +|172 | 阶乘后的零 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/factorial-trailing-zeroes.rs) | [leetcode](https://leetcode-cn.com/problems/factorial-trailing-zeroes/) | Easy | +|173 | 二叉搜索树迭代器 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-search-tree-iterator.rs) | [leetcode](https://leetcode-cn.com/problems/binary-search-tree-iterator/) | Medium | +|187 | 重复的DNA序列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/repeated-dna-sequences.rs) | [leetcode](https://leetcode-cn.com/problems/repeated-dna-sequences/) | Medium | +|190 | 颠倒二进制位 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/reverse-bits.rs) | [leetcode](https://leetcode-cn.com/problems/reverse-bits/) | Easy | +|191 | 位1的个数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/number-of-1-bits.rs) | [leetcode](https://leetcode-cn.com/problems/number-of-1-bits/) | Easy | +|198 | 打家劫舍 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/house-robber.rs) | [leetcode](https://leetcode-cn.com/problems/house-robber/) | Medium | +|199 | 二叉树的右视图 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-tree-right-side-view.rs) | [leetcode](https://leetcode-cn.com/problems/binary-tree-right-side-view/) | Medium | +|200 | 岛屿数量 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/number-of-islands.rs) | [leetcode](https://leetcode-cn.com/problems/number-of-islands/) | Medium | +|201 | 数字范围按位与 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/bitwise-and-of-numbers-range.rs) | [leetcode](https://leetcode-cn.com/problems/bitwise-and-of-numbers-range/) | Medium | +|202 | 快乐数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/happy-number.rs) | [leetcode](https://leetcode-cn.com/problems/happy-number/) | Easy | +|203 | 移除链表元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-linked-list-elements.rs) | [leetcode](https://leetcode-cn.com/problems/remove-linked-list-elements/) | Easy | +|204 | 计数质数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/count-primes.rs) | [leetcode](https://leetcode-cn.com/problems/count-primes/) | Easy | +|205 | 同构字符串 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/isomorphic-strings.rs) | [leetcode](https://leetcode-cn.com/problems/isomorphic-strings/) | Easy | +|206 | 反转链表 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/reverse-linked-list.rs) | [leetcode](https://leetcode-cn.com/problems/reverse-linked-list/) | Easy | +|208 | 实现 Trie (前缀树) | [src](https://github.com/rustors/leetcode/blob/main/src/bin/implement-trie-prefix-tree.rs) | [leetcode](https://leetcode-cn.com/problems/implement-trie-prefix-tree/) | Medium | +|211 | 添加与搜索单词 - 数据结构设计 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/design-add-and-search-words-data-structure.rs) | [leetcode](https://leetcode-cn.com/problems/design-add-and-search-words-data-structure/) | Medium | +|213 | 打家劫舍 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/house-robber-ii.rs) | [leetcode](https://leetcode-cn.com/problems/house-robber-ii/) | Medium | +|215 | 数组中的第K个最大元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/kth-largest-element-in-an-array.rs) | [leetcode](https://leetcode-cn.com/problems/kth-largest-element-in-an-array/) | Medium | +|216 | 组合总和 III | [src](https://github.com/rustors/leetcode/blob/main/src/bin/combination-sum-iii.rs) | [leetcode](https://leetcode-cn.com/problems/combination-sum-iii/) | Medium | +|217 | 存在重复元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/contains-duplicate.rs) | [leetcode](https://leetcode-cn.com/problems/contains-duplicate/) | Easy | +|219 | 存在重复元素 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/contains-duplicate-ii.rs) | [leetcode](https://leetcode-cn.com/problems/contains-duplicate-ii/) | Easy | +|222 | 完全二叉树的节点个数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/count-complete-tree-nodes.rs) | [leetcode](https://leetcode-cn.com/problems/count-complete-tree-nodes/) | Medium | +|223 | 矩形面积 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/rectangle-area.rs) | [leetcode](https://leetcode-cn.com/problems/rectangle-area/) | Medium | +|225 | 用队列实现栈 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/implement-stack-using-queues.rs) | [leetcode](https://leetcode-cn.com/problems/implement-stack-using-queues/) | Easy | +|226 | 翻转二叉树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/invert-binary-tree.rs) | [leetcode](https://leetcode-cn.com/problems/invert-binary-tree/) | Easy | +|228 | 汇总区间 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/summary-ranges.rs) | [leetcode](https://leetcode-cn.com/problems/summary-ranges/) | Easy | +|229 | 求众数 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/majority-element-ii.rs) | [leetcode](https://leetcode-cn.com/problems/majority-element-ii/) | Medium | +|230 | 二叉搜索树中第K小的元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/kth-smallest-element-in-a-bst.rs) | [leetcode](https://leetcode-cn.com/problems/kth-smallest-element-in-a-bst/) | Medium | +|231 | 2 的幂 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/power-of-two.rs) | [leetcode](https://leetcode-cn.com/problems/power-of-two/) | Easy | +|232 | 用栈实现队列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/implement-queue-using-stacks.rs) | [leetcode](https://leetcode-cn.com/problems/implement-queue-using-stacks/) | Easy | +|234 | 回文链表 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/palindrome-linked-list.rs) | [leetcode](https://leetcode-cn.com/problems/palindrome-linked-list/) | Easy | +|235 | 二叉搜索树的最近公共祖先 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/lowest-common-ancestor-of-a-binary-search-tree.rs) | [leetcode](https://leetcode-cn.com/problems/lowest-common-ancestor-of-a-binary-search-tree/) | Easy | +|238 | 除自身以外数组的乘积 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/product-of-array-except-self.rs) | [leetcode](https://leetcode-cn.com/problems/product-of-array-except-self/) | Medium | +|242 | 有效的字母异位词 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/valid-anagram.rs) | [leetcode](https://leetcode-cn.com/problems/valid-anagram/) | Easy | +|257 | 二叉树的所有路径 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/binary-tree-paths.rs) | [leetcode](https://leetcode-cn.com/problems/binary-tree-paths/) | Easy | +|258 | 各位相加 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/add-digits.rs) | [leetcode](https://leetcode-cn.com/problems/add-digits/) | Easy | +|263 | 丑数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/ugly-number.rs) | [leetcode](https://leetcode-cn.com/problems/ugly-number/) | Easy | +|268 | 丢失的数字 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/missing-number.rs) | [leetcode](https://leetcode-cn.com/problems/missing-number/) | Easy | +|274 | H 指数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/h-index.rs) | [leetcode](https://leetcode-cn.com/problems/h-index/) | Medium | +|278 | 第一个错误的版本 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/first-bad-version.rs) | [leetcode](https://leetcode-cn.com/problems/first-bad-version/) | Easy | +|279 | 完全平方数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/perfect-squares.rs) | [leetcode](https://leetcode-cn.com/problems/perfect-squares/) | Medium | +|290 | 单词规律 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/word-pattern.rs) | [leetcode](https://leetcode-cn.com/problems/word-pattern/) | Easy | +|303 | 区域和检索 - 数组不可变 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/range-sum-query-immutable.rs) | [leetcode](https://leetcode-cn.com/problems/range-sum-query-immutable/) | Easy | +|318 | 最大单词长度乘积 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-product-of-word-lengths.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-product-of-word-lengths/) | Medium | +|319 | 灯泡开关 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/bulb-switcher.rs) | [leetcode](https://leetcode-cn.com/problems/bulb-switcher/) | Medium | +|326 | 3的幂 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/power-of-three.rs) | [leetcode](https://leetcode-cn.com/problems/power-of-three/) | Easy | +|349 | 两个数组的交集 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/intersection-of-two-arrays.rs) | [leetcode](https://leetcode-cn.com/problems/intersection-of-two-arrays/) | Easy | +|350 | 两个数组的交集 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/intersection-of-two-arrays-ii.rs) | [leetcode](https://leetcode-cn.com/problems/intersection-of-two-arrays-ii/) | Easy | +|357 | 计算各个位数不同的数字个数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/count-numbers-with-unique-digits.rs) | [leetcode](https://leetcode-cn.com/problems/count-numbers-with-unique-digits/) | Medium | +|367 | 有效的完全平方数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/valid-perfect-square.rs) | [leetcode](https://leetcode-cn.com/problems/valid-perfect-square/) | Easy | +|371 | 两整数之和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/sum-of-two-integers.rs) | [leetcode](https://leetcode-cn.com/problems/sum-of-two-integers/) | Medium | +|374 | 猜数字大小 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/guess-number-higher-or-lower.rs) | [leetcode](https://leetcode-cn.com/problems/guess-number-higher-or-lower/) | Easy | +|387 | 字符串中的第一个唯一字符 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/first-unique-character-in-a-string.rs) | [leetcode](https://leetcode-cn.com/problems/first-unique-character-in-a-string/) | Easy | +|404 | 左叶子之和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/sum-of-left-leaves.rs) | [leetcode](https://leetcode-cn.com/problems/sum-of-left-leaves/) | Easy | +|419 | 甲板上的战舰 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/battleships-in-a-board.rs) | [leetcode](https://leetcode-cn.com/problems/battleships-in-a-board/) | Medium | +|423 | 从英文中重建数字 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/reconstruct-original-digits-from-english.rs) | [leetcode](https://leetcode-cn.com/problems/reconstruct-original-digits-from-english/) | Medium | +|434 | 字符串中的单词数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/number-of-segments-in-a-string.rs) | [leetcode](https://leetcode-cn.com/problems/number-of-segments-in-a-string/) | Easy | +|476 | 数字的补数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/number-complement.rs) | [leetcode](https://leetcode-cn.com/problems/number-complement/) | Easy | +|481 | 神奇字符串 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/magical-string.rs) | [leetcode](https://leetcode-cn.com/problems/magical-string/) | Medium | +|500 | 键盘行 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/keyboard-row.rs) | [leetcode](https://leetcode-cn.com/problems/keyboard-row/) | Easy | +|520 | 检测大写字母 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/detect-capital.rs) | [leetcode](https://leetcode-cn.com/problems/detect-capital/) | Easy | +|528 | 交换链表中的节点 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/swapping-nodes-in-a-linked-list.rs) | [leetcode](https://leetcode-cn.com/problems/swapping-nodes-in-a-linked-list/) | Medium | +|551 | 学生出勤记录 I | [src](https://github.com/rustors/leetcode/blob/main/src/bin/student-attendance-record-i.rs) | [leetcode](https://leetcode-cn.com/problems/student-attendance-record-i/) | Easy | +|560 | 和为K的子数组 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/subarray-sum-equals-k.rs) | [leetcode](https://leetcode-cn.com/problems/subarray-sum-equals-k/) | Medium | +|565 | 数组嵌套 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/array-nesting.rs) | [leetcode](https://leetcode-cn.com/problems/array-nesting/) | Medium | +|594 | 最长和谐子序列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/longest-harmonious-subsequence.rs) | [leetcode](https://leetcode-cn.com/problems/longest-harmonious-subsequence/) | Easy | +|617 | 合并二叉树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/merge-two-binary-trees.rs) | [leetcode](https://leetcode-cn.com/problems/merge-two-binary-trees/) | Easy | +|649 | Dota2 参议院 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/dota2-senate.rs) | [leetcode](https://leetcode-cn.com/problems/dota2-senate/) | Medium | +|650 | 只有两个键的键盘 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/2-keys-keyboard.rs) | [leetcode](https://leetcode-cn.com/problems/2-keys-keyboard/) | Medium | +|653 | 两数之和 IV - 输入 BST | [src](https://github.com/rustors/leetcode/blob/main/src/bin/two-sum-iv-input-is-a-bst.rs) | [leetcode](https://leetcode-cn.com/problems/two-sum-iv-input-is-a-bst/) | Easy | +|658 | 找到 K 个最接近的元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/find-k-closest-elements.rs) | [leetcode](https://leetcode-cn.com/problems/find-k-closest-elements/) | Medium | +|674 | 最长连续递增序列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/longest-continuous-increasing-subsequence.rs) | [leetcode](https://leetcode-cn.com/problems/longest-continuous-increasing-subsequence/) | Easy | +|800 | 字母大小写全排列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/letter-case-permutation.rs) | [leetcode](https://leetcode-cn.com/problems/letter-case-permutation/) | Medium | +|825 | 保持城市天际线 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/max-increase-to-keep-city-skyline.rs) | [leetcode](https://leetcode-cn.com/problems/max-increase-to-keep-city-skyline/) | Medium | +|829 | 子域名访问计数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/subdomain-visit-count.rs) | [leetcode](https://leetcode-cn.com/problems/subdomain-visit-count/) | Easy | +|857 | 较大分组的位置 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/positions-of-large-groups.rs) | [leetcode](https://leetcode-cn.com/problems/positions-of-large-groups/) | Easy | +|868 | 推多米诺 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/push-dominoes.rs) | [leetcode](https://leetcode-cn.com/problems/push-dominoes/) | Medium | +|917 | 救生艇 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/boats-to-save-people.rs) | [leetcode](https://leetcode-cn.com/problems/boats-to-save-people/) | Medium | +|921 | 螺旋矩阵 III | [src](https://github.com/rustors/leetcode/blob/main/src/bin/spiral-matrix-iii.rs) | [leetcode](https://leetcode-cn.com/problems/spiral-matrix-iii/) | Medium | +|924 | 公平的糖果棒交换 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/fair-candy-swap.rs) | [leetcode](https://leetcode-cn.com/problems/fair-candy-swap/) | Easy | +|925 | 根据前序和后序遍历构造二叉树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/construct-binary-tree-from-preorder-and-postorder-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/construct-binary-tree-from-preorder-and-postorder-traversal/) | Medium | +|932 | 单调数列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/monotonic-array.rs) | [leetcode](https://leetcode-cn.com/problems/monotonic-array/) | Easy | +|979 | 增减字符串匹配 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/di-string-match.rs) | [leetcode](https://leetcode-cn.com/problems/di-string-match/) | Easy | +|981 | 删列造序 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/delete-columns-to-make-sorted.rs) | [leetcode](https://leetcode-cn.com/problems/delete-columns-to-make-sorted/) | Easy | +|982 | 使数组唯一的最小增量 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/minimum-increment-to-make-array-unique.rs) | [leetcode](https://leetcode-cn.com/problems/minimum-increment-to-make-array-unique/) | Medium | +|1002 | 最大宽度坡 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-width-ramp.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-width-ramp/) | Medium | +|1005 | 单值二叉树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/univalued-binary-tree.rs) | [leetcode](https://leetcode-cn.com/problems/univalued-binary-tree/) | Easy | +|1007 | 连续差相同的数字 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/numbers-with-same-consecutive-differences.rs) | [leetcode](https://leetcode-cn.com/problems/numbers-with-same-consecutive-differences/) | Medium | +|1046 | 最大连续1的个数 III | [src](https://github.com/rustors/leetcode/blob/main/src/bin/max-consecutive-ones-iii.rs) | [leetcode](https://leetcode-cn.com/problems/max-consecutive-ones-iii/) | Medium | +|1050 | 前序遍历构造二叉搜索树 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/construct-binary-search-tree-from-preorder-traversal.rs) | [leetcode](https://leetcode-cn.com/problems/construct-binary-search-tree-from-preorder-traversal/) | Medium | +|1054 | 十进制整数的反码 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/complement-of-base-10-integer.rs) | [leetcode](https://leetcode-cn.com/problems/complement-of-base-10-integer/) | Easy | +|1072 | 链表中的下一个更大节点 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/next-greater-node-in-linked-list.rs) | [leetcode](https://leetcode-cn.com/problems/next-greater-node-in-linked-list/) | Medium | +|1119 | 困于环中的机器人 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/robot-bounded-in-circle.rs) | [leetcode](https://leetcode-cn.com/problems/robot-bounded-in-circle/) | Medium | +|1128 | 删除字符串中的所有相邻重复项 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-all-adjacent-duplicates-in-string.rs) | [leetcode](https://leetcode-cn.com/problems/remove-all-adjacent-duplicates-in-string/) | Easy | +|1157 | 根到叶路径上的不足节点 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/insufficient-nodes-in-root-to-leaf-paths.rs) | [leetcode](https://leetcode-cn.com/problems/insufficient-nodes-in-root-to-leaf-paths/) | Medium | +|1210 | 删除某些元素后的数组均值 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/mean-of-array-after-removing-some-elements.rs) | [leetcode](https://leetcode-cn.com/problems/mean-of-array-after-removing-some-elements/) | Easy | +|1238 | 字母板上的路径 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/alphabet-board-path.rs) | [leetcode](https://leetcode-cn.com/problems/alphabet-board-path/) | Medium | +|1287 | 公交站间的距离 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/distance-between-bus-stops.rs) | [leetcode](https://leetcode-cn.com/problems/distance-between-bus-stops/) | Easy | +|1320 | 删除字符串中的所有相邻重复项 II | [src](https://github.com/rustors/leetcode/blob/main/src/bin/remove-all-adjacent-duplicates-in-string-ii.rs) | [leetcode](https://leetcode-cn.com/problems/remove-all-adjacent-duplicates-in-string-ii/) | Medium | +|1341 | 分割平衡字符串 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/split-a-string-in-balanced-strings.rs) | [leetcode](https://leetcode-cn.com/problems/split-a-string-in-balanced-strings/) | Easy | +|1362 | 飞机座位分配概率 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/airplane-seat-assignment-probability.rs) | [leetcode](https://leetcode-cn.com/problems/airplane-seat-assignment-probability/) | Medium | +|1370 | 统计「优美子数组」 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/count-number-of-nice-subarrays.rs) | [leetcode](https://leetcode-cn.com/problems/count-number-of-nice-subarrays/) | Medium | +|1371 | 移除无效的括号 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/minimum-remove-to-make-valid-parentheses.rs) | [leetcode](https://leetcode-cn.com/problems/minimum-remove-to-make-valid-parentheses/) | Medium | +|1379 | 重构 2 行二进制矩阵 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/reconstruct-a-2-row-binary-matrix.rs) | [leetcode](https://leetcode-cn.com/problems/reconstruct-a-2-row-binary-matrix/) | Medium | +|1387 | 在受污染的二叉树中查找元素 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/find-elements-in-a-contaminated-binary-tree.rs) | [leetcode](https://leetcode-cn.com/problems/find-elements-in-a-contaminated-binary-tree/) | Medium | +|1411 | 二进制链表转整数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/convert-binary-number-in-a-linked-list-to-integer.rs) | [leetcode](https://leetcode-cn.com/problems/convert-binary-number-in-a-linked-list-to-integer/) | Easy | +|1426 | 和为零的N个唯一整数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/find-n-unique-integers-sum-up-to-zero.rs) | [leetcode](https://leetcode-cn.com/problems/find-n-unique-integers-sum-up-to-zero/) | Easy | +|1428 | 跳跃游戏 III | [src](https://github.com/rustors/leetcode/blob/main/src/bin/jump-game-iii.rs) | [leetcode](https://leetcode-cn.com/problems/jump-game-iii/) | Medium | +|1434 | 解码字母到整数映射 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/decrypt-string-from-alphabet-to-integer-mapping.rs) | [leetcode](https://leetcode-cn.com/problems/decrypt-string-from-alphabet-to-integer-mapping/) | Easy | +|1441 | 或运算的最小翻转次数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/minimum-flips-to-make-a-or-b-equal-to-c.rs) | [leetcode](https://leetcode-cn.com/problems/minimum-flips-to-make-a-or-b-equal-to-c/) | Medium | +|1468 | 检查整数及其两倍数是否存在 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/check-if-n-and-its-double-exist.rs) | [leetcode](https://leetcode-cn.com/problems/check-if-n-and-its-double-exist/) | Easy | +|1537 | 分割字符串的最大得分 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-score-after-splitting-a-string.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-score-after-splitting-a-string/) | Easy | +|1538 | 可获得的最大点数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-points-you-can-obtain-from-cards.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-points-you-can-obtain-from-cards/) | Medium | +|1552 | 用栈操作构建数组 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/build-an-array-with-stack-operations.rs) | [leetcode](https://leetcode-cn.com/problems/build-an-array-with-stack-operations/) | Easy | +|1566 | 检查单词是否为句中其他单词的前缀 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/check-if-a-word-occurs-as-a-prefix-of-any-word-in-a-sentence.rs) | [leetcode](https://leetcode-cn.com/problems/check-if-a-word-occurs-as-a-prefix-of-any-word-in-a-sentence/) | Easy | +|1567 | 定长子串中元音的最大数目 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-number-of-vowels-in-a-substring-of-given-length.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-number-of-vowels-in-a-substring-of-given-length/) | Medium | +|1603 | 一维数组的动态和 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/running-sum-of-1d-array.rs) | [leetcode](https://leetcode-cn.com/problems/running-sum-of-1d-array/) | Easy | +|1604 | 不同整数的最少数目 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/least-number-of-unique-integers-after-k-removals.rs) | [leetcode](https://leetcode-cn.com/problems/least-number-of-unique-integers-after-k-removals/) | Medium | +|1620 | 检查数组对是否可以被 k 整除 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/check-if-array-pairs-are-divisible-by-k.rs) | [leetcode](https://leetcode-cn.com/problems/check-if-array-pairs-are-divisible-by-k/) | Medium | +|1642 | 换酒问题 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/water-bottles.rs) | [leetcode](https://leetcode-cn.com/problems/water-bottles/) | Easy | +|1656 | 统计好三元组 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/count-good-triplets.rs) | [leetcode](https://leetcode-cn.com/problems/count-good-triplets/) | Easy | +|1660 | 千位分隔数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/thousand-separator.rs) | [leetcode](https://leetcode-cn.com/problems/thousand-separator/) | Easy | +|1666 | 整理字符串 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/make-the-string-great.rs) | [leetcode](https://leetcode-cn.com/problems/make-the-string-great/) | Easy | +|1791 | 最富有客户的资产总量 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/richest-customer-wealth.rs) | [leetcode](https://leetcode-cn.com/problems/richest-customer-wealth/) | Easy | +|1797 | 设计 Goal 解析器 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/goal-parser-interpretation.rs) | [leetcode](https://leetcode-cn.com/problems/goal-parser-interpretation/) | Easy | +|1806 | 比赛中的配对次数 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/count-of-matches-in-tournament.rs) | [leetcode](https://leetcode-cn.com/problems/count-of-matches-in-tournament/) | Easy | +|1807 | 十-二进制数的最少数目 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/partitioning-into-minimum-number-of-deci-binary-numbers.rs) | [leetcode](https://leetcode-cn.com/problems/partitioning-into-minimum-number-of-deci-binary-numbers/) | Medium | +|1983 | 人口最多的年份 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-population-year.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-population-year/) | Easy | +|100273 | 用两个栈实现队列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/yong-liang-ge-zhan-shi-xian-dui-lie-lcof.rs) | [leetcode](https://leetcode-cn.com/problems/yong-liang-ge-zhan-shi-xian-dui-lie-lcof/) | Easy | +|100274 | 斐波那契数列 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/fei-bo-na-qi-shu-lie-lcof.rs) | [leetcode](https://leetcode-cn.com/problems/fei-bo-na-qi-shu-lie-lcof/) | Easy | +|100299 | 删除链表的节点 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/shan-chu-lian-biao-de-jie-dian-lcof.rs) | [leetcode](https://leetcode-cn.com/problems/shan-chu-lian-biao-de-jie-dian-lcof/) | Easy | +|100316 | 第一个只出现一次的字符 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/di-yi-ge-zhi-chu-xian-yi-ci-de-zi-fu-lcof.rs) | [leetcode](https://leetcode-cn.com/problems/di-yi-ge-zhi-chu-xian-yi-ci-de-zi-fu-lcof/) | Easy | +|100325 | 把数字翻译成字符串 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/ba-shu-zi-fan-yi-cheng-zi-fu-chuan-lcof.rs) | [leetcode](https://leetcode-cn.com/problems/ba-shu-zi-fan-yi-cheng-zi-fu-chuan-lcof/) | Medium | +|100333 | 二叉搜索树的第k大节点 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/er-cha-sou-suo-shu-de-di-kda-jie-dian-lcof.rs) | [leetcode](https://leetcode-cn.com/problems/er-cha-sou-suo-shu-de-di-kda-jie-dian-lcof/) | Easy | +|100344 | 股票的最大利润 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/gu-piao-de-zui-da-li-run-lcof.rs) | [leetcode](https://leetcode-cn.com/problems/gu-piao-de-zui-da-li-run-lcof/) | Medium | +|100345 | 求1+2+…+n | [src](https://github.com/rustors/leetcode/blob/main/src/bin/qiu-12n-lcof.rs) | [leetcode](https://leetcode-cn.com/problems/qiu-12n-lcof/) | Medium | +|100349 | 最大数值 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/maximum-lcci.rs) | [leetcode](https://leetcode-cn.com/problems/maximum-lcci/) | Easy | +|100352 | 跳水板 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/diving-board-lcci.rs) | [leetcode](https://leetcode-cn.com/problems/diving-board-lcci/) | Easy | +|100353 | 平分正方形 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/bisect-squares-lcci.rs) | [leetcode](https://leetcode-cn.com/problems/bisect-squares-lcci/) | Medium | +|1000063 | 传递信息 | [src](https://github.com/rustors/leetcode/blob/main/src/bin/chuan-di-xin-xi.rs) | [leetcode](https://leetcode-cn.com/problems/chuan-di-xin-xi/) | Easy | diff --git a/src/file.rs b/src/file.rs index 2e9ef324..10070d6f 100644 --- a/src/file.rs +++ b/src/file.rs @@ -3,7 +3,7 @@ use std::io::Write; use lazy_static::lazy_static; use regex::Regex; -use crate::http::{Resp, Data, Ques}; +use crate::http::{Resp, Data, Ques, Difficulty}; lazy_static!( static ref RE: Regex = Regex::new(r"\|\s*([0-9]*)\s*\|\s*(.*?)\s*\|.*?bin/(.*?)\.rs.*?\|.*?\|").unwrap(); @@ -77,7 +77,7 @@ fn parse(contents: &str) -> Vec { translated_title: i.get(2).unwrap().as_str().to_string(), title_slug: i.get(3).unwrap().as_str().to_string(), code_snippets: vec![], - difficulty: String::new(), + difficulty: Difficulty::Easy, } }, }) diff --git a/src/http.rs b/src/http.rs index b8a45026..c1ac650a 100644 --- a/src/http.rs +++ b/src/http.rs @@ -1,7 +1,10 @@ use lazy_static::lazy_static; use regex::Regex; use reqwest::blocking::Client; -use serde::{Serialize, Deserialize}; +use serde::{Serialize, Deserialize, Serializer, Deserializer}; +use serde::de::{Error, Visitor}; + +use std::fmt; lazy_static! { @@ -10,6 +13,57 @@ lazy_static! { const URL: &str = "https://leetcode-cn.com/graphql/"; +#[derive(Debug, Eq, PartialEq)] +pub enum Difficulty { + Easy, + Medium, + Hard, +} + +impl Serialize for Difficulty { + fn serialize(&self, serializer: S) -> Result + where + S: Serializer + { + match self { + Self::Easy => serializer.serialize_str("Easy"), + Self::Medium => serializer.serialize_str("Medium"), + Self::Hard => serializer.serialize_str("Hard"), + } + } +} + +struct DifficultyVisitor; + +impl<'de> Visitor<'de> for DifficultyVisitor { + type Value = Difficulty; + + fn expecting(&self, formatter: &mut fmt::Formatter) -> fmt::Result { + write!(formatter, "") + } + + fn visit_str(self, v: &str) -> Result + where + E: Error, + { + match v { + "Easy" => Ok(Self::Value::Easy), + "Medium" => Ok(Self::Value::Medium), + "Hard" => Ok(Self::Value::Hard), + _ => Err(Error::unknown_variant(v, &["Easy", "Medium", "Hard"])), + } + } +} + +impl<'de> Deserialize<'de> for Difficulty { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de> + { + deserializer.deserialize_str(DifficultyVisitor) + } +} + #[derive(Deserialize, Serialize, Debug)] pub struct Ques { #[serde(rename = "questionId")] @@ -21,7 +75,7 @@ pub struct Ques { #[serde(rename = "codeSnippets")] pub code_snippets: Vec, #[serde(rename = "difficulty")] - pub difficulty: String, + pub difficulty: Difficulty, } #[derive(Deserialize, Serialize, Debug)] diff --git a/src/render.rs b/src/render.rs index 6345ff84..353717a9 100644 --- a/src/render.rs +++ b/src/render.rs @@ -4,13 +4,15 @@ use tera::{Tera, Context, Result as TeraResult}; /// 模板内容 const TEMPLATE_STR: &str = r"# leetcode -当前已刷:{{ datas | length }} +| Total | Easy | Medium | Hard | +| :----: | :----: | :----: | :----: | +| {{ datas | length }} | {{ easy_num }} | {{ medium_num }} | {{ hard_num }} | ### 题目 -| 编号 | 题目 | 描述 | 代码 | -| ---- | ----- | ------------------------------------------------------------ | ----------------------------------------------------- | -{% for t in datas %}|{{ t.data.question.questionId }} | {{ t.data.question.translatedTitle }} | [src](https://github.com/rustors/leetcode/blob/main/src/bin/{{ t.data.question.titleSlug }}.rs) | [leetcode](https://leetcode-cn.com/problems/{{ t.data.question.titleSlug }}/) | +| 编号 | 题目 | 描述 | 代码 | 难度 | +| ---- | ---- | ---- | ---- | ---- | +{% for t in datas %}|{{ t.data.question.questionId }} | {{ t.data.question.translatedTitle }} | [src](https://github.com/rustors/leetcode/blob/main/src/bin/{{ t.data.question.titleSlug }}.rs) | [leetcode](https://leetcode-cn.com/problems/{{ t.data.question.titleSlug }}/) | {{ t.data.question.difficulty }} | {% endfor %}"; /// 模板名字 @@ -29,14 +31,26 @@ lazy_static!( /// 把传入的内容渲染为模板内容 pub fn render(data: &[crate::http::Resp]) -> TeraResult { let mut ctx = Context::new(); + + let easy_num = counter(data, |x| x.data.question.difficulty == crate::http::Difficulty::Easy); + let medium_num = counter(data, |x| x.data.question.difficulty == crate::http::Difficulty::Medium); + let hard_num = counter(data, |x| x.data.question.difficulty == crate::http::Difficulty::Hard); + ctx.insert("datas", data); + ctx.insert("easy_num", &easy_num); + ctx.insert("medium_num", &medium_num); + ctx.insert("hard_num", &hard_num); TEMPLATE.render(TEMPLATE_NAME, &ctx) } +fn counter(data: &[crate::http::Resp], f: impl FnMut(&&crate::http::Resp) -> bool) -> usize { + data.into_iter().filter(f).count() +} + #[cfg(test)] mod tests { - use crate::http::{Resp, Ques, Data}; + use crate::http::{Resp, Ques, Data, Difficulty}; use crate::render::render; #[test] @@ -49,7 +63,7 @@ mod tests { title_slug: "aaa".to_string(), translated_title: "中国".to_string(), code_snippets: vec![], - difficulty: String::new(), + difficulty: Difficulty::Easy, } }, },