03 2020 档案
摘要:`字符串 S 由小写字母组成。我们要把这个字符串划分为尽可能多的片段,同一个字母只会出现在其中的一个片段。返回一个表示每个字符串片段的长度的列表。` `输出: [9,7,8]` `划分结果为 "ababcbaca", "defegde", "hijhklij"。` `像 "ababcbacadefe
阅读全文
摘要:`给定一个由 '(' 和 ')' 括号组成的字符串 S,我们需要添加最少的括号( '(' 或是 ')',可以在任何位置),以使得到的括号字符串有效。` `它可以被写成 AB (A 与 B 连接), 其中 A 和 B 都是有效字符串,或者` `给定一个括号字符串,返回为使结果字符串有效而必须添加的最少
阅读全文
摘要:`有一个二维矩阵 A 其中每个元素的值为 0 或 1 。` `输出:39` `转换为 [[1,1,1,1],[1,0,0,1],[1,1,1,1]]` `1 A.length/2) { for(int k = 0; k < A.length; k++) { A[k][j] ^= 1; } break
阅读全文
摘要:`在一个「平衡字符串」中,'L' 和 'R' 字符的数量是相同的。` `输出:4` `示例 2:` `输出:3` `示例 3:` `输出:1` `1 stack = new Stack(); for(int i = 0; i < s.length(); i++) { if(stack.isEmpty
阅读全文
摘要:`有 n 位用户参加活动,他们的 ID 从 0 到 n 1,每位用户都 恰好 属于某一用户组。给你一个长度为 n 的数组 groupSizes,其中包含每位用户所处的用户组的大小,请你返回用户分组情况(存在的用户组以及每个组中用户的 ID)。` `` `输出:[[5],[0,1,2],[3,4,6]
阅读全文
摘要:给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树 每个节点 的左右两个子树的高度差的绝对值不超过1。 示例 1: 给定二叉树 返回 。 示例 2: 给定二叉树 返回 。 这个题目让我对递归的思路理解地更深刻了,评论区有一个大佬的博客写关于递归的写得很好
阅读全文
摘要:有一个二维矩阵 ,每个位置要么是陆地(记号为 )要么是水域(记号为 )。 我们从一块陆地出发,每次可以往上下左右 4 个方向相邻区域走,能走到的所有陆地区域,我们将其称为一座「 岛屿 」。 如果一座岛屿 完全 由水域包围,即陆地边缘上下左右所有相邻区域都是水域,那么我们将其称为 「 封闭岛屿 」。
阅读全文
摘要:给你一个树,请你 按中序遍历 重新排列树,使树中最左边的结点现在是树的根,并且每个结点没有左子结点,只有一个右子结点。 示例 : 提示: 1. 给定树中的结点数介于 和 之间。 2. 每个结点都有一个从 到 范围内的唯一整数值。 这道题目思路很简单,用中序遍历即可,在中序遍历的过程中把当前遍历的节点
阅读全文
摘要:给定一棵二叉搜索树,请找出其中第k大的节点。 示例 1: 输入: root = [3,1,4,null,2], k = 1 3 / \ 1 4 \ 2 输出: 4 示例 2: 输入: root = [5,3,6,2,4,null,null,1], k = 3 5 / \ 3 6 / \ 2 4 /
阅读全文
摘要:给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例: 给定二叉树 , 返回它的最大深度 3 。 有两种解法 1.深度优先遍历 求出每一个子树的深度,依次往上递加1,可以用递归解决。 2.广度优先遍历 每一层每一层的
阅读全文
摘要:`请判断一个链表是否为回文链表。` `输出: false` `输出: true` `你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题?` `链接:https://leetcode cn.com/problems/palindrome linked list` 解题思路: 1.使用Arr
阅读全文
摘要:将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 `输出:1 1 2 3 4 4` 解法有两种: 1.递归思路 思路很简单,递归首先要考虑 边界情况 ,也就是什么时候停止。当l1走到空时,返回的一定是l2,l2空时同理。 当l1较小时,l1为头节点
阅读全文

浙公网安备 33010602011771号