LeetCode solutions in Python
- 数学题
题号 | 题目 | 标签 | 难易程度 |
---|---|---|---|
007 | 整数反转 | 数学 | 简单 |
008 | 字符串转换整数 | 数学 字符串 | 中等 |
009 | 回文数 | 数学 | 简单 |
- 数组
题号 | 题目 | 标签 | 难易程度 |
---|---|---|---|
001 | 两数之和 | 数组 哈希表 | 简单 |
011 | 盛最多水的容器 | 数组 双指针 | 中等 |
031 | 下一个排列 | 数组 | 中等 |
035 | 搜索插入位置 | 数组 二分查找 | 简单 |
167 | 两数之和II | 数组 双指针 二分查找 | 简单 |
242 | 字母异位词 | 数组 哈希表 | 简单 |
611 | 有效三角形的个数 | 数组 双指针 | 高等 |
- 链表
题号 | 题目 | 标签 | 难易程度 | 解法 |
---|---|---|---|---|
002 | 链表实现两数相加 | 链表 数学 | 中等 | |
707 | 设计链表 | 链表 | 简单 | 设计题 |
083 | 删除链表重复元素 | 链表 | 简单 | 双指针 |
203 | 删除链表指定元素 | 链表 | 简单 | 双指针 |
206 | 反转链表 | 链表 | 简单 | 迭代&递归 |
876 | 链表中间节点 | 链表 | 简单 | 辅助数组&快慢指针 |
019 | 删除链表倒数第N个节点 | 链表 | 中等 | 快慢指针 |
141 | 检测链表是否有环 | 链表 | 简单 | 哈希表&快慢指针 |
234 | 判断回文链表 | 链表 | 简单 | 辅助数组&快慢指针 |
021 | 合并两个有序链表 | 链表 | 简单 | 迭代&递归 |
023 | 合并k个有序链表 | 堆 链表 分治 | 困难 | 优先级队列 分治 |
024 | 两两交换链表中的结点 | 链表 | 中等 | |
061 | 旋转链表 | 链表 | 中等 | 快慢指针 |
237 | 删除链表非末尾结点 | 链表 | 简单 |
- 栈
题号 | 题目 | 标签 | 难易程度 | 解法 |
---|---|---|---|---|
155 | 最小栈 | 栈 | 简单 | 设计题 |
225 | 用队列实现栈 | 栈 | 简单 | 设计题 |
232 | 用栈实现队列 | 栈 | 简单 | 设计题 |
020 | 有效的括号 | 栈 字符串 | 简单 | 哈希表 |
496 | 下一个更大元素I | 栈 | 简单 | 哈希表 |
739 | 每日温度 | 栈 | 中等 | 哈希表 |
682 | 棒球比赛 | 栈 | 简单 | |
844 | 比较含退格的字符串 | 栈 | 简单 | |
1021 | 删除最外层括号 | 栈 | 简单 | 双指针 |
1047 | 删除字符串中的所有相邻重复项 | 栈 | 简单 | |
071 | 简化文件路径 | 栈 | 中等 | |
150 | 逆波兰表达式求值 | 栈 | 中等 | |
394 | 字符串解码 | 栈 | 中等 | 辅助栈 |
- 二叉树
题号 | 题目 | 标签 | 难易程度 | 解法 |
---|---|---|---|---|
144 | 二叉树的前序遍历 | 树 深度优先搜索 | 中等 | 递归 非递归(栈) |
145 | 二叉树的后序遍历 | 树 深度优先搜索 | 困难 | 递归 非递归(栈) |
094 | 二叉树的中序遍历 | 树 深度优先搜索 | 中等 | 递归 非递归(栈) |
102 | 二叉树的层次遍历 | 树 广度优先搜索 | 中等 | 队列 |
103 | 二叉树的锯齿层次遍历 | 树 广度优先搜索 | 中等 | 队列 |
105 | 从前序遍历和中序遍历构造二叉树 | 树 深度优先搜索 数组 | 中等 | 递归 |
106 | 从中序遍历和后序遍历构造二叉树 | 树 深度优先搜索 数组 | 中等 | 递归 |
226 | 翻转二叉树 | 树 | 简单 | 递归 非递归(队列) |
104 | 二叉树的最大深度 | 树 深度优先搜索 | 简单 | 递归 非递归(队列) |
- 堆
题号 | 题目 | 标签 | 难易程度 | 解法 |
---|---|---|---|---|
023 | 合并k个有序链表 | 堆 链表 分治 | 困难 | 优先级队列 分治 |
215 | 数组中的第k大元素 | 堆 分治 | 中等 | 小顶堆 |
378 | 有序矩阵的第k小元素 | 堆 二分查找 | 中等 | 二分查找 小顶堆 |
295 | 数据流的中位数 | 堆 设计 | 困难 | 大顶堆+小顶堆 |
347 | 数组的前k高频元素 | 堆 哈希表 | 中等 | 哈希表+小顶堆 |
- 图
题号 | 题目 | 标签 | 难易程度 | 解法 |
---|---|---|---|---|
207 | 课程表 | 图 拓扑排序 | 中等 | 广度优先搜索 深度优先搜索 |
210 | 课程表2 | 图 拓扑排序 | 中等 | 广度优先搜索 深度优先搜索 |
- 哈希表
题号 | 题目 | 标签 | 难易程度 | 解法 |
---|---|---|---|---|
128 | 最长连续序列 | 数组 | 困难 | 哈希表 |
146 | LRU缓存机制 | 设计题 | 中等 | 有序哈希表 |
242 | 字母异位词 | 数组 哈希表 | 简单 | 哈希表 |
- 位运算
题号 | 题目 | 标签 | 难易程度 | 解法 |
---|---|---|---|---|
136 | 只出现一次的数字I | 位运算 哈希表 | 简单 | 哈希表 位运算 |
078 | 数组子集 | 位运算 | 中等 | 位运算 |
- 字符串
题号 | 题目 | 标签 | 难易程度 |
---|---|---|---|
003 | 无重复字符的最长子串 | 哈希表 双指针 字符串 滑窗 | 中等 |
151 | 翻转字符串中的单词 | 字符串 | 中等 |
- 二分查找
题号 | 题目 | 标签 | 难易程度 |
---|---|---|---|
029 | 两数相除 | 数学 二分查找 | 中等 |
035 | 搜索插入位置 | 数组 二分查找 | 简单 |
069 | x的平方根 | 数学 二分查找 | 简单 |
167 | 两数之和II | 数组 双指针 二分查找 | 简单 |
- 贪心算法
题号 | 题目 | 标签 | 难易程度 | 解法 |
---|---|---|---|---|
053 | 最大子数组和 | 数组 分治 动态规划 | 简单 | 贪心法 |
152 | 最大子数组积 | 数组 动态规划 | 中等 | 贪心法 |
121 | 买卖股票最佳时机1 | 数组 动态规划 | 简单 | 动态规划 |
122 | 买卖股票最佳时机2 | 数组 贪心算法 | 简单 | 动态规划 |
134 | 加油站 | 贪心算法 | 中等 | 贪心法 |