随笔分类 -  OJ

上一页 1 2 3 4 5 6 ··· 10 下一页
一些题目的思路和代码
摘要:93. 复原 IP 地址 有效 IP 地址 正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0),整数之间用 '.' 分隔。 例如:"0.1.2.201" 和 "192.168.1.1" 是 有效 IP 地址,但是 "0.011.255.245"、"192.168.1.312 阅读全文
posted @ 2023-03-27 19:11 付玬熙 阅读(32) 评论(0) 推荐(0) 编辑
摘要:131. 分割回文串 给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串 。返回 s 所有可能的分割方案。 回文串 是正着读和反着读都一样的字符串。 示例 1: 输入:s = "aab" 输出:[["a","a","b"],["aa","b"]] 示例 2: 输入:s = "a" 阅读全文
posted @ 2023-03-26 15:23 付玬熙 阅读(20) 评论(0) 推荐(0) 编辑
摘要:216. 组合总和 III 找出所有相加之和为 n 的 k 个数的组合,且满足下列条件: 只使用数字1到9 每个数字 最多使用一次 返回 所有可能的有效组合的列表 。该列表不能包含相同的组合两次,组合可以以任何顺序返回。 示例 1: 输入: k = 3, n = 7 输出: [[1,2,4]] 解释 阅读全文
posted @ 2023-03-25 22:51 付玬熙 阅读(23) 评论(0) 推荐(0) 编辑
摘要:47. 全排列 II 给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。 示例 1: 输入:nums = [1,1,2] 输出: [[1,1,2], [1,2,1], [2,1,1]] 示例 2: 输入:nums = [1,2,3] 输出:[[1,2,3],[1,3,2] 阅读全文
posted @ 2023-03-21 14:30 付玬熙 阅读(19) 评论(0) 推荐(0) 编辑
摘要:46. 全排列 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。 示例 1: 输入:nums = [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]] 示例 2: 输入:nums = 阅读全文
posted @ 2023-03-20 00:35 付玬熙 阅读(17) 评论(0) 推荐(0) 编辑
摘要:构造AVL树基础 定义 对于任意一个节点,左子树和右子树的高度差不能超过1。 怎么计算 标注节点的高度 计算平衡因子 如何维持平衡 如果平衡被打破需要根据不同的情况来旋转修改树,如插入2后,原有的平衡被打破,节点8变得不平衡: 左旋操作 针对情况 RR 插入的元素在不平衡的节点的右侧的右侧,即 RR 阅读全文
posted @ 2023-02-10 15:43 付玬熙 阅读(38) 评论(0) 推荐(0) 编辑
摘要:21. 合并两个有序链表 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1: 输入:l1 = [1,2,4], l2 = [1,3,4] 输出:[1,1,2,3,4,4] 示例 2: 输入:l1 = [], l2 = [] 输出:[] 示例 阅读全文
posted @ 2023-02-06 10:14 付玬熙 阅读(27) 评论(0) 推荐(0) 编辑
摘要:1642. 可以到达的最远建筑 给你一个整数数组 heights ,表示建筑物的高度。另有一些砖块 bricks 和梯子 ladders 。 你从建筑物 0 开始旅程,不断向后面的建筑物移动,期间可能会用到砖块或梯子。 当从建筑物 i 移动到建筑物 i+1(下标 从 0 开始 )时: 如果当前建筑物 阅读全文
posted @ 2023-01-27 14:38 付玬熙 阅读(21) 评论(0) 推荐(0) 编辑
摘要:871. 最低加油次数 汽车从起点出发驶向目的地,该目的地位于出发位置东面 target 英里处。 沿途有加油站,每个 station[i] 代表一个加油站,它位于出发位置东面 station[i][0] 英里处,并且有 station[i][1] 升汽油。 假设汽车油箱的容量是无限的,其中最初有  阅读全文
posted @ 2023-01-26 22:43 付玬熙 阅读(24) 评论(0) 推荐(0) 编辑
摘要:264. 丑数 II 给你一个整数 n ,请你找出并返回第 n 个 丑数 。 丑数 就是只包含质因数 2、3 和/或 5 的正整数。 示例 1: 输入:n = 10 输出:12 解释:[1, 2, 3, 4, 5, 6, 8, 9, 10, 12] 是由前 10 个丑数组成的序列。 示例 2: 输入 阅读全文
posted @ 2023-01-26 20:50 付玬熙 阅读(16) 评论(0) 推荐(0) 编辑
摘要:1439. 有序矩阵中的第 k 个最小数组和 给你一个 m * n 的矩阵 mat,以及一个整数 k ,矩阵中的每一行都以非递减的顺序排列。 你可以从每一行中选出 1 个元素形成一个数组。返回所有可能数组中的第 k 个 最小 数组和。 示例 1: 输入:mat = [[1,3,11],[2,4,6] 阅读全文
posted @ 2023-01-13 16:08 付玬熙 阅读(33) 评论(0) 推荐(0) 编辑
摘要:373. 查找和最小的 K 对数字 给定两个以 升序排列 的整数数组 nums1 和 nums2 , 以及一个整数 k 。 定义一对值 (u,v),其中第一个元素来自 nums1,第二个元素来自 nums2 。 请找到和最小的 k 个数对 (u1,v1), (u2,v2) ... (uk,vk) 。 阅读全文
posted @ 2023-01-12 17:41 付玬熙 阅读(87) 评论(0) 推荐(0) 编辑
摘要:295. 数据流的中位数 中位数是有序整数列表中的中间值。如果列表的大小是偶数,则没有中间值,中位数是两个中间值的平均值。 例如 arr = [2,3,4] 的中位数是 3 。 例如 arr = [2,3] 的中位数是 (2 + 3) / 2 = 2.5 。 实现 MedianFinder 类: M 阅读全文
posted @ 2023-01-11 00:05 付玬熙 阅读(28) 评论(0) 推荐(0) 编辑
摘要:1046. 最后一块石头的重量 有一堆石头,每块石头的重量都是正整数。 每一回合,从中选出两块 最重的 石头,然后将它们一起粉碎。假设石头的重量分别为 x 和 y,且 x <= y。那么粉碎的可能结果如下: 如果 x == y,那么两块石头都会被完全粉碎; 如果 x != y,那么重量为 x 的石头 阅读全文
posted @ 2023-01-09 16:15 付玬熙 阅读(18) 评论(0) 推荐(0) 编辑
摘要:堆介绍 实现可以通过跳表、二叉堆。 详细介绍来自Heap Tree 最小堆积(Min heap):父节点小于等于子节点 最大堆积(Max heap):父节点大于等于子节点(但是下一层的节点不一定比上一层的所有节点都小) 基于数组实现二叉堆 二叉堆是一棵完全二叉树,当前节点下标i和其父、子节点之间的关 阅读全文
posted @ 2023-01-09 16:10 付玬熙 阅读(58) 评论(0) 推荐(0) 编辑
摘要:501. 二叉搜索树中的众数 给你一个含重复值的二叉搜索树(BST)的根节点 root ,找出并返回 BST 中的所有 众数(即,出现频率最高的元素)。 如果树中有不止一个众数,可以按 任意顺序 返回。 假定 BST 满足如下定义: 结点左子树中所含节点的值 小于等于 当前节点的值 结点右子树中所含 阅读全文
posted @ 2022-12-08 00:46 付玬熙 阅读(20) 评论(0) 推荐(0) 编辑
摘要:230. 二叉搜索树中第K小的元素 给定一个二叉搜索树的根节点 root ,和一个整数 k ,请你设计一个算法查找其中第 k 个最小元素(从 1 开始计数)。 示例 1: 输入:root = [3,1,4,null,2], k = 1 输出:1 示例 2: 输入:root = [5,3,6,2,4, 阅读全文
posted @ 2022-12-07 23:15 付玬熙 阅读(70) 评论(0) 推荐(0) 编辑
摘要:99. 恢复二叉搜索树 给你二叉搜索树的根节点 root ,该树中的 恰好 两个节点的值被错误地交换。请在不改变其结构的情况下,恢复这棵树 。 示例 1: 输入:root = [1,3,null,null,2] 输出:[3,1,null,null,2] 解释:3 不能是 1 的左孩子,因为 3 > 阅读全文
posted @ 2022-12-05 17:47 付玬熙 阅读(17) 评论(0) 推荐(0) 编辑
摘要:98. 验证二叉搜索树 给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下: 节点的左子树只包含 小于 当前节点的数。 节点的右子树只包含 大于 当前节点的数。 所有左子树和右子树自身必须也是二叉搜索树。 示例 1: 输入:root = [2,1,3] 阅读全文
posted @ 2022-12-05 01:29 付玬熙 阅读(33) 评论(0) 推荐(0) 编辑
摘要:701. 二叉搜索树中的插入操作 给定二叉搜索树(BST)的根节点 root 和要插入树中的值 value ,将值插入二叉搜索树。 返回插入后二叉搜索树的根节点。 输入数据 保证 ,新值和原始二叉搜索树中的任意节点值都不同。 注意,可能存在多种有效的插入方式,只要树在插入后仍保持为二叉搜索树即可。 阅读全文
posted @ 2022-12-02 00:45 付玬熙 阅读(18) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 ··· 10 下一页
点击右上角即可分享
微信分享提示
主题色彩