Skip to content

Latest commit

 

History

History
217 lines (217 loc) · 21.7 KB

README.md

File metadata and controls

217 lines (217 loc) · 21.7 KB

leetcode

one question one day
目录

序号 题目 难度 标签
0001 两数之和 简单 哈希表
0002 两数相加 中等 手写哈希表
0003 无重复字符的最长子串 中等 滑动窗口、哈希
0004 寻找两个正序数组的中位数 困难 二分法
0005 Longest Palindromic Substring 中等
0006 ZigZag Conversion 中等
0007 Reverse Integer 简单
0008 String to Integer (atoi) 中等
0009 Palindrome Number 简单
0011 Container With Most Water 中等
0012 Integer to Roman 中等
0013 Roman to Integer 简单
0014 Longest Common Prefix 简单
0015 3Sum 中等
0017 电话号码的字母组合 中等 回溯算法、深度优先
0019 删除链表的倒数第 N 个结点 中等 链表、快慢指针
0020 有效的括号 简单
0021 合并两个有序链表 简单 递归、迭代
0023 合并K个升序链表 困难 链表、归并、堆?
0026 删除有序数组中的重复项 简单 双指针
0027 Remove Element 简单
0028 实现 strStr() 简单 KMP算法
0032 最长有效括号 困难 动态规划、栈
0033 搜索旋转排序数组 困难 动态规划、栈
0034 在排序数组中查找元素的第一个和最后一个位置 中等 二分法
0035 搜索插入位置 简单
0037 解数独 困难 递归、回溯
0038 Count and Say 简单
0042 接雨水 困难 双指针
0043 字符串相乘 中等 ???
0046 全排列 中等 递归、回溯
0050 powx-n 中等
0051 N 皇后 困难 递归、回溯、深度优先
0053 最大子序和 简单 分治、动态规划
0061 旋转链表 中等 链表、遍历
0069 x 的平方根 简单 二分查找
0070 爬楼梯 简单 动态规划、递归
0071 有效的括号 简单
0075 颜色分类 中等 指针、数组、荷兰国旗问题
0076 最小覆盖子串 中等 滑动窗口优化
0077 组合 中等 递归
0082 删除排序链表中的重复元素 II 中等 链表、双指针
0084 柱状图中最大的矩形 困难 单调栈
0088 Merge Sorted Array 简单
94 二叉树的中序遍历 简单 递归、迭代
96 不同的二叉搜索树 中等 动态规划、树
98 验证二叉搜索树 中等 递归、中序遍历
0100 相同的树 简单
0101 对称二叉树 简单 递归、迭代
0102 二叉树的层序遍历 中等 树、广度+队列
0103 二叉树的锯齿形层序遍历 中等 树、广度+队列
0104 二叉树的最大深度 简单 深度优先
0105 从前序与中序遍历序列构造二叉树 中等 树、递归
0108 将有序数组转换为二叉搜索树 简单 树、递归
0113 合并二叉树 简单 深度、广度优先搜索
0114 二叉树展开为链表 中等 树DFS、迭代、前驱节点
0116 填充每个节点的下一个右侧节点指针 中等 层次遍历、深度、广度优先搜索
0120 三角形最小路径和 中等 动态规划
0121 买卖股票的最佳时机 简单 动态规划
0122 买卖股票的最佳时机 II 简单 动态规划、注意转换方程式
0124 二叉树中的最大路径和 困难 递归、二叉树
0128 最长连续序列 中等 hash + 并查集
0136 只出现一次的数字 简单 位运算、异或
0138 复制带随机指针的链表 中等 回溯+哈希、迭代
0141 环形链表 简单 链表、双指针
0142 环形链表II 中等 链表、双指针
0144 二叉树的前序遍历 中等 树DFS、BFS
0146 LRU 缓存机制 中等 uthash、数据结构设计
0148 排序链表 中等 链表排序、归并
0149 直线上最多的点数 困难 循环、最大公约数、斜率
0150 逆波兰表达式求值 中等
0155 最小栈 简单 辅助栈
0159 至多包含两个不同字符的最长子串 中等 滑动窗口
0160 相交链表 简单 链表
0162 寻找峰值 中等 二分法
0167 两数之和 II - 输入有序数组 简单 链表
0169 多数元素 简单 哈希、摩尔投票法、排序、随机
0189 旋转数组 中等 双指针
0190 颠倒二进制位 简单 位运算、分治
0191 & 剑指 Offer 15 位1的个数、二进制中1的个数 简单 位运算
0198 打家劫舍 中等 动态规划,其他做法?
0200 Number of Islands 中等 DFS、BFS、并查集模板记忆
0206 反转链表 简单 递归、回溯
0208 实现 Trie (前缀树) 中等 前缀树
0209 长度最小的子数组 中等 滑动窗口
0215 数组中的第K个最大元素 中等 快速排序、堆排序
0217 存在重复元素 简单 哈希、排序
218 天际线问题 困难 扫描线、优先队列
0227 227. 基本计算器 II 中等 栈、字符串表达式
0230 二叉搜索树中第K小的元素 中等 链表、二叉搜索树
0231 2 的幂 简单 位运算、递归
0234 回文链表 简单 链表、递归遍历
0235 二叉搜索树的最近公共祖先 简单 链表
0236 二叉树的最近公共祖先 中等 链表、二叉搜索树
0237 删除链表中的节点 简单 链表
0238 除自身以外数组的乘积 中等 前缀乘积
0239 滑动窗口最大值 困难 滑动窗口、单调队列、同剑指 Offer 59 - I
0240 搜索二维矩阵 II 中等 二分查找
253 会议室 II 中等 优先队列、排序
0254 因子的组合 中等 递归、回溯
0283 移动零 简单 双指针
0286 墙与门 中等 广度优先搜索
0287 寻找重复数 中等 双指针、快慢指针
0292 Nim 游戏 简单 数学推理
0295 数据流的中位数 困难 优先队列
0297 二叉树的序列化与反序列化 困难 树DFS\BFS、序列化与反序列化
0300 最长递增子序列 中等 动态规划、贪心 + 二分查找
0309 最佳买卖股票时机含冷冻期 中等 动态规划
0315 计算右侧小于当前元素的个数 困难 离散化树状数组、归并排序
0325 和等于 k 的最长子数组长度 中等 前缀和 + hash
0328 奇偶链表 中等 链表
0340 至多包含 K 个不同字符的最长子串 中等 滑动窗口
0341 扁平化嵌套列表迭代器 中等 队列、递归
0342 4的幂 简单 位运算
0344 Reverse String 简单
0347 前 K 个高频元素 中等 优先队列、uthash\哈希
0350 两个数组的交集 II 简单 哈希、双指针、排序
0378 有序矩阵中第 K 小的元素 中等 二分法、归并排序?
0387 字符串中的第一个唯一字符 简单 哈希+队列
0394 字符串解码 中等 栈、递归、字符串
0403 青蛙过河 困难 动态规划,其他方法?
0417 太平洋大西洋水流问题 中等 深度优先搜索、广度没做?
0438 找到字符串中所有字母异位词 中等 滑动窗口
0452 用最少数量的箭引爆气球 中等 贪心+快排
0459 重复的子字符串 简单 字符串、枚举、KMP算法(待)
0461 汉明距离 简单 位运算
0463 岛屿的周长 简单
0472 连接词 困难 字典树、深度优先搜索
0474 一和零 中等 动态规划、背包问题
0477 汉明距离 中等 位运算
0494 目标和 中等 动态规划、回溯算法
0509 斐波那契数 简单 动态规划
510 二叉搜索树中的中序后继 II 中等 树、遍历
0523 连续的子数组和 中等 前缀和+哈希+同余定理
0542 01 矩阵 中等 广度遍历、动态规划
0547 省份数量 中等 深度/广度遍历、并查集
0560 和为K的子数组 中等 前缀和、哈希表实现、枚举
0567 字符串的排列 中等 滑动窗口
0582 杀掉进程 中等 并查集、深度优先
0605 种花问题 简单 贪心算法、分类
0617 合并二叉树 简单 深度、广度优先搜索
0622 Design Circular Queue 中等
0628 三个数的最大乘积 简单 排序、优化
0643 子数组最大平均数 I 简单 滑动窗口、数组、动态规划
0665 非递减数列 简单 数组
0695 岛屿的最大面积 中等 深度、广度优先搜索
0704 二分查找 简单 二分查找
0707 设计链表 中等 链表实现
0714 买卖股票的最佳时机含手续费 中等 动态规划
0733 图像渲染 简单 深度、广度优先搜索
0739 每日温度 中等 单调栈、遍历、数组处理
0746 使用最小花费爬楼梯 简单 动态规划
0752 打开转盘锁 中等 广度优先搜索+hash
0765 Couples Holding Hands 困难
0784 字母大小写全排列 中等 递归、深度
0809 Expressive Words 中等
0820 单词的压缩编码 中等 ?再看
0825 适龄的朋友 中等 排序、双指针
0832 翻转图像 简单 位运算、循环
0852 山脉数组的峰顶索引 简单 二分法
0863 二叉树中所有距离为 K 的结点 中等 深度递归、uthash
0867 Transpose Matrix 简单
0875 爱吃香蕉的珂珂 中等 二分法
0877 石子游戏 中等 动态规划
912 排序数组 简单 10个排序算法
0934 最短的桥 中等 DFS + BFS
0959 由斜杠划分区域 中等 并查集
0977 有序数组的平方 简单
0978 最长湍流子数组 中等 动态规划、滑动窗口?
0994 腐烂的橘子 中等 广度优先搜索
1004 最大连续1的个数 III 中等 动态规划 + 优化
1049 最后一块石头的重量 II 中等 动态规划 + 优化
1060 有序数组中的缺失元素 中等 二分法
1074 元素和为目标值的子矩阵数量 困难 前缀和、哈希、uthash.h
1100 长度为 K 的无重复字符子串 中等 滑动窗口
1114 Symmetric Tree 简单
1128 等价多米诺骨牌对的数量 简单 二元组、哈希
1137 第 N 个泰波那契数 简单 动态规划
1151 最少交换次数来组合所有的 1 中等 滑动窗口
1182 与目标颜色间的最短距离 中等 二分查找、动态规划未做
1192 查找集群内的「关键连接」 困难 深度优先、tarjan算法
1229 安排会议日程 中等 排序、双指针
1231 分享巧克力 困难 二分查找
1267 统计参与通信的服务器 中等 数组、循环
1319 连通网络的操作次数 中等 并查集
1368 使网格图至少有一条有效路径的最小代价 困难 广度优先搜索
1370 上升下降字符串 简单 字符串、哈希
1380 矩阵中的幸运数 简单 数组、预处理
1396 设计地铁系统 中等 哈希、uthash(继续做 )
1438 绝对差不超过限制的最长连续子数组 中等
1469 寻找所有的独生节点 简单 深度、广度
1535 Find the Winner of an Array Game 中等
1550 存在连续三个奇数的数组 简单 数组、符合&
1552 Magnetic Force Between Two Balls 中等
1576 替换所有的问号 简单 字符串处理
1588 所有奇数长度子数组的和 简单
16.26 Calculator LCCI 中等
17.10 主要元素 简单
17.21 直方图的水量 困难 数组
1736 替换隐藏数字得到的最晚时间 简单 分类处理
1744 你能在你最喜欢的那天吃到你最喜欢的糖果吗? 中等 前缀和、数组处理
1868 两个行程编码数组的积 中等 双指针、数组
1901 找出顶峰元素 II 中等 二分法、分治、数组
2043 简易银行系统 中等 设计、数组
剑指 Offer 03 数组中重复的数字 简单 STL、哈希
剑指 Offer 09 用两个栈实现队列 简单 栈、队列
剑指 Offer 30 包含min函数的栈 简单
面试题 08.05 递归乘法 中等 递归
LCP 28 采购方案 简单 排序、双指针
K001 队列和广度优先
HW0604-1 简易音乐播放器 中等 设计、数据结构、uthash.h使用