LeetCode
文章平均质量分 54
记录力扣上刷过的题,慢慢积累积少成多
指间理想
这里没有简介~
展开
-
802. 找到最终的安全状态
802. 找到最终的安全状态(https://leetcode-cn.com/problems/find-eventual-safe-states/) 在有向图中,以某个节点为起始节点,从该点出发,每一步沿着图中的一条有向边行走。如果到达的节点是终点(即它没有连出的有向边),则停止。 对于一个起始节点,如果从该节点出发,无论每一步选择沿哪条有向边行走,最后必然在有限步内到达终点,则将该起始节点称作是 安全 的。 返回一个由图中所有安全的起始节点组成的数组作为答案。答案数组中的元素应当按 升序 排列。 该有向原创 2021-08-05 11:27:00 · 75 阅读 · 0 评论 -
581. 最短无序连续子数组
581. 最短无序连续子数组(https://leetcode-cn.com/problems/shortest-unsorted-continuous-subarray/) 给你一个整数数组 nums ,你需要找出一个 连续子数组 ,如果对这个子数组进行升序排序,那么整个数组都会变为升序排序。 请你找出符合题意的 最短 子数组,并输出它的长度。 示例 1: 输入:nums = [2,6,4,8,10,9,15] 输出:5 解释:你只需要对 [6, 4, 8, 10, 9] 进行升序排序,那么整个表都会变为原创 2021-08-03 09:59:17 · 96 阅读 · 0 评论 -
743.网络延迟时间
743. 网络延迟时间(https://leetcode-cn.com/problems/network-delay-time/) 有 n 个网络节点,标记为 1 到 n。 给你一个列表 times,表示信号经过 有向 边的传递时间。 times[i] = (ui, vi, wi),其中 ui 是源节点,vi 是目标节点, wi 是一个信号从源节点传递到目标节点的时间。 现在,从某个节点 K 发出一个信号。需要多久才能使所有节点都收到信号?如果不能使所有节点收到信号,返回 -1 。 示例 1: 输入:tim原创 2021-08-02 11:46:48 · 242 阅读 · 0 评论 -
987.二叉树的垂序遍历
987. 二叉树的垂序遍历(https://leetcode-cn.com/problems/vertical-order-traversal-of-a-binary-tree/) 给你二叉树的根结点 root ,请你设计算法计算二叉树的 垂序遍历 序列。 对位于 (row, col) 的每个结点而言,其左右子结点分别位于 (row + 1, col - 1) 和 (row + 1, col + 1) 。树的根结点位于 (0, 0) 。 二叉树的 垂序遍历 从最左边的列开始直到最右边的列结束,按列索引每一列原创 2021-07-31 09:44:48 · 98 阅读 · 0 评论 -
1104. 二叉树寻路
1104. 二叉树寻路(题目链接:https://leetcode-cn.com/problems/path-in-zigzag-labelled-binary-tree/) 在一棵无限的二叉树上,每个节点都有两个子节点,树中的节点 逐行 依次按 “之” 字形进行标记。(人话就是:根节点序号是1,下一层从左到右节点序号为 3、2,再下一层节点序号为4、5、6、7,再下一层15、14、13…8依次类推) 如下图所示,在奇数行(即,第一行、第三行、第五行……)中,按从左到右的顺序进行标记; 而偶数行(即,第二行原创 2021-07-29 10:09:14 · 122 阅读 · 0 评论 -
863.二叉树中所有距离为 K 的结点
863. 二叉树中所有距离为 K 的结点(中等)(题目链接:https://leetcode-cn.com/problems/all-nodes-distance-k-in-binary-tree/) 给定一个二叉树(具有根结点 root), 一个目标结点 target ,和一个整数值 K 。 返回到目标结点 target 距离为 K 的所有结点的值的列表。 答案可以以任何顺序返回。 题意比较明确,给定树中的一个节点,找出与这个节点距离为k的所有节点. 两种思路:第一种是遍历整棵树,找哪些节点与目标节点距离原创 2021-07-28 11:12:41 · 243 阅读 · 0 评论 -
1713. 得到子序列的最少操作次数
1713. 得到子序列的最少操作次数(困难) 题目链接:https://leetcode-cn.com/problems/minimum-operations-to-make-a-subsequence/ 给你一个数组 target ,包含若干 互不相同 的整数,以及另一个整数数组 arr ,arr 可能 包含重复元素。每一次操作中,你可以在 arr 的任意位置插入任一整数。比方说,如果 arr = [1,4,1,2] ,那么你可以在中间添加 3 得到 [1,4,3,1,2] 。你可以在数组最开始或最后面添原创 2021-07-26 16:55:37 · 86 阅读 · 0 评论 -
最长递增子序列(中等)
300. 最长递增子序列(中等) 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。 子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。 示例 1: 输入:nums = [10,9,2,5,3,7,101,18] 输出:4 解释:最长递增子序列是 [2,3,7,101],因此长度为 4 。 示例 2: 输入:nums = [0,1,0,3,2,3] 输出:4 示例 3: 输入:nums原创 2021-07-26 16:16:39 · 99 阅读 · 0 评论 -
1143 最长公共子序列(中等)
1143 最长公共子序列(中等) 题目链接:https://leetcode-cn.com/problems/longest-common-subsequence/ 给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0 。 一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。 例如,“ace” 是 “abcde” 的子序列,但 “aec” 不是 “原创 2021-07-26 15:19:06 · 75 阅读 · 0 评论