随笔分类 -  LeetCode

摘要:按字典 wordList 完成从单词 beginWord 到单词 endWord 转化,一个表示此过程的 转换序列 是形式上像 beginWord → s1 → s2 → ... → sk 这样的单词序列,并满足: 每对相邻的单词之间仅有单个字母不同。 转换过程中的每个单词 si(1 ⇐ i ⇐ k 阅读全文
posted @ 2021-12-07 16:47 Tianyiya 阅读(36) 评论(0) 推荐(0)
摘要:给定一个三角形 triangle ,找出自顶向下的最小路径和。 每一步只能移动到下一行中相邻的结点上。相邻的结点 在这里指的是 下标 与 上一层结点下标 相同或者等于 上一层结点下标 + 1 的两个结点。也就是说,如果正位于当前行的下标 i ,那么下一步可以移动到下一行的下标 i 或 i + 1 。 阅读全文
posted @ 2021-12-07 15:52 Tianyiya 阅读(30) 评论(0) 推荐(0)
摘要:给你二叉树的根结点 root ,请你将它展开为一个单链表: 展开后的单链表应该同样使用 TreeNode ,其中 right 子指针指向链表中下一个结点,而左子指针始终为 null 。 展开后的单链表应该与二叉树 先序遍历 顺序相同。 来源:力扣(LeetCode) 链接:https://leetc 阅读全文
posted @ 2021-12-07 11:24 Tianyiya 阅读(32) 评论(0) 推荐(0)
摘要:给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum 。如果存在,返回 true ;否则,返回 false 。 叶子节点 是指没有子节点的节点。 来源:力扣(LeetCode) 阅读全文
posted @ 2021-12-07 10:56 Tianyiya 阅读(32) 评论(0) 推荐(0)
摘要:给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1 。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/balanced-binary-tree 著作 阅读全文
posted @ 2021-12-07 10:45 Tianyiya 阅读(28) 评论(0) 推荐(0)
摘要:给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 高度平衡 二叉搜索树。 高度平衡 二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过 1 」的二叉树。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/c 阅读全文
posted @ 2021-12-07 10:32 Tianyiya 阅读(31) 评论(0) 推荐(0)
摘要:给定一个二叉树,返回其节点值自底向上的层序遍历。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历) 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/binary-tree-level-order-traversal-ii 著作权归领扣 阅读全文
posted @ 2021-12-07 10:26 Tianyiya 阅读(23) 评论(0) 推荐(0)
摘要:给定一棵树的前序遍历 preorder 与中序遍历 inorder。请构造二叉树并返回其根节点。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/construct-binary-tree-from-preorder-and-inorder-t 阅读全文
posted @ 2021-12-07 08:18 Tianyiya 阅读(39) 评论(0) 推荐(0)
摘要:给定一个二叉树,返回其节点值的锯齿形层序遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/binary-tree-zigzag-level-order-traver 阅读全文
posted @ 2021-12-07 00:13 Tianyiya 阅读(32) 评论(0) 推荐(0)
摘要:给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下: 节点的左子树只包含 小于 当前节点的数。 节点的右子树只包含 大于 当前节点的数。 所有左子树和右子树自身必须也是二叉搜索树。 来源:力扣(LeetCode) 链接:https://leetcode- 阅读全文
posted @ 2021-12-06 23:20 Tianyiya 阅读(33) 评论(0) 推荐(0)
摘要:给你一个整数数组 nums ,其中可能包含重复元素,请你返回该数组所有可能的子集(幂集)。 解集 不能 包含重复的子集。返回的解集中,子集可以按 任意顺序 排列。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/subsets-ii 著作权归领 阅读全文
posted @ 2021-12-06 22:57 Tianyiya 阅读(19) 评论(0) 推荐(0)
摘要:给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。 求在该柱状图中,能够勾勒出来的矩形的最大面积。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/largest-rectangle-in-histogra 阅读全文
posted @ 2021-12-06 22:37 Tianyiya 阅读(32) 评论(0) 推荐(0)
摘要:存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除所有重复的元素,使每个元素 只出现一次 。 返回同样按升序排列的结果链表。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/remove-duplicates-from-sor 阅读全文
posted @ 2021-12-06 22:24 Tianyiya 阅读(29) 评论(0) 推荐(0)
摘要:存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除链表中所有存在数字重复情况的节点,只保留原始链表中 没有重复出现 的数字。 返回同样按升序排列的结果链表。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/remove-dup 阅读全文
posted @ 2021-12-06 22:18 Tianyiya 阅读(35) 评论(0) 推荐(0)
摘要:给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中,返回 true ;否则,返回 false 。 单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。 来 阅读全文
posted @ 2021-12-06 21:55 Tianyiya 阅读(28) 评论(0) 推荐(0)
摘要:编写一个高效的算法来判断 m x n 矩阵中,是否存在一个目标值。该矩阵具有如下特性: 每行中的整数从左到右按升序排列。 每行的第一个整数大于前一行的最后一个整数。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/search-a-2d-mat 阅读全文
posted @ 2021-12-06 14:14 Tianyiya 阅读(32) 评论(0) 推荐(0)
摘要:给你两个单词 word1 和 word2,请你计算出将 word1 转换成 word2 所使用的最少操作数 。 你可以对一个单词进行如下三种操作: 插入一个字符 删除一个字符 替换一个字符 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/edi 阅读全文
posted @ 2021-12-06 14:06 Tianyiya 阅读(25) 评论(0) 推荐(0)
摘要:给你一个字符串 path ,表示指向某一文件或目录的 Unix 风格 绝对路径 (以 '/' 开头),请你将其转化为更加简洁的规范路径。 在 Unix 风格的文件系统中,一个点(.)表示当前目录本身;此外,两个点 (..) 表示将目录切换到上一级(指向父目录);两者都可以是复杂相对路径的组成部分。任 阅读全文
posted @ 2021-12-06 10:26 Tianyiya 阅读(52) 评论(0) 推荐(0)
摘要:一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。 问总共有多少条不同的路径? 来源:力扣(LeetCode) 链接:https://leetcode-cn 阅读全文
posted @ 2021-12-03 17:48 Tianyiya 阅读(29) 评论(0) 推荐(0)
摘要:以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com 阅读全文
posted @ 2021-12-03 17:37 Tianyiya 阅读(36) 评论(0) 推荐(0)