Skip to content

fgdtext/Leetcode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Leetcode

自己刷leetcode的做题记录,意为在此存档备份。

痛点 : 双指针 动态规划 贪心

Q_207 : class:func:canFinish() 拓扑排序

Q336 : 字典树,两个单词组合成回文串的性质

Q337 : 打家劫舍3, 动态规划,记忆化搜索,空间优化。 树型动态规划 树 dp 树 dp 的特点 该dp 问题具有一个特性是 : 状态转移总是相邻的。 dfs 后返回到本层恰好是本层所依赖的。 本质就是个后序递归。 该dp 只有规划, 本质没有记忆。 没有向其他记忆化递归一样。 可能依赖比较远的状态。

Q100 : 比较两颗树是否完全相同。

Q632 : 滑动窗口 + HashMap

Q99 : 二分排序树的 中序有序性。 13毫秒

Q130 : 涂色问题:char[][] dfs涂色。

Q133 : 图的深拷贝

Q415 : 字符串数字求和

Q43 : 字符串数字相乘

Q20 : 验证括号是否完全匹配。

Q50 : 快速幂 实现 pow , 注意最小负数加负号,仍然是本身。

Q110 : 后序遍历 确定一棵树, 是 平衡二叉树

Q109 : 二叉平衡树的构建 和 数组 ,链表的转换。。 若数组链表有序, 则 涉及 二叉查找树的中序有序性质

Q647 : (不会,想成滑动窗口了,又不会滑) 查找回文子串, 判断有多少个回文子串。动态规划, 中心扩散。 线性串 的 动态规划, dp[][] 二维 dp 该题是 动态规划 和 找回文串的模板方法。

Q529 : 扫雷。 dfs,bfs.

Q111 : 二叉树的深度 , 尝试 双端队列。 不需要再为每一个结点 记录 其高度

Q679 : 选择,排列相关。 后序表达式求值。求组合排列的求值是否为 n error : 想法错误, 应该是选择 组合。 每次 选 两个数 运算 再加进去。

Q201 : 二进制求 连续数的相 与 运算 进制运算。

Q459 : 判定一个字符串 是否 是 由重复子串构成。

Q491 : 打印 所有 递增子序列 。 枚举全集 普通回溯, 二进制枚举全集

Q17 : 映射表,选择与组合 , 回溯法 有该字母,没有改字母。

Q2 : 链表表示整数,进行相加。

Q4 : 两个有序 数组, 在 lg(m+n)时间内 找共同中位数。 即合并两个数组的中位数,(时间原因,不能去合并)合并时间为o(m+n)

Q332 : 重新安排行程, 图的遍历, 按要求遍历, 欧拉回路,七桥问题,一笔划问题。

Q214 : 最短回文串 , KMP 寻找 模式串 的 最长前缀。

Q557 : 句子的单词反转。 StringBuild的使用。

Q5 : 最长回文子串, 动态规划, 参考 Q647. kmp :参考 Q214 .这里是从任意位置查找 huiwen

Q6 :z字形变换, 下标变换

Q7 : 整数反转

Q10 : 正则表达式 匹配 动态规划,记忆化递归, 递归。NFA(已经实现).

Q486 : dp 动态规划 记忆化递归 ,我只写出了 回溯递归,时间太差,有大量重复子问题。

Q_offer_20 : 自动机

Q51 : 八皇后问题。 标准回溯法

Q257 : 树的dfs, 回溯打印路径(想麻烦了)。 直接dfs, 向下传新的字符串就行。

Q60 : 全排列,回溯法 , 剪枝。 全排列的按层减枝条。第 K个 排列

Q107 : 层次遍历 : 从最后一层开始

Q347 : 统计数字出现频率,求出 频率 最大的k 个数字

Q77 : 求 c(n,k) 的组合数(1,n) 选出k个数。得到所有组合 。。 回溯法。减枝

Q11 : 双指针 找 最大 区域面积。(水桶效应)

test_Q1 : 回溯法 将 m 分解为 多个数的和, 且每个数, 不能被 k 整除。 test_Q2 :双指针 替换单词 例如 输入替换目标 you 若一个单词由 you,ouy, uoy (各字符数出现相同) 将该单词替换掉

