ARTS
文章平均质量分 91
风含叶
这个作者很懒,什么都没留下…
展开
-
ARTS Week 42
ARTS Week 42从零开始Algoithm最接近的二叉搜索树值 II概述给定一个不为空的二叉搜索树和一个目标值 target,请在该二叉搜索树中找到最接近目标值 target 的 k 个值。注意:给定的目标值 target 是一个浮点数你可以默认 k 值永远是有效的,即 k ≤ 总结点数题目保证该二叉搜索树中只会存在一种 k 个值集合最接近目标值示例:输入: root = [4,2,5,1,3],目标值 = 3.714286,且 k = 2 4原创 2021-10-08 19:17:03 · 227 阅读 · 0 评论 -
ARTS Week 41
ARTS Week 41总是有人要赢的,那为什么不能是我呢? ——科比·布莱恩特Algoithm树的直径概述给你这棵「无向树」,请你测算并返回它的「直径」:这棵树上最长简单路径的 边数。我们用一个由所有「边」组成的数组 edges 来表示一棵无向树,其中 edges[i] = [u, v] 表示节点 u 和 v 之间的双向边。树上的节点都已经用 {0, 1, …, edges.length} 中的数做了标记,每个节点上的标记都是独一无二的。示例 1:输入:edges =原创 2021-10-04 00:42:01 · 443 阅读 · 0 评论 -
ARTS Week 40
ARTS Week 40从零开始Algoithm机器人的运动范围概述地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] 。一个机器人从坐标 [0, 0]的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能够进入方格 [35, 37] ,因为3+5+3+7=18。但它不能进入方格 [35, 38],因为3+5+3+8=19。请问该机器人能够到达多少个格子?示例原创 2021-09-28 11:58:16 · 203 阅读 · 0 评论 -
ARTS Week 39
ARTS Week 39凡事过往,皆为序章Algoithm从字符串生成二叉树概述你需要从一个包括括号和整数的字符串构建一棵二叉树。输入的字符串代表一棵二叉树。它包括整数和随后的 0 ,1 或 2 对括号。整数代表根的值,一对括号内表示同样结构的子树。若存在左子结点,则从左子结点开始构建。示例:输入:"4(2(3)(1))(6(5))"输出:返回代表下列二叉树的根节点: 4 / \ 2 6 / \ / 3 1原创 2021-09-19 21:46:03 · 179 阅读 · 0 评论 -
ARTS Week 38
ARTS Week 38从零开始Algoithm单词拆分概述给定一个非空字符串 s 和一个包含非空单词的列表 wordDict,判定s是否可以被空格拆分为一个或多个在字典中出现的单词。说明:拆分时可以重复使用字典中的单词。 你可以假设字典中没有重复的单词。示例 1:输入: s = "leetcode", wordDict = ["leet", "code"]输出: true 解释: 返回 true 因为 "leetcode" 可以被拆分成 "leet code"。示原创 2021-09-12 17:47:26 · 261 阅读 · 0 评论 -
ARTS Week 37
ARTS Week 37从零开始Algoithm跳跃游戏概述给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标。示例 1:输入:nums = [2,3,1,1,4]输出:true解释:可以先跳 1 步,从下标 0 到达下标 1, 然后再从下标 1 跳 3 步到达最后一个下标。示例 2:输入:nums = [3,2,1,0,4]输出:false解释:无论怎样,总会原创 2021-09-07 15:54:44 · 165 阅读 · 0 评论 -
ARTS Week 36
ARTS Week 36从零开始Algoithm买卖股票的最佳时机 II概述给定一个数组 prices ,其中prices[i] 是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例 1:输入: prices = [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5原创 2021-08-30 20:29:44 · 84 阅读 · 0 评论 -
ARTS Week 33
ARTS Week 33天将降大任于斯人也,必先苦其心志,劳其筋骨,饿其体肤,空乏其身,行拂乱其所为也,所以动心忍性,增益其所不能。Algoithm二维区域和检索 - 矩阵不可变概述给定一个二维矩阵,计算其子矩形范围内元素的总和,该子矩阵的左上角为 (row1, col1) ,右下角为 (row2, col2) 。上图子矩阵左上角 (row1, col1) = (2, 1) ,右下角(row2, col2) = (4, 3),该子矩形内元素的总和为 8。示例:给定 m原创 2021-03-30 14:16:48 · 101 阅读 · 0 评论 -
ARTS Week 34
ARTS Week 34不胜,则亡。但,不战,就不会胜利。Algoithm零钱兑换概述给定不同面额的硬币 coins 和一个总金额 amount。编写一个函数来计算可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回-1。你可以认为每种硬币的数量是无限的。示例1:输入:coins = [1, 2, 5], amount = 11 输出:3 解释:11 = 5 + 5 + 1 示例 2:输入:coins = [2], amount = 3 输出:原创 2021-03-30 14:14:29 · 80 阅读 · 0 评论 -
ARTS Week 32
ARTS Week 32当你走出家乡的时候,你就是你自己的家乡Algoithm二叉树的边界概述二叉树的 边界 是由 根节点 、左边界 、按从左到右顺序的 叶节点 和 逆序的右边界 ,按顺序依次连接组成。左边界 是满足下述定义的节点集合:根节点的左子节点在左边界中。如果根节点不含左子节点,那么左边界就为 空 。 如果一个节点在左边界中,并且该节点有左子节点,那么它的左子节点也在左边界中。 如果一个节点在左边界中,并且该节点 不含 左子节点,那么它的右子节点就在左边界中。最左原创 2021-03-18 13:31:23 · 305 阅读 · 0 评论 -
ARTS Week 31
ARTS Week 31世界上任何书籍都不能带给你好运,但是它们能让你悄悄成为你自己 --赫尔曼黑塞Algoithm解码方法概述一条包含字母 A-Z 的消息通过以下映射进行了 编码 :'A' -> 1'B' -> 2 ...'Z' -> 26 要 解码 已编码的消息,所有数字必须基于上述映射的方法,反向映射回字母(可能有多种方法)。例如,"111" 可以将 "1" 中的每个 "1" 映射为 "A" ,从而得到 "AAA" ,或者可以将 "11" 和 "1原创 2021-03-18 13:28:43 · 95 阅读 · 0 评论 -
ARTS Week 30
ARTS Week 30人生没有彩排,每一天都是现场直播。Algoithm二叉树中的最大路径和概述路径 被定义为一条从树中任意节点出发,沿父节点-子节点连接,达到任意节点的序列。同一个节点在一条路径序列中 至多出现一次 。该路径 至少包含一个 节点,且不一定经过根节点。路径和 是路径中各节点值的总和。给你一个二叉树的根节点 root ,返回其 最大路径和 。示例 1:输入:root = [1,2,3]输出:6解释:最优路径是 2 -> 1 -> 3 ,原创 2021-03-03 13:37:43 · 95 阅读 · 0 评论 -
ARTS Week 29
ARTS Week 29他死在一个谁都不知道角落我不想他的骨灰毫无意义。Algoithm递增顺序查找树概述给你一个树,请你 按中序遍历 重新排列树,使树中最左边的结点现在是树的根,并且每个结点没有左子结点,只有一个右子结点。示例 :输入:[5,3,6,2,4,null,8,1,null,null,null,7,9] 5 / \ 3 6 / \ \ 2 4 8 / / \ 1 7原创 2021-02-22 17:35:27 · 216 阅读 · 0 评论 -
ARTS Week 28
ARTS Week 28一星陨落,黯淡不了星空灿烂;一花凋零,荒芜不了整个春天。——巴尔扎克Algoithm元素和小于等于阈值的正方形的最大边长概述给你一个大小为=m x n=的矩阵=mat=和一个整数阈值=threshold。请你返回元素总和小于或等于阈值的正方形区域的最大边长;如果没有这样的正方形区域,则返回 0=。示例 1:输入:mat = [[1,1,3,2,4,3,2],[1,1,3,2,4,3,2],[1,1,3,2,4,3,2]], threshold =原创 2021-02-09 20:32:26 · 135 阅读 · 0 评论 -
ARTS Week 27
ARTS Week 27从零开始Algoithm分割回文串概述给定一个字符串 s,将 s 分割成一些子串,使每个子串都是回文串。返回 s 所有可能的分割方案。示例:输入:"aab"输出:[ ["aa","b"], ["a","a","b"]]分析这里可以通过回溯的方式快速进行调用。codeingclass Solution: def partition(self, s: str) -> list[list[str]]:原创 2021-02-07 11:04:27 · 280 阅读 · 0 评论 -
ARTS Week 25
ARTS Week 25能救自己的只有自己。必须只靠自己的力量强大起来,然后超越那个事件留下的伤痕。Algoithm最小路径和概述给定一个包含非负整数的 mxn网格grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。说明:每次只能向下或者向右移动一步。示例 1: 1 3 1 1 5 1 4 2 1输入:grid = [[1,3,1],[1,5,1],[4,2,1]]输出:7解释:因为路径 1→3→1→1→1 的总和最小。示例 2:输入:gr原创 2021-02-01 14:19:20 · 95 阅读 · 0 评论 -
ARTS Week 26
ARTS Week 26静水流深,沧笙踏歌Algoithm可被三整除的最大和概述给你一个整数数组 nums,请你找出并返回能被三整除的元素最大和。示例 1:输入:nums = [3,6,5,1,8]输出:18 解释:选出数字 3, 6, 1 和 8,它们的和是 18(可被 3 整除的最大和)。 示例 2:输入:nums = [4]输出:0 解释:4 不能被 3 整除,所以无法选出数字,返回 0。 示例 3:输入:nums = [1,2,3,4,4]输出原创 2021-02-01 14:17:17 · 100 阅读 · 0 评论 -
ARTS Week 24
ARTS Week 24如果不竭尽全力到最后一刻的话,是无法取胜的。 --《刀剑神域》Algoithm面试题 08.01. 三步问题概述三步问题。有个小孩正在上楼梯,楼梯有n阶台阶,小孩一次可以上1阶、2阶或3阶。实现一种方法,计算小孩有多少种上楼梯的方式。结果可能很大,你需要对结果模1000000007。示例1:输入:n = 3 输出:4 说明: 有四种走法 示例2:输入:n = 5 输出:13 提示:n范围在[1, 1000000]之间分析经典DP问题原创 2021-01-14 22:29:47 · 107 阅读 · 0 评论 -
ARTS Week 23
ARTS Week 23如果不竭尽全力到最后一刻的话,是无法取胜的。 --《刀剑神域》Algoithm前序遍历构造二叉搜索树概述返回与给定前序遍历preorder 相匹配的二叉搜索树(binary search tree)的根结点。(回想一下,二叉搜索树是二叉树的一种,其每个节点都满足以下规则,对于node.left的任何后代,值总 < node.val,而 node.right 的任何后代,值总 > node.val。此外,前序遍历首先显示节点node的值,然后遍原创 2021-01-10 18:00:53 · 113 阅读 · 0 评论 -
ARTS Week 22
ARTS Week 22如果不自己主动去接触的话,是什么也无法创造的。 --优纪《刀剑神域》Algoithm二叉搜索树序列概述从左向右遍历一个数组,通过不断将其中的元素插入树中可以逐步地生成一棵二叉搜索树。给定一个由不同节点组成的二叉搜索树,输出所有可能生成此树的数组。示例: 给定如下二叉树 2 / \ 1 3返回:[ [2,1,3], [2,3,1]]分析引用题解使用一个queue存储下个所有可能的节点然后选择其中一个作原创 2020-12-28 20:38:41 · 89 阅读 · 0 评论 -
ARTS Week 21
ARTS Week 21人生就像一杯茶,不会苦一辈子,但总会苦一阵子。Algoithm从前序和后序遍历构造二叉树概述返回与给定的前序和后序遍历匹配的任何二叉树。pre 和 post 遍历中的值是不同的正整数。示例:输入:pre = [1,2,4,5,3,6,7], post = [4,5,2,6,7,3,1]输出:[1,2,3,4,5,6,7]分析前序遍历:根节点 左子树 右子树后序遍历左子树 右子树 根节点例如,如果最终的二叉树可以被序原创 2020-12-27 13:49:54 · 135 阅读 · 0 评论 -
ARTS Week 20
ARTS Week 20你沒能拯救你母親是因為你沒有力量,而我沒有與巨人對抗是因為我沒有勇氣。 --《进击的巨人》Algoithm最长同值路径概述给定一个二叉树,找到最长的路径,这个路径中的每个节点具有相同值。 这条路径可以经过也可以不经过根节点。注意:两个节点之间的路径长度由它们之间的边数表示。示例 1:输入: 5 / \ 4 5 / \ \原创 2020-12-27 13:48:36 · 217 阅读 · 1 评论 -
ARTS Week 19
ARTS Week 19静水流深,沧笙踏歌Algoithm首个共同的祖先概述设计并实现一个算法,找出二叉树中某两个节点的第一个共同祖先。不得将其他的节点存储在另外的数据结构中。注意:这不一定是二叉搜索树。例如,给定如下二叉树: root = [3,5,1,6,2,0,8,null,null,7,4] 3 / \ 5 1 / \ / \6 2 0 8 / \ 7 4示例 1:输入: root = [3,5,1,6,2,0,8,null原创 2020-12-07 20:31:31 · 99 阅读 · 0 评论 -
ARTS Week 18
ARTS Week 18他死在一个谁都不知道角落我不想他的骨灰毫无意义。Algoithm找树左下角的值概述给定一个二叉树,在树的最后一行找到最左边的值。示例 1:输入: 2 / \ 1 3输出:1 示例 2:输入: 1 / \ 2 3 / / \ 4 5 6 / 7输出:7注意: 您可以假设树(即给定的根节点)不为 NUL原创 2020-12-05 15:59:52 · 136 阅读 · 0 评论 -
ARTS Week 17
ARTS Week 17人根本沒辦法在不喜歡的事物上努力啊。Algoithm二叉树的右视图概述给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。示例:输入: [1,2,3,null,5,null,4]输出: [1, 3, 4]解释: 1 <--- / \2 3 <--- \ \ 5 4 <---分析先递归获取其原创 2020-11-27 16:53:03 · 177 阅读 · 1 评论 -
ARTS Week 16
ARTS Week 16仰望星空Algoithm二叉树展开为链表概述给定一个二叉树,原地将它展开为一个单链表。例如,给定二叉树 1 / \ 2 5 / \ \3 4 6将其展开为:1 \ 2 \ 3 \ 4 \ 5 \ 6分析先使用前序遍历,获取每一个指针的数据将每一个节点的数据同步coding# De原创 2020-11-27 14:54:31 · 90 阅读 · 0 评论 -
ARTS Week 15
ARTS Week 15不论是我或是其它任何人,都不是为了死亡而存在,是为了活下去而活着。 ——《刀剑神域》Algoithm平衡二叉树||概述输入一棵二叉树的根节点,判断该树是不是平衡二叉树。如果某二叉树中任意节点的左右子树的深度相差不超过1,那么它就是一棵平衡二叉树。示例 1:给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 7返回 true 。示例 2:给定二叉树 [1,2,2,3原创 2020-11-13 13:41:13 · 112 阅读 · 0 评论 -
ARTS Week 14
ARTS Week 14如果不竭尽全力到最后一刻的话,是无法取胜的 ——朝田诗乃 《刀剑神域2》Algoithm分隔链表概述给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前。你应当保留两个分区中每个节点的初始相对位置。示例:输入: head = 1->4->3->2->5->2, x = 3输出: 1->2->2->4->3->5分析将链表分割成 左右两个链表原创 2020-11-06 17:26:33 · 96 阅读 · 0 评论 -
ARTS Week 13
ARTS Week 13未來的旅程是如此遙遠,能見到的光明卻是如此稀少。即使如此——我仍然沒有完全放棄希望。Algoithm链表中的下一个更大节点概述给出一个以头节点 head 作为第一个节点的链表。链表中的节点分别编号为:node_1, node_2, node_3, … 。每个节点都可能有下一个更大值(next larger value):对于 node_i,如果其 next_larger(node_i) 是 node_j.val,那么就有 j > i 且 nod原创 2020-10-30 16:11:12 · 125 阅读 · 0 评论 -
ARTS Week 12
ARTS Week 12坚强不是结果,是朝某个目标努力的过程!Algoithm奇偶链表概述给你一棵以 root 为根的二叉树和一个 head 为第一个节点的链表。如果在二叉树中,存在一条一直向下的路径,且每个点的数值恰好一一对应以 head 为首的链表中每个节点的值,那么请你返回 True ,否则返回 False 。一直向下的路径的意思是:从树中某个节点开始,一直连续向下的路径。示例 1:输入:head = [原创 2020-10-27 19:45:57 · 142 阅读 · 0 评论 -
ARTS Week 11
ARTS Week 11桐人现在正要把自己所说的话付诸行动,能够做到这一点,并不是因为桐人很强,而是他愿意接受自己的懦弱,烦恼、痛苦但即便如此依旧继续向前。Algoithm奇偶链表概述给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。请尝试使用原地算法完成。你的算法的空间复杂度应为 O(1),时间复杂度应为 O(nodes),nodes 为节点总数。示例 1:输入: 1->2->原创 2020-10-22 13:59:53 · 160 阅读 · 0 评论 -
ARTS Week 10
ARTS Week 10)]拜托,请把力量借给软弱的我,给我从这里再度起身迈步的力量。Algoithm两数相加 ||概述给你两个 非空 链表来代表两个非负整数。数字最高位位于链表开始位置。它们的每个节点只存储一位数字。将这两数相加会返回一个新的链表。你可以假设除了数字 0 之外,这两个数字都不会以零开头。进阶:如果输入链表不能修改该如何处理?换句话说,你不能对列表中的节点进行翻转。示例:输入:(7 -> 2 -> 4 -> 3) + (5 ->原创 2020-10-18 12:00:47 · 85 阅读 · 0 评论 -
ARTS Week 9
ARTS Week 9凡是过往,皆为序章Algoithm旋转链表概述给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。示例 1:输入: 1->2->3->4->5->NULL, k = 2输出: 4->5->1->2->3->NULL解释:向右旋转 1 步: 5->1->2->3->4->NULL向右旋转 2 步: 4->5->1->原创 2020-10-09 20:24:22 · 156 阅读 · 1 评论 -
ARTS Week 8
ARTS Week 8展望未来,温暖常在Algoithm回文链表概述请判断一个链表是否为回文链表。示例 1:输入: 1->2输出: false示例 2:输入: 1->2->2->1输出: true分析通用方法,可以使用数组存储结果,然后依次进行对照遍历代码# Definition for singly-linked list.class ListNode: def __init__(self, x): self.原创 2020-09-30 15:39:01 · 76 阅读 · 0 评论 -
ARTS Week 7
ARTS Week 7[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3SVJnqVc-1593680329575)(https://s1.ax1x.com/2020/07/01/NTik7t.jpg)]愿更加坚强 愿自己能够更加坚强Algoithm打开转盘锁概述你有一个带有四个圆形拨轮的转盘锁。每个拨轮都有10个数字: ‘0’, ‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ‘6’, ‘7’, ‘8’, ‘9’ 。每个拨轮可以自由旋转:例如把 ‘原创 2020-07-02 17:00:41 · 192 阅读 · 0 评论 -
ARTS Week 6
ARTS Week 6仕方ないでしょ?世界は残酷なんだからAlgoithm全排列概述给定一个 没有重复 数字的序列,返回其所有可能的全排列。示例: 输入: [1,2,3] 输出: [ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1] ]分析这是一个回溯算法,需要将其每一种情况都要遍历一遍才可以。代码空间复杂度原创 2020-06-28 17:39:45 · 103 阅读 · 0 评论 -
ARTS Week 5
ARTS Week 5自己来选择,不会后悔的路。Algoithm二叉树换成累加树概述给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater Tree),使得每个节点的值是原来的节点值加上所有大于它的节点值之和。例如:输入: 原始二叉搜索树: 5 / \ 2 13输出: 转换为累加树: 18 / \原创 2020-06-15 17:32:47 · 139 阅读 · 0 评论 -
ARTS Week 4
ARTS Week 4凡是过往,皆为序章。 – 莎士比亚Algoithm直接求和概述求 1+2+…+n ,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。分析因为禁用了 乘除 和循环等特性,所以能够使用的就是递归的方式。同时不能使用 if 那么就需要进行 前置判断。如何停止递归: n!=0递归范式如何: n+fun(n-1)代码# method 1# 递归方式 ,最后会判断其 是否为 0。如果为 0原创 2020-06-15 17:32:05 · 141 阅读 · 0 评论 -
ARTS Week 3
ARTS Week 3什么也无法舍弃的人,什么也无法改变。 --《进击的巨人》by 阿尔敏Algoithm拥有最多糖果的孩子概述这是一个非常简单的题目给你一个数组 candies 和一个整数 extraCandies ,其中 candies[i] 代表第 i 个孩子拥有的糖果数目。对每一个孩子,检查是否存在一种方案,将额外的 extraCandies 个糖果分配给孩子们之后,此孩子有 最多 原创 2020-06-02 00:08:42 · 183 阅读 · 0 评论 -
ARTS week 2
ARTS week 2凡是过往,即为序章Algoithm打家劫舍概述你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你 不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。示例 1: 输入: [1,2,3,1] 输出: 4 解释: 偷窃 1 号房屋 (金额 = 1)原创 2020-06-01 18:02:51 · 188 阅读 · 0 评论