随笔分类 -  leetcode

摘要:题目定义: 给定一个二叉搜索树的根节点 root ,和一个整数 k ,请你设计一个算法查找其中第 k 个最小元素(从 1 开始计数)。 示例 1: 输入:root = [3,1,4,null,2], k = 1 输出:1 示例 2: 输入:root = [5,3,6,2,4,null,null,1] 阅读全文
posted @ 2021-02-07 14:33 0xHigos 阅读(89) 评论(0) 推荐(0)
摘要:题目定义: 给你一个长度为 n 的整数数组,请你判断在 最多 改变 1 个元素的情况下, 该数组能否变成一个非递减数列。 我们是这样定义一个非递减数列的: 对于数组中所有的 i (0 <= i <= n-2), 总满足 nums[i] <= nums[i + 1]。 示例 1: 输入: nums = 阅读全文
posted @ 2021-02-07 12:49 0xHigos 阅读(77) 评论(0) 推荐(0)
摘要:题目定义: 几张卡牌 排成一行,每张卡牌都有一个对应的点数。点数由整数数组 cardPoints 给出。 每次行动,你可以从行的开头或者末尾拿一张卡牌,最终你必须正好拿 k 张卡牌。 你的点数就是你拿到手中的所有卡牌的点数之和。 给你一个整数数组 cardPoints 和整数 k,请你返回可以获得的 阅读全文
posted @ 2021-02-06 11:06 0xHigos 阅读(98) 评论(0) 推荐(0)
摘要:题目定义: 给你一棵 完全二叉树 的根节点 root ,求出该树的节点个数。 完全二叉树 的定义如下:在完全二叉树中,除了最底层节点可能没填满外, 其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的 若干位置。若最底层为第 h 层,则该层包含 1~ 2h 个节点。 输入:root 阅读全文
posted @ 2021-02-05 14:51 0xHigos 阅读(65) 评论(0) 推荐(0)
摘要:题目定义: 给你两个长度相同的字符串,s 和 t。 将 s 中的第 i 个字符变到 t 中的第 i 个字符需要 |s[i] - t[i]| 的开销(开销可能为 0), 也就是两个字符的 ASCII 码值的差的绝对值。 用于变更字符串的最大预算是 maxCost。在转化字符串时,总开销应当小于等于该预 阅读全文
posted @ 2021-02-05 11:35 0xHigos 阅读(93) 评论(0) 推荐(0)
摘要:题目定义: 给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 示例: 输入: [1,2,3,null,5,null,4] 输出: [1, 3, 4] 解释: 1 < / \ 2 3 < \ \ 5 4 < 方式一(层序遍历): class Solution 阅读全文
posted @ 2021-02-04 12:43 0xHigos 阅读(58) 评论(0) 推荐(0)
摘要:题目定义: 给定 n 个整数,找出平均数最大且长度为 k 的连续子数组,并输出该最大平均数。 示例: 输入:[1,12,-5,-6,50,3], k = 4 输出:12.75 解释:最大平均数 (12-5-6+50)/4 = 51/4 = 12.75 方式一(滑动窗口): class Solutio 阅读全文
posted @ 2021-02-04 10:17 0xHigos 阅读(48) 评论(0) 推荐(0)
摘要:题目定义: 中位数是有序序列最中间的那个数。如果序列的大小是偶数,则没有最中间的数; 此时中位数是最中间的两个数的平均数。 例如: [2,3,4],中位数是 3 [2,3],中位数是 (2 + 3) / 2 = 2.5 给你一个数组 nums,有一个大小为 k 的窗口从最左端滑动到最右端。 窗口中有 阅读全文
posted @ 2021-02-04 10:15 0xHigos 阅读(59) 评论(0) 推荐(0)
摘要:题目定义: 给你一个仅由大写英文字母组成的字符串,你可以将任意位置上的字符替换成另外的字符, 总共可最多替换 k 次。在执行上述操作后,找到包含重复字母的最长子串的长度。 注意:字符串长度 和 k 不会超过 104。 示例 1: 输入:s = "ABAB", k = 2 输出:4 解释:用两个'A' 阅读全文
posted @ 2021-02-03 10:10 0xHigos 阅读(49) 评论(0) 推荐(0)
摘要:题目定义: 实现一个二叉搜索树迭代器。你将使用二叉搜索树的根节点初始化迭代器。 调用 next() 将返回二叉搜索树中的下一个最小的数。 BSTIterator iterator = new BSTIterator(root); iterator.next(); // 返回 3 iterator.n 阅读全文
posted @ 2021-02-01 20:42 0xHigos 阅读(61) 评论(0) 推荐(0)
摘要:题目定义: 爱丽丝和鲍勃有不同大小的糖果棒:A[i] 是爱丽丝拥有的第 i 根糖果棒的大小, B[j] 是鲍勃拥有的第 j 根糖果棒的大小。 因为他们是朋友,所以他们想交换一根糖果棒,这样交换后,他们都有相同的糖果总量。 (一个人拥有的糖果总量是他们拥有的糖果棒大小的总和。) 返回一个整数数组 an 阅读全文
posted @ 2021-02-01 11:40 0xHigos 阅读(67) 评论(0) 推荐(0)
摘要:题目定义: 给定一个整数类型的数组 nums,请编写一个能够返回数组 “中心索引” 的方法。 我们是这样定义数组 中心索引 的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加的和。 如果数组不存在中心索引,那么我们应该返回 -1。如果数组有多个中心索引,那么我们应该返回最靠近左边的那一个。 阅读全文
posted @ 2021-01-28 10:55 0xHigos 阅读(50) 评论(0) 推荐(0)
摘要:题目定义: 给你一个由一些多米诺骨牌组成的列表 dominoes。 如果其中某一张多米诺骨牌可以通过旋转 0 度或 180 度得到另一张多米诺骨牌,我们就认为这两张牌是等价的。 形式上,dominoes[i] = [a, b] 和 dominoes[j] = [c, d] 等价的前提是 a==c 且 阅读全文
posted @ 2021-01-26 10:52 0xHigos 阅读(105) 评论(0) 推荐(0)
摘要:题目定义: 给定一个二叉树,它的每个结点都存放一个 0-9 的数字,每条从根到叶子节点的路径都代表一个数字。 例如,从根到叶子节点路径 1->2->3 代表数字 123。 计算从根到叶子节点生成的所有数字之和。 说明: 叶子节点是指没有子节点的节点。 示例 1: 输入: [1,2,3] 1 / \ 阅读全文
posted @ 2021-01-25 19:49 0xHigos 阅读(94) 评论(0) 推荐(0)
摘要:题目定义: 在由 1 x 1 方格组成的 N x N 网格 grid 中,每个 1 x 1 方块由 /、\ 或空格构成。 这些字符会将方块划分为一些共边的区域。 (请注意,反斜杠字符是转义的,因此 \ 用 "\\" 表示。)。 返回区域的数目。 示例 1: 输入: [ " /", "/ " ] 输出 阅读全文
posted @ 2021-01-25 14:51 0xHigos 阅读(65) 评论(0) 推荐(0)
摘要:题目定义: 用以太网线缆将 n 台计算机连接成一个网络,计算机的编号从 0 到 n-1。线缆用 connections 表示, 其中 connections[i] = [a, b] 连接了计算机 a 和 b。 网络中的任何一台计算机都可以通过网络直接或者间接访问同一个网络中其他任意一台计算机。 给你 阅读全文
posted @ 2021-01-25 11:03 0xHigos 阅读(77) 评论(0) 推荐(0)
摘要:题目定义: 给定一个二叉树,原地将它展开为一个单链表。 例如,给定二叉树 1 / \ 2 5 / \ \ 3 4 6 将其展开为: 1 \ 2 \ 3 \ 4 \ 5 \ 6 方式一(前序遍历-迭代): /* * 思路: 将左子树插入到右子树的地方 将原来的右子树接到左子树的最右边节点 考虑新的右子 阅读全文
posted @ 2021-01-23 14:04 0xHigos 阅读(89) 评论(0) 推荐(0)
摘要:题目定义: 对于非负整数 X 而言,X 的数组形式是每位数字按从左到右的顺序形成的数组。 例如,如果 X = 1231,那么其数组形式为 [1,2,3,1]。 给定非负整数 X 的数组形式 A,返回整数 X+K 的数组形式。 示例 1: 输入:A = [1,2,0,0], K = 34 输出:[1, 阅读全文
posted @ 2021-01-22 10:45 0xHigos 阅读(89) 评论(0) 推荐(0)
摘要:题目定义: 给你一个 n 个点的带权无向连通图,节点编号为 0 到 n-1 ,同时还有一个数组 edges , 其中 edges[i] = [fromi, toi, weighti] 表示在 fromi 和 toi 节点之间有一条带权无向边 。最小生成树 (MST) 是给定图中边的一个子集,它连接了 阅读全文
posted @ 2021-01-21 14:00 0xHigos 阅读(145) 评论(0) 推荐(0)
摘要:题目定义: 给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径。 说明: 叶子节点是指没有子节点的节点。 示例: 给定如下二叉树,以及目标和 sum = 22, 5 / \ 4 8 / / \ 11 13 4 / \ / \ 7 2 5 1 返回: [ [5,4,11 阅读全文
posted @ 2021-01-20 16:33 0xHigos 阅读(81) 评论(0) 推荐(0)