Q39 : 可使用 重复元素 构成 m . 回溯法。组合。 数组元素可重复使用。。(重点题) 答案的方法 真的好。 Q40 : 不可重复使用元素, 但数组中 有重复元素。 (重点,和39对照)

test_Q3 : 回溯。dfs 搜索 全图 中 起点, 到 终点, 有多少种走法。

Q216 : 1~9元素的,不重复组合。和为 n 的 k 个数 同(39,40)对比

Q94 : 二叉树的中序遍历,非递归

Q226 : 交换二叉树的左右子树。

Q404 : 计算给定二叉树的所有 左叶子 之和。

Q19 : 删除 链表 的 倒数 第 N 个 结点。 (递归,双指针)

Q21 : 合并两个有序链表

Q22 : n 对 括号 可能的 组合 顺序。 (括号的合法性,构建括号可继续的合法性)

Q23 : 合并K个升序链表

Q78 : 打印全体子集(无重复元素,不可重复解) 按位确定的方法比较合适,如果数组中有重复元素,适合begin法

Q31 : 当前排列的 下一个排列 (字典序) 搞清粗字典序的递增规律

Q32 : 给定一个只包含 '(' 和 ')' 的字符串,找出最长的包含有效括号的子串的长度。 方法待定 : 动太规划 , 栈, 正逆两次滑动窗口

Q538 : 二叉搜索树 转 换 为 累加树 (重点题: 反中序遍历) 同时,也可能出现反前序遍历,和反后序遍历。其实就是镜像遍历 使用中序的原因是 ; 中序 遍历有序。

Q968 : 监控二叉树。 节点上的每个摄影头都可以监视其父对象、自身及其直接子对象。计算最小摄像头数量 动态规划 参考:打家结舍3

   这道题和「打家劫舍III」很像,一样是二叉树。装摄像头难道是防盗?666。

Q501 : 二叉搜索树中的所有众数。 中序有序, 有序数组找 众数 练习以下 mirros 遍历

Q106 : 中后序列, 建立二叉树

Q113 : 找到树中, 路径上和 为 num 的 所有路径

Q235 : 最近公共祖先

Q117 : 填充每个节点的下一个右侧节点指针 II 即通过指针连接右侧结点。

Q33 : 寻找递增 旋转数组 的 旋转点(自己的想法)。 实际 : 不找旋转点, 直接 进行二分查找。 每次只要一侧是有序的,即可。

Q145 : 二叉树的 非递归 后序 遍历 , (重点)

Q34 : 在排序数组中查找元素的第一个和最后一个位置

Q42 : 接雨水, 难题。 系欸出来了。但是效率差。

Q701 : BST插入结点。

LCP19 : 秋叶收藏集,, 动态规划, 重点 (很好的一个题) 同时改变三个状态的方式。 线性dp 线性dp 简单点的状态定义就是 dp[i] ,i 为索引。 升级以下就是 dp[i][j] ij, 都是索引。 再变态一点 dpp[i][j], i 是索引, j 代表当前位置的j 个状态参数。 这j 个状态参数可以一同去 决定下一个状态。,,

Q771 :宝石与石头 (简单无聊)

Q142 : 环形链表 II 查找 链表的 可能的 环的 起始点。 快慢指针, 同向双指针, 反向双指针。

Q55 : 数组跳跃 。 最好的办法是 贪心, 自己写出来了 递归的dp.(记忆化递归)

Q49 : 字母异位词分组 . 判定单词字母元素频率是否相同。

Q416. 分割等和子集 动态规划 参考了 55的模板 01背包 的类似题。 参考 Q494 也是类似的题。只是更难一些。没有这个好转化

Q56 : 合并区间 快排。 两个区间可能的关系。

Q530 : 二叉搜索树的最小绝对差

Q48 : 旋转矩阵 顺时针转90度 原地修改

Q101 : 对称二叉树
对比两课树是否是镜像的。 树中的同步指针

Q1002 : 查找常用字符 字符统计

Q24 : 一个链表的 每两个结点进行交换

Q621 : 任务调度 相同任务要间隔n秒才能执行。 不是动态规划, 重点 类型: 任务调度器类型

Q136 : 只出现一次的数字 : 连续的 亦或 运算。

Q46 : 全排列 比较熟悉了 使用 vis 标记

Q53 : 最大子序和 前缀和 问题

Q62 : 不同路径

Q64 : 最小路径和 和 62 基本相同。

