/Rust-Programming-in-Action

《Rust编程:入门、实战与进阶》源码

Primary LanguageRustApache License 2.0Apache-2.0

数据结构

数组

题号 难度 题目链接 答案链接
11 中等 盛最多水的容器 container-with-most-water
26 简单 删除排序数组中的重复项 remove-duplicates-from-sorted-array
66 简单 加一 plus-one
283 简单 移动零 move-zeroes_bug    move-zeroes_bugfix    move-zeroes_upgrade

链表

题号 难度 题目链接 答案链接
19 中等 删除链表的倒数第N个节点 remove-nth-node-from-end-of-list
21 简单 合并两个有序链表 merge-two-sorted-lists
206 简单 反转链表 reverse-linked-list
876 简单 链表的中间结点 middle-of-the-linked-list

栈与队列

题号 难度 题目链接 答案链接
20 简单 有效的括号 valid-parentheses
155 简单 最小栈 min-stack
239 困难 滑动窗口最大值 sliding-window-maximum

哈希表

题号 难度 题目链接 答案链接
1 简单 两数之和 two-sum    two-sum_upgrade
49 中等 字母异位词分组 group-anagrams    group-anagrams_addition    group-anagrams_upgrade
242 简单 有效的字母异位词 valid-anagram

数据结构 代码实现
二叉树 Binary-Tree
Heap
题号 难度 题目链接 答案链接
94 中等 二叉树的中序遍历 binary-tree-inorder-traversal
102 中等 二叉树的层次遍历 binary-tree-level-order-traversal
144 中等 二叉树的前序遍历 binary-tree-preorder-traversal
145 困难 二叉树的后序遍历 binary-tree-postorder-traversal
701 中等 二叉搜索树中的插入操作 insert-into-a-binary-search-tree

算法

递归、分治与回溯

题号 难度 题目链接 答案链接
22 中等 括号生成 generate-parentheses
50 中等 Pow(x, n) powx-n
51 困难 N皇后 n-queens
70 简单 爬楼梯 climbing stairs
77 中等 组合 combinations
78 中等 子集 subsets

二分查找

题号 难度 题目链接 答案链接
33 中等 搜索旋转排序数组 search-in-rotated-sorted-array
153 中等 寻找旋转排序数组中的最小值 find-minimum-in-rotated-sorted-array
367 简单 有效的完全平方数 valid-perfect-square

深度与广度优先搜索

题号 难度 题目链接 答案链接
104 简单 二叉树的最大深度 maximum-depth-of-binary-tree_dfs    maximum-depth-of-binary-tree_bfs
111 简单 二叉树的最小深度 minimum-depth-of-binary-tree
700 简单 二叉搜索树中的搜索 search-in-a-binary-search-tree

排序

排序算法 代码实现
冒泡排序 Bubble-Sort
插入排序 Insertion-Sort
选择排序 Selection-Sort
堆排序 Heap-Sort
归并排序 Merge-Sort
快速排序 Quick-Sort
题号 难度 题目链接 答案链接
56 中等 合并区间 merge-intervals
215 中等 数组中的第K个最大元素 kth-largest-element-in-an-array
493 困难 翻转对 reverse-pairs

动态规划

题号 难度 题目链接 答案链接
64 中等 最小路径和 minimum-path-sum
70 简单 爬楼梯 climbing stairs
72 困难 编辑距离 edit-distance
120 中等 三角形最小路径和 triangle
300 中等 最长上升子序列 longest-increasing-subsequence
322 中等 零钱兑换 coin-change