随笔分类 - 数据结构与算法
摘要:算法现在就是大厂、外企的硬指标。开发、测开、测试,想往上总是绕不开的。 这是今天的每日一题,看到是个简单的,就做了下(非官方题解)。 题目描述 难度:【简单】 标签:【数组】、【排序】 给你一个整数数组 nums ,其中总是存在 唯一的 一个最大整数 。 请你找出数组中的最大元素并检查它是否 至少是
阅读全文
摘要:算法现在就是大厂、外企的硬指标。开发、测开、测试,想往上总是绕不开的。 题目描述 难度:【简单】 标签:【数组】、【动态规划】 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子
阅读全文
摘要:算法现在就是大厂、外企的硬指标。开发、测开、测试,想往上总是绕不开的。 题目描述 难度:【简单】 标签:【二叉树】 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q, 最近公共祖先表示为一个结点 x,满足 x 是 p、
阅读全文
摘要:一、BFS 知识点 BFS 就是广度优先 (Breadth first search)。与之对应的还有深度优先 (Depth first search)。 网上找到一篇文章,比较通俗易懂的介绍了这 2 者。 今天重点是 BFS ,用它解决比如找到从起点 start 到终点 target 的最近距离问
阅读全文
摘要:算法现在就是大厂、外企的硬指标。开发、测开、测试,想往上总是绕不开的。 题目描述 难度:【简单】 标签:【二叉树】 计算给定二叉树的所有左叶子之和。 题目地址:https://leetcode-cn.com/problems/sum-of-left-leaves/ 示例 3 / \ 9 20 / \
阅读全文
摘要:算法现在就是大厂、外企的硬指标。开发、测开、测试,想往上总是绕不开的。 题目描述 难度:【简单】 标签:【二叉树】 给你二叉树的根节点 root 和一个表示目标和的整数 targetSum , 判断该树中是否存在 根节点到叶子节点 的路径, 这条路径上所有节点值相加等于目标和 targetSum 叶
阅读全文
摘要:算法现在就是大厂、外企的硬指标。开发、测开、测试,想往上总是绕不开的。 题目描述 难度:【简单】 标签:【二叉树】 给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。 你需要将他们合并为一个新的二叉树。 合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并
阅读全文
摘要:算法现在就是大厂、外企的硬指标。开发、测开、测试,想往上总是绕不开的。 题目描述 难度:【简单】 标签:【二叉树】 给定一棵二叉树,你需要计算它的直径长度。 一棵二叉树的直径长度是任意两个结点路径长度中的最大值。 这条路径可能穿过也可能不穿过根结点。 题目地址:https://leetcode-cn
阅读全文
摘要:算法现在就是大厂、外企的硬指标。开发、测开、测试,想往上总是绕不开的。 题目描述 难度:【简单】 标签:【二叉树】 给定一个二叉树,找出其最小深度。 说明:叶子节点是指没有子节点的节点。 题目地址:https://leetcode-cn.com/problems/minimum-depth-of-b
阅读全文
摘要:算法现在就是大厂、外企的硬指标。开发、测开、测试,想往上总是绕不开的。 题目描述 难度:【简单】 标签:【二叉树】 给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 题目地址:https://leetcode-cn.c
阅读全文
摘要:题目描述 难度:【简单】 标签:【二叉树】 给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1 。 题目地址:https://leetcode-cn.com/problems/balanced-binary-
阅读全文
摘要:题目描述 难度:【简单】 标签:【二叉树】 给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 高度平衡 二叉搜索树。 高度平衡 二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过 1 」的二叉树。 题目地址:https://leetcode-cn.com/pr
阅读全文
摘要:题目描述 难度:【简单】 标签:【二叉树】 给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 题目地址:https://leetcode-cn.com/problems/same-tree/ 示例 示例 1
阅读全文
摘要:题目描述 难度:【简单】 标签:【二叉树】 给定一个二叉树,返回它的 后序 遍历。 题目地址:https://leetcode-cn.com/problems/binary-tree-postorder-traversal/ 示例 示例 : 输入: [1,null,2,3] 1 \ 2 / 3 输出
阅读全文
摘要:题目描述 难度:【简单】 标签:【二叉树】 给你二叉树的根节点 root ,返回它节点值的 前序 遍历。 题目地址:https://leetcode-cn.com/problems/binary-tree-preorder-traversal/ 示例 示例 1: 输入:root = [1,null,
阅读全文
摘要:题目描述 难度:【简单】 标签:【二叉树】 给定一个二叉树的根节点 root ,返回它的 中序 遍历。 题目地址:https://leetcode-cn.com/problems/binary-tree-inorder-traversal/ 示例 示例 1: 输入:root = [1,null,2,
阅读全文
摘要:题目描述 难度:【简单】 标签:【二叉树】 如果二叉树每个节点都具有相同的值,那么该二叉树就是单值二叉树。 只有给定的树是单值二叉树时,才返回 true;否则返回 false。 示例 示例 1 输入:[1,1,1,1,1,null,1] 输出:true 示例 2 输入:[2,2,2,5,2] 输出:
阅读全文
摘要:题目描述 难度:【简单】 标签:【二叉树】 给定一个二叉树,检查它是否是镜像对称的。 题目地址:https://leetcode-cn.com/problems/symmetric-tree/ 示例 例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \ 3 4
阅读全文
摘要:题目描述 难度:【简单】 标签:【二叉树】 翻转一棵二叉树。 题目地址:https://leetcode-cn.com/problems/invert-binary-tree/ 示例 输入 4 / \ 2 7 / \ / \ 1 3 6 9 输出 4 / \ 7 2 / \ / \ 9 6 3 1
阅读全文
摘要:二叉搜索树(BST),首先它是个二叉树。 做题之前看了下以前的笔记: 【树与二叉树】:https://www.cnblogs.com/pingguo-softwaretesting/p/14587752.html 【二叉树的遍历,前序、中序和后序】:https://www.cnblogs.com/p
阅读全文