Q70 : 爬楼梯 有多少种方案 斐波那契 线性dp

Q977 : 有序数组的平方

Q75 : 颜色分类

Q76 : 最小覆盖子串

Q52 : n 皇后 老简单题了, 写太多了啊;

Q79 : 单词搜索 回溯法

98 : . 验证二叉搜索树

Q844 : . 比较含退格的字符串

Q96 : 不同的二叉搜索树 有多少种二叉搜索树。

Q102 : 二叉树的 层次 遍历

Q143 : 链表重排 链表
快慢指针 找中点 递推反转 交替合并

Q104 二叉树的最大深度

Q114 : 二叉树展开为链表

Q925 : 长按键入

Q763 : 划分字母区间 (重点) 贪心 双指针。

Q121 : 买卖股票的最佳时机 双指针 重点。

Q124 . 二叉树中的最大路径和 (起点和终点可以由任意两点构成 )

Q234 : 回文链表

Self : 判断一个数 是否是 2^n
假设 8(100) 8-1 = 7(011) 8 & 7 = 0 . 如果是0,则true .

Q1024 : 视频拼接 数组 贪心 Q55 的变形 变难了。 动态规划 也可。 重点

Q139 : 单词拆分

Q845 :数组中的最长山脉 数组 的题 双指针 指针非常容易出错。 ****************

Q1365 . 有多少小于当前数字的数字 计数排序 + 前缀和 的思想。

Q139 : 单词拆分 动态规划 dp[i]

Q141 . 环形链表 判断链表是否有环 快慢指针

Q146 : LRU缓存机制 LinkedHashMap **********************

Q148 : 排序链表 链表排序 挺难。 未做出来 超级 重要 。重点 ****************

Q144 . 二叉树的 前序遍历 非递归 。

Q1207 . 独一无二的出现次数 哈希计数

Q152 ; 乘积最大子数组 ******************

Q129 . 求根到叶子节点数字之和

Q155 . 最小栈 使用 辅助栈

Q463 . 岛屿的周长 直接两个for

Q160 : 相交链表

Q169 : 多数元素 重点 要 时间 空间 o(n)o(n) 的算法

Q198 : 打家劫舍

Q200 : 岛屿数量 全图 dfs 标记 : 涂色 数块。

Q206 : 反转链表 递推 反转链表

Q381 : O(1) 时间插入、删除和获取随机元素 - 允许重复 HashMap<Integer,Set> and List

Q140 : . 单词拆分 II , 参考 Q139

Q349 . 两个数组的交集

Q941 : 有效的山脉数字

Q57 : 插入区间 区间之间的关系 : 交 包含 相离。

            两个区间的操作 :  并 差 交 补

Q208 : 实现前缀树 实现 Trie (前缀树) : 最长前缀匹配

Q128 : 最长连续序列 Hash

Q221 : 最大正方形 动态规划 注意优化 和 状态定义

Q127 : 单词接龙 应该是bfs 求最短路径。 bfs

Q1356 . 根据数字二进制下 1 的数目排序 map 计数,分段排序

Q236 . 二叉树的最近公共祖先

Q122 : 买卖股票的最佳时机 II 股票问题 动态规划 贪心 还是有点难的 股票问题 集合题目

Q973 : 最接近原点的 K 个点 , 快排寻找 优先队列 都可以。 堆的话,可以保持堆的大小,节省空间。快排可以实现o(n) 合并 Q215 来看 放到 周末一开看把

Q31 : 下一个排列 一个序列的 字典序 中 的 下一个 排列 搞清楚字典序下一个残生的过程。

Q514 : 自由之路。 动态规划

Q922 : 按奇偶排序数组 II 双指针,交替滑动。 奇偶数 用 位运算 判断。

Q328 :. 奇偶链表 双指针 + cur 指针遍历链表

// 开始 单调栈 *********************

Q239 : 滑动窗口最大值 单调栈 重要 一个 很重要的 栈维护技巧。

Q496 . 下一个更大元素 I Q239 的简化 单调栈 的应用。 也有些不同。 496的单调栈直接存数据就好。而239涉及窗口滑动存的是索引

Q402 移掉K位数字 *********************

// 结束 单调栈

Q1122 : . 数组的相对排序

Q240 : . 搜索二维矩阵 II 自己的太垃圾了。

