LeetCode+算法+数据结构(write LeetCode with Python3) 链表(及其相关结构) 删除链表中含有指定元素的节点.py 删除排序链表中的重复元素.py 删除链表的倒数第N个节点.py 合并两个有序链表.py 两两交换链表中的节点.py 反转链表.py 反转链表II.py 两数相加.py 两数相加II.py 合并K个排序链表.py 相交链表.py 环形链表.py 环形链表II.py 删除链表中的节点.py 删除排序链表中的重复元素II.py 回文链表.py 奇偶链表.py 复制带随机指针的链表.py K个一组翻转链表.py 分隔链表.py 重排链表.py 分隔链表.py 链表的中间结点.py 1669.合并两个链表.py 二叉树(及其相关结构) 二叉树的中序遍历.py 二叉树的前序遍历.py 二叉树的后序遍历.py 二叉树的最大深度.py 二叉树的最近公共祖先.py 对称二叉树.py 二叉树的层次遍历.py 二叉树中最大路径和.py 二叉树的直径.py 把二叉搜索树转换为累加树.py 二叉树的所有路径.py 完全二叉树的节点个数.py 二叉树的锯齿形层次遍历.py 最大二叉树.py 二叉树最大宽度.py 左叶子之和.py 不同的二叉搜索树.py 填充每个节点的下一个右侧节点指针.py 翻转等价二叉树.py 二分查找(及其相关结构) 二分查找.py 搜索插入位置.py 在排序数组中查找元素的第一个和最后一个位置.py Pow(x, n).py 寻找两个有序数组的中位数.py 搜索二维矩阵.py 搜索二维矩阵II.py 和至少为K的最短子数组.py 有序矩阵中第K小的元素.py 分割数组的最大值.py 搜索旋转排序数组.py 搜索旋转排序数组II.py 寻找旋转排序数组中的最小值.py 寻找旋转排序数组中的最小值II.py 寻找峰值.py 两数之和II输入有序数组.py 二叉搜索树中第K小的元素.py 寻找重复数.py x的平方根.py 找到K个最接近的元素.py 平方数之和.py 山脉数组的峰顶索引.py 山脉数组中查找目标值.py 乘法表中第k小的数.py 爱吃香蕉的珂珂.py 有序数组中的单一元素.py 寻找右区间.py 1574.删除最短的子数组使剩余数组有序.py 动态规划(及其相关结构) 最长重复子数组.py 不同的子序列.py 地下城游戏.py 最小路径和.py 乘积最大子序列.py 打家劫舍.py 打家劫舍II.py 买卖股票的最佳时机含手续费.py 编辑距离.py 丑数II.py 解码方法.py 回文子串.py 5.最长回文子串.py 单词拆分.py 单词拆分II.py 连接词.py 分割等和子集.py 戳气球.py 最大矩形.py 221.最大正方形.py 1139.最大的以1为边界的正方形.py 目标和.py 最高的广告牌.py 零钱兑换.py 零钱兑换II.py 完全平方数.py 最长有效括号.py 最长回文子序列.py 三角形最小路径和.py 递增的三元子序列.py 最长上升子序列.py 通配符匹配.py 买卖股票的最佳时机.py 买卖股票的最佳时机II.py 买卖股票的最佳时机III.py 买卖股票的最佳时机IV.py 最佳买卖股票时机含冷冻期.py 买卖股票的最佳时机含手续费.py 分割回文串II.py 正则表达式匹配.py 区域和检索-数组不可变.py 摆动序列.py 青蛙过河.py 俄罗斯套娃信封问题.py 连续的子数组和.py 预测赢家.py 我能赢吗.py 最长公共子序列.py 统计重复个数.py 等差数列划分.py 等差数列划分II-子序列.py 二维区域和检索 - 矩阵不可变.py 最长递增子序列的个数.py 分裂二叉树的最大乘积.py 鸡蛋掉落.py N天后的牢房.py 奇怪的打印机.py 移除盒子.py 统计不同回文子序列.py 每个人戴不同帽子的方案数.py 优美的排列.py 最长递增子序列的个数.py 让字符串成为回文串的最少插入次数.py 最后一块石头的重量II.py 划分为k个相等的子集.py 使用最小花费爬楼梯.py 大礼包.py 使序列递增的最小交换次数.py 香槟塔.py 删除与获得点数.py 最大平均值和的分组.py 使数组严格递增.py 两个子序列的最大点积.py 和为目标值的最大数目不重叠非空子数组数目.py 吃掉N个橘子的最少天数.py 最长字符串链.py 找两个和为目标值且不重叠的子数组.py 带限制的子序列和.py 最长快乐字符串.py 跳跃游戏V.py 有效的快递序列数目.py 下降路径最小和.py 摘樱桃II.py 删除一次得到子数组最大和.py 最短公共超序列.py K站中转内最便宜的航班.py 灌溉花园的最少水龙头数目.py K次串联后最大子数组之和.py 不同的子序列II.py 安排邮筒.py 计算各个位数不同的数字个数.py 播放列表的数量.py 给房子涂色III.py 分隔数组以得到最大和.py 最低票价.py 最长的斐波那契子序列的长度.py 统计所有可行路径.py 最长等差数列.py 工作计划的最低难度.py 691.贴纸拼词.py 统计全为1的正方形子矩阵.py 爬楼梯.py 不同路径.py 交错字符串.py K个逆序对数组.py 不含连续1的非负整数.py 解码方法II.py 最大整除子集.py 猜数字大小II.py 石子游戏.py 646.最长数对链.py 1000.合并石头的最低成本.py 691.贴纸拼词.py 双指针(及其相关结构) 长度最小的子数组.py 最小覆盖子串.py 盛最多水的容器.py 验证回文串.py 三数之和.py 最接近的三数之和.py 颜色分类.py 反转字符串.py 删除排序数组中的重复项.py 删除排序数组中的重复项II.py 四数之和.py 移动零.py 移除元素.py 字符串的排列.py 反转字符串中的元音字母.py 汇总区间.py 水果成篮.py 数组中的最长山脉.py 统计「优美子数组」.py 无重复字符的最长子串.py 字符的最短距离.py 下一个更大元素III.py 按奇偶排序数组II.py 611.有效三角形的个数.py 524.通过删除字母匹配到字典里最长单词 1498.满足条件的子序列数目 905.按奇偶排序数组 数组(及其相关结构) 和为K的子数组.py 合并区间.py 插入区间.py 两数之和.py 最短无序连续子数组.py 合并两个有序数组.py 最长连续序列.py 下一个排列.py 子数组最大平均数I.py 除自身以外数组的乘积.py 匹配子序列的单词数.py 两个数组的交集.py 螺旋矩阵.py 存在重复元素.py 加一.py 缺失的第一个正数.py 两个数组的交集II.py 找到所有数组中消失的数字.py 螺旋矩阵II.py 旋转图像.py 旋转数组.py 杨辉三角.py 求众数II.py 矩阵置零.py 提莫攻击.py 数组中重复的数据.py 多数元素.py 将数组分成和相等的三个部分.py 将每个元素替换为右侧最大元素.py 和至少为 K 的最短子数组.py 删除被覆盖区间.py 最大连续1的个数.py 717.1比特与2比特字符.py 字符串(及其相关结构) 最长公共前缀.py 有效的括号.py 反转字符串中的单词III.py 字符串转换整数 (atoi).py 实现strStr().py 报数.py 反转字符串II.py 最后一个单词的长度.py 二进制求和.py 文本左右对齐.py 翻转字符串里的单词.py 比较版本号.py 最短回文串.py 赎金信.py 包含所有三种字符的子字符串数目.py 字符串相乘.py 有效数字.py 重复的子字符串.py 二叉搜索树(及其相关结构) 验证二叉搜索树.py 不同的二叉搜索树.py 不同的二叉搜索树II.py 二叉搜索树的最近公共祖先.py 删除二叉搜索树中的节点.py 两棵二叉搜索树中的所有元素.py 二叉搜索树中的插入操作.py 恢复二叉搜索树.py 二叉搜索树的最小绝对差.py 二叉搜索树节点最小距离.py 669.修剪二叉搜索树.py 653.两数之和IV-输入BST.py 回溯(及其相关结构) N皇后.py N皇后II.py 全排列.py 全排列II.py 第k个排列.py 子集.py 子集II.py 单词搜索.py 组合总和.py 组合总和II.py 组合总和III.py 组合.py 求根到叶子节点数字之和.py 括号生成.py 单词搜索II.py 分割回文串.py 格雷编码.py 解数独.py 累加数.py 顺次数.py 电话号码的字母组合.py 黄金矿工.py 复原IP地址.py 并查集(及其相关结构) 被围绕的区域.py 岛屿数量.py 朋友圈.py 相似字符串组.py 765.情侣牵手.py 随机(及其相关结构) 用Rand7()实现Rand10().py 深度优先搜索(及其相关结构) 平衡二叉树.py 将有序数组转换为二叉搜索树.py 将有序链表转换为二叉搜索树.py 二叉树展开为链表.py 路径总和.py 路径总和II.py 路径总和III.py 二叉树的直径.py 相同的树.py 另一棵树的子树.py 从中序与后序遍历序列构造二叉树.py 从前序与中序遍历序列构造二叉树.py 打家劫舍III.py 删除无效的括号.py 矩阵中的最长递增路径.py 二叉树中所有距离为K的结点.py 递增子序列.py 火柴拼正方形.py 字典序排数.py 层数最深叶子节点的和.py 祖玛游戏.py 出现次数最多的子树元素和.py 岛屿的最大面积.py 出现次数最多的子树元素和.py 通知所有员工所需的时间.py 统计封闭岛屿的数目.py 二叉树中的最大路径和.py 24点游戏.py 甲板上的战舰.py 骑士在棋盘上的概率.py 打开转盘锁.py 987.二叉树的垂序遍历.py 贪心(及其相关结构) 分发糖果.py 跳跃游戏.py 跳跃游戏II.py 买卖股票的最佳时机II.py 加油站.py 判断子序列.py 任务调度器.py 根据身高重建队列.py 拼接最大数.py 无重叠区间.py 用最少数量的箭引爆气球.py 划分字母区间.py 用户分组.py 划分数组为连续数字的集合.py 做菜顺序.py 有效的括号字符串.py 最大交换.py 翻转矩阵后的得分.py 最多可以参加的会议数目.py 三角形的最大周长.py 最多K次交换相邻数位后得到的最小整数.py 非递减数列.py 按要求补齐数组.py IPO.py 寻找最近的回文数.py 优势洗牌.py 单调递增的数字.py 重构字符串.py 1147.段式回文.py 871.最低加油次数.py 630.课程表III.py 1665.完成所有任务的最少初始能量.py 881.救生艇.py 数学(及其相关结构) 有序队列.py 回文数.py 整数反转.py 数字1的个数.py 计数质数.py 两数相除.py Excel表列序号.py 3的幂.py 阶乘后的零.py 各位相加.py 丑数.py 整数拆分.py 少移动次数使数组元素相等II.py 第N个数字.py 水壶问题.py 从英文中重建数字.py 矩形面积.py 可怜的小猪.py 自除数.py 形成三的最大倍数.py Excel表列名称.py 灯泡开关.py 寻找最近的回文数.py 最大回文数乘积.py 超级次方.py 927.三等分.py 哈希表(及其相关结构) 有效的数独.py 快乐数.py 字符串中的第一个唯一字符.py 四数相加II.py 找到字符串中所有字母异位词.py 字母异位词分组.py 有效的字母异位词.py 存在重复元素II.py 单词规律.py 最长重复子串.py 砖墙.py 森林中的兔子.py 直线上最多的点数.py 查找共用字符.py 数组的度.py 2341.数组能形成多少数对.py 2347.最好的扑克手牌.py 2351.第一个出现两次的字母.py 2352.相等行列对.py 分治算法(及其相关结构) 求众数.py 数组中的第K个最大元素.py 至少有K个重复字符的最长子串.py 给表达式添加运算符.py 翻转对.py 堆(及其相关结构) 滑动窗口最大值.py 前K个高频元素.py 数据流的中位数.py 查找和最小的K对数字.py 前K个高频单词.py 根据字符出现频率排序.py 数据流中的第K大元素.py 超级丑数.py 滑动窗口中位数.py 最小区间.py 786.第K个最小的素数分数.py 2336.无限集中的最小数字.py 2336.无限集中的最小数字.py 栈(及其相关结构) 每日温度.py 接雨水.py 柱状图中最大的矩形.py 字符串解码.py 简化路径.py 逆波兰表达式求值.py 移掉K位数字.py 验证二叉树的前序序列化.py 去除重复字母.py 下一个更大元素II.py 移除无效的括号.py 反转每对括号间的子串.py 使括号有效的最少添加.py 删除字符串中的所有相邻重复项II.py 子数组的最小值之和.py 商品折扣后的最终价格.py 原子的数量.py 不同字符的最小子序列.py 经典算法(及其相关结构) KMP.py 堆.py 01背包问题.py 图(及其相关结构) 找到小镇的法官.py 不邻接植花.py 钥匙和房间.py 验证二叉树.py 冗余连接.py 743.网络延迟时间.py 拓扑排序(及其相关结构) 课程表.py 课程表II.py 字典树(及其相关结构) 实现Trie(前缀树).py 数组中两个数的最大异或值.py 单词替换.py 回文对.py 字典序的第K小数字.py 广度优先遍历(及其相关结构) 二叉树的最小深度.py 最小高度树.py 找树左下角的值.py 在每个树行中找最大值.py N叉树的层序遍历.py N叉树的最大深度.py 二叉树的层次遍历II.py 腐烂的橘子.py 单词接龙.py 单词接龙II.py 跳跃游戏III.py 二叉树的右视图.py 访问所有节点的最短路径.py 对角线遍历.py 为高尔夫比赛砍树.py 网格中的最短路径.py 填充每个节点的下一个右侧节点指针II.py 连续差相同的数字.py 637.二叉树的层平均值.py 854.相似度为K的字符串.py 位运算(及其相关结构) 只出现一次的数字.py 只出现一次的数字II.py 只出现一次的数字III.py 两整数之和.py 2的幂.py 缺失数字.py 汉明距离.py 汉明距离总和.py 比特位计数.py 位1的个数.py 颠倒二进制位.py 最大单词长度乘积.py 子串的最大出现次数.py 整数替换.py 342.4的幂.py 1356.根据数字二进制下1的数目排序.py 405.数字转换为十六进制数.py 排序(及其相关结构) 最大间距.py 最大数.py 对链表进行插入排序.py 排序链表.py 摆动排序II.py 排序数组.py 存在重复元素III.py 最接近原点的K个点.py 通过投票对团队排名.py 煎饼排序.py 通过删除字母匹配到字典里最长单词.py 三个数的最大乘积.py 树状数组(及其相关结构) 计算右侧小于当前元素的个数.py 区间和的个数.py 设计(及其相关结构) LRU缓存机制.py LFU缓存机制.py 二叉树的序列化与反序列化.py 最小栈.py 常数时间插入、删除和获取随机元素.py 扁平化嵌套列表迭代器.py 用队列实现栈.py 设计哈希映射.py 设计循环队列.py 381.O(1)时间插入、删除和获取随机元素-允许重复.py 脑筋急转弯 Nim游戏.py 极小极大 蓄水池抽样 链表随机节点.py 随机数索引.py 滑动窗口 替换后的最长重复字符.py 删掉一个元素以后全为1的最长子数组.py 找到K个最接近的元素.py 最大连续1的个数III.py 将x减到0的最小操作数.py 乘积小于K的子数组.py 1456.定长子串中元音的最大数目.py 前缀和 两个非重叠子数组的最大和.py 1109.航班预订统计.py 930.和相同的二元子数组.py 525.连续数组.py 随机化 打乱数组.py 单调栈 456.132模式.py 1019.链表中的下一个更大节点.py 496.下一个更大元素I.py 欧拉回路 重新安排行程.py 几何问题 重新安排行程.py 枚举 949.给定数字能组成的最大时间.py 829.连续整数求和.py 剑指offer系列 面试题03.数组中重复的数字.py 面试题04.二维数组中的查找.py 面试题05.替换空格.py 面试题06.从尾到头打印链表.py 面试题07.重建二叉树.py 面试题09.用两个栈实现队列.py 面试题10-I.斐波那契数列.py 面试题10-II.青蛙跳台阶问题.py 面试题11.旋转数组的最小数字.py 面试题12.矩阵中的路径.py 面试题13.机器人的运动范围.py 面试题14-I.剪绳子.py 面试题14-II.剪绳子.py 面试题15二进制中1的个数.py 面试题16.数值的整数次方.py 面试题18-I.删除链表的节点.py 面试题21.调整数组顺序使奇数位于偶数前面.py 面试题22.链表中倒数第k个节点.py 面试题24.反转链表.py 面试题25.合并两个排序的链表.py 面试题26.树的子结构.py 面试题27.二叉树的镜像.py 面试题28.二叉树的镜像.py 面试题29.顺时针打印矩阵.py 面试题32-I.从上到下打印二叉树.py 面试题32-II.从上到下打印二叉树II.py 面试题32-III.从上到下打印二叉树III.py 面试题33-二叉搜索树的后序遍历序列.py 面试题36-二叉搜索树与双向链表.py 面试题38.字符串的排列.py 面试题39.数组中出现次数超过一半的数字.py 面试题40.最小的k个数.py 面试题42.连续子数组的最大和.py 面试题44.数字序列中某一位的数字.py 面试题45.把数组排成最小的数.py 面试题47.礼物的最大价值.py 面试题48.最长不含重复字符的子字符串.py 面试题49.丑数.py 面试题50-I.第一个只出现一次的字符.py 面试题50-II.第一个只出现一次的字符.py 面试题51.数组中的逆序对.py 面试题52.两个链表的第一个公共节点.py 面试题53-I.在排序数组中查找数字 I.py 面试题53-II.0~n-1中缺失的数字.py 面试题54.二叉搜索树的第k大节点.py 面试题55-I.二叉树的深度.py 面试题55-II.平衡二叉树.py 面试题56-I.数组中数字出现的次数.py 面试题56-II.数组中数字出现的次数II.py 面试题57-I.和为s的两个数字.py 面试题57-II.和为s的连续正数序列.py 面试题58-I.翻转单词顺序.py 面试题59-I.滑动窗口的最大值.py 面试题60.n个骰子的点数.py 面试题61.扑克牌中的顺子.py 面试题62-圆圈中最后剩下的数字.py 面试题63-股票的最大利润.py 面试题65-不用加减乘除做加法.py 面试题66-构建乘积数组.py 面试题68-I.二叉搜索树的最近公共祖先.py 面试题68-II二叉树的最近公共祖先.py 程序员面试金典(第 6 版) 面试题 17.24.最大子矩阵.py 面试题 02.05. 链表求和.py