Q279 : 完全平方数 ???? 贪心 ??? 动态规划写出来了。

Q406 . 根据身高重建队列 脑筋急转弯 有两个特性 1. 个高的看不见个子低的,所以个子矮的 可以到比自己高的队列中随意插队,而不影响原队列的合理性。 2. 身高相同的,一定是k大的在后边,否则有矛盾 (7,0)(7,1)合理 ---> (7,1)(7,0)矛盾。

Q283 : . 移动零

Q1030 : . 距离顺序排列矩阵单元格

Q287 : 寻找重复数 第一次写,违背了数组只读原则。 很重要 关联 Q142 弗洛伊德怪圈 快慢指针

Q134 : . 加油站 数学证明

Q300 : . 最长上升子序列 动态规划 LIS

Q309 : 最佳买卖股票时机含冷冻期 Q122 扩展 : 状态机写法。明天再看吧。

Q147 : 对链表进行插入排序

Q322 : 零钱兑换 动态规划 背包问题

Q191 : . 位1的个数 将 n 和 n-1做与运算会将最低位的 1 变成 0

Q338 : 比特位计数 参考 Q191 的一个数的比特位求法。可以发现 数i的比特位数 依赖于 i&(i-1)的位数。

Q394 : . 字符串解码

Q399 : . 除法求值

Q437 : . 路径总和 III

Q438 : . 找到字符串中所有字母异位词 双指针 滑动窗口 典型题

Q448 : . 找到所有数组中消失的数字

Q452 : . 用最少数量的箭引爆气球

Q222 : . 完全二叉树的节点个数 重点

Q461 : . 汉明距离

Q1370 : . 上升下降字符串

Q494 : 子集 目标和 子集生成 。 重点 Q416

Q543 : . 二叉树的直径 后序求树的深度。

Q560 : . 和为K的子数组 前缀和 + 哈希表优化

Q164 : . 最大间距 大桶排序 基数排序,按位排序。 重点 优秀的题 太秀了啊 基数排序:先排最低位,收集,再排次低位。最后就是有序的。 时间是位数d o(dn) 由于 d < 32 所以是o(n) 实际上nlgn的排序不比基数排序慢。 ln(n) < 32 两者差不多

          比较好的是分段桶。 

Q454 : 四数相加 II 和两数之和类似, 只是这里增加了分组。 ab一组,cd一组。在cd 中找 target - ab

Q581 : 最短无序连续子数组 数组 爬山题

Q617 : 合并二叉树 两棵树的同步递归即可

Q739 : 每日温度 单调栈 关联 Q496 单调栈 的 题 认不出来。 对栈的理解差太多了。

Q9 : . 回文数

Q976 : . 三角形的最大周长 排序+贪心

Q767 . 重构字符串 好难啊。

Q8 : . 字符串转换整数 (atoi)

Q14 : . 最长公共前缀

Q204 : . 计数质数

Q738 : . 单调递增的数字 单调栈 爬山坡

Q290 : . 单词规律

Q714 : . 买卖股票的最佳时机含手续费

Q316 : 去除重复字母 且结果字典序最小。 单调栈 维持 字典序

Q103 : . 二叉树的锯齿形层序遍历

Q387 : . 字符串中的第一个唯一字符 废物题

Q455 : . 分发饼干 排序+贪心

Q205 : . 同构字符串

Q188 : . 买卖股票的最佳时机 IV 好难 动太规划 : 状态定义 转移 边界的初始化 其中状态定义和转移是解题思路决定,有时候很难想到,只考虑宏观情况。 而边界的初始化,则要考虑细致。

Q1046 : . 最后一块石头的重量

Q84 : . 柱状图中最大的矩形 Q85 Q42 单调栈

Q85 : . 最大矩形 好难 暴力都不会 结合 Q84 Q221(区别) ????? 单调栈

Q435 : . 无重叠区间 贪心 左端点排序, 倒序判断 关联 Q452

Q605 : . 种花问题

Q86 : . 分隔链表 太简单了

Q509 : . 斐波那契数 快速幂的做法还是可取的。

Q830 : . 较大分组的位置 简单

Q547 : . 省份数量 dfs, bfs,并查集。 简单。 还是除法求值有点水平。

Q189 : . 旋转数组 AB -> BA (ATBT)T - > BA

Q228 : . 汇总区间

Q123 : . 买卖股票的最佳时机 III Q188 k == 2 的特殊情况

Q1202 : . 交换字符串中的元素 还挺难

Q684 : . 冗余连接 并查集 当出现结点ab 同根时,图中出现环。

Q1018 : . 可被 5 整除的二进制前缀

Q947 : . 移除最多的同行或同列石头 并查集的个数。 二维图建立并查集 三方合并。

Q1232 : . 缀点成线

Q959 : . 由斜杠划分区域 dfs 图 并查集 涂色算法 方块拆分

Q1128 : 等价多米诺骨牌对的数量

Q215 : 数组中的第K个最大元素 : 堆排序 基于快排的选择方法
重点题目 。 面试常考 ****** 合并 Q973 一块看。 Q1631 : . 最小体力消耗路径 图论题很好的一个题。 活活脑子, 还能这么做。
二分法的结合, 判定性问题的发现, 并查集的结合, Dijkstra的结合。Dijkstra是最容易想到的了, 这里对Dijkstra做了改动,不是总路径长度,而是路径上,最长边长。 优先队列法的 Dijkstra 的标准模板

          很好的题

Q778 : . 水位上升的泳池中游泳 两个点连通的条件 和 边长的 关系。。

Q839 : . 相似字符串组 并查集, 枚举任意两个字符串, 判断是否在同一组,若在同一组,把两个字符串所在的集合合并。 并查集 两个元素相通,则连接两个元素所在的集合,初始每个元素独自一个集合。

Q888 : . 公平的糖果棒交换

// 滑动窗口月???? Q424 : . 替换后的最长重复字符 滑动窗口 (一定要搞懂) 我觉的很难啊, 写不出来,然而是字节面试第一题。

Q480 : . 滑动窗口中位数

Q643 : . 子数组最大平均数 I 最大和。 简单。 不要再看。固定大小的滑动窗口

Q1208 : . 尽可能使字符串相等 滑动窗口

Q1423 : . 可获得的最大点数

Q665 : . 非递减数列 一点也不简单 完全的面向测试编程。 多看一看。好题

Q978 : . 最长湍流子数组 滑动窗口 直接滑动 好题。

Q992 : . K 个不同整数的子数组 滑动窗口, 集合思想,不回溯指针。 好题 关联Q340

Q567 : 字符串的排列 等价于 Q438 438是找出所有。

Q703 : . 数据流中的第 K 大元素 优先队列即可.不用再看.

Q485 : . 最大连续1的个数 不要再看。

Q765 : . 情侣牵手

Q1438 : . 绝对差不超过限制的最长连续子数组 平衡树 TreeMap模拟平衡树 红黑树 双堆 key : 在考虑left端移出的同时, 保存窗口内的 最大 最小 值。 单调栈维持窗口最值*************

Q766 : . 托普利茨矩阵

Q1052 : . 爱生气的书店老板

Q832 : . 翻转图像

Q896 : . 单调数列 排除法; 模拟单调栈的长度。长度为len-1,则表明是单调的。

// 双头双指针的边界抛弃法。 经典题 Q11 Q15 Q16 Q16 : . 最接近的三数之和

Q15 : 三数之和。 不要用hash表。不行的。

Q26 : . 删除排序数组中的重复项 简单题

Q54 : . 螺旋矩阵

Q59 : 螺旋矩阵 II 同Q54;

Q230 ; . 二叉搜索树中第K小的元素 中序遍历第k个元素.

Q61 : . 旋转链表 同步指针测量长度.

Q88 : . 合并两个有序数组

Q89 . 格雷编码

Q217 : . 存在重复元素

Q292 . Nim 游戏 策略游戏, 数字规律

Q304 : 二维区域和检索 - 矩阵不可变 类似前缀和

Q354 : . 俄罗斯套娃信封问题

Q232 : . 用栈实现队列 分为输入栈,输出栈。 输出栈空了,就一次性把输入栈全部倒入输出栈。

Q503 : . 下一个更大元素 II

Q395 : . 至少有 K 个重复字符的最长子串 很好的一道题 分治思想, 枚举字符种类 枚举字符种类数量 滑动窗口

Q131 : 分割回文串 动态规划+回溯 记忆化递归

Qms04_01 : 面试题 04.01 : . 节点间通路

Q132 : . 分割回文串 II 和Q131 相似, 都用到了二维dp来判断子串是否是回文串。 在此基础上找最少划分。

Q29 : . 两数相除 数论题
a/b = (a-2^nb)/b + 2^n 假设 c = a-2^nb 则有 a/b = c/b + 2^n; b < c < a 这样就可以不断的缩小a。 a每次下降的倍数不止2. a/b ----> c/b 目标: 找最大的 2^n 使得 a > 2^n*b 即可。

Q13 : . 罗马数字转整数 还可以。

Q1047 : . 删除字符串中的所有相邻重复项 利用栈

Q224 : . 基本计算器 可以用去括号的方法(变号)来计算 我用的栈式的遇到右括号就出栈到左括号

Q227 : . 基本计算器 II

Q331 : . 验证二叉树的前序序列化 看作以课出度为 0和2的树, 满足 n0 = n2 + 1; 有序先序遍历,总是先遇到n2结点,所以 在最后一个#之前,总是有 n0 < n2+1 否则就是错误的。 很好的题

Q705 : . 设计哈希集合set 非常好的题 Q706 : map linkedList中放 int[2]

Q36 : . 有效的数独 占领行,占领列,占领小方块。

Q73 : . 矩阵置零

Q92 : . 反转链表 II 好难啊。 指针总是搞错。完全面向测试编程。ans的反转真的很巧妙。头结点的设置。厉害 头结点的设置真的是灵魂, 头结点设置往往可以统一操作。 避免去考虑,是不是从头开始的问题。 反转链表的3种思想: 1 : 传统迭代法,挨个向前指向。 2 : 删除该结点,把他插入到头结点之后,头插法实现反转。 3 : 串针引线。答案的写法,真的是看不懂。

Q91 : . 解码方法 类似于 爬楼梯有多少种方案, 动态规划

Q138 . 复制带随机指针的链表 深拷贝 很有价值

Q150 : . 逆波兰表达式求值

Q162 . 寻找峰值 二分找峰值, mid在上升,那么峰值在右,mid在下降,那么峰值在左。

Q380 . 常数时间插入、删除和获取随机元素

Q378 : . 有序矩阵中第 K 小的元素 很重要。非常好的题啊。

Q371 : . 两整数之和 位运算求和。 卧槽,为啥啊。 很好的题

Q179 : . 最大数 换成字符串排序,就成了高位开始的比较排序了。 也就是字典序。 恰好适合高位优先原则。

Q210 : . 课程表 II 拓扑排序

Q289 : . 生命游戏 没啥意思

Q324 : . 摆动排序 II 很好的题 不会 完全不像个med 快速选择(找中位数) + 3-way-partition(然后分3段) 方法3学不会,什么虚拟地址 不会优化空间到o(1)

Q341 : . 扁平化嵌套列表迭代器

Q334 : . 递增的三元子序列 LIS的 最长为3的情况。 因为LIS的复杂度为 nlgk 这里k=3 所以复杂度为o(n) 关联 Q300 , 可以简化理解 LIS.

Q456 : . 132 模式 单调栈 很好的题

Q82 : . 删除排序链表中的重复元素 II

Q173 : . 二叉搜索树迭代器 基于非递归的中序遍历。

Q74 . 搜索二维矩阵 二分查找 第一个大于, 最后一个小于 很好

Q190 : . 颠倒二进制位 关于正负数移动时的补位情况。

Q166 : . 分数到小数

Q90 : . 子集 II 带重复元素的不重复子集。

Q1006 : . 笨阶乘

Q80 : . 删除有序数组中的重复项 II

// 未完美解决问题集合

Q995 : . K 连续位的最小翻转次数 困难题

Q803 : . 打砖块 跑不通 案例 并查集???

Q1203 : . 项目管理 拓扑排序 双层拓扑排序 太麻烦了。

Q330 : . 按要求补齐数组 数论题, 无能为力、

Q135 : 分发糖果。

Q493 : . 翻转对 太难了 。

Q327 : 区间和的个数 : 难题, 线段树 归并排序 树状数组 平衡树 : 能接受的 就是 归并排序的方法 (骚)。 区间问题 区间 放弃了

废弃题目: Q321 :. 拼接最大数 又是单调栈 卧槽。 想不到啊。** 单调栈 重点难点 这个题意义不大

About

自己刷leetcode的做题记录,意为在此存档备份。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published