• 每日题解:LeetCode 1008. 先序遍历构造二叉树

    题目地址题目描述返回与给定先序遍历 preorder 相匹配的二叉搜索树(binary search tree)的根结点。(回想一下,二叉搜索树是二叉树的一种,其每个节点都满足以下规则,对于 node.left 的任何后代,值总 < node.val,而 node.right 的任何后代,值总...

    每日题解:LeetCode 109. 有序链表转换二叉搜索树

    题目地址题目描述给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。示例:给定的有序链表: [-10, -3, 0, 5, 9],一个可能的答案是:[0, -3, 9, -10, null,...

    每日题解:LeetCode 43. 字符串相乘

    题目地址个人博客地址题目描述给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。示例 1:输入: num1 = "2", num2 = "3"输出: "6"示例 2...

    每日题解:LeetCode 901. 股票价格跨度

    题目地址题目描述编写一个 StockSpanner 类,它收集某些股票的每日报价,并返回该股票当日价格的跨度。今天股票价格的跨度被定义为股票价格小于或等于今天价格的最大连续日数(从今天开始往回数,包括今天)。例如,如果未来7天股票的价格是 [100, 80, 60, 70, 60, 75, 85],...

    每日题解:LeetCode 1190. 反转每对括号间的子串

    题目地址题目描述给出一个字符串 s(仅含有小写英文字母和括号)。请你按照从括号内到外的顺序,逐层反转每对匹配括号中的字符串,并返回最终的结果。注意,您的结果中 不应 包含任何括号。示例 1:输入:s = "(abcd)"输出:"dcba"示例 2:输入:s =...

    每日题解:LeetCode 1019. 链表中的下一个更大节点

    题目地址题目描述给出一个以头节点 head 作为第一个节点的链表。链表中的节点分别编号为:node_1, node_2, node_3, ... 。每个节点都可能有下一个更大值(next larger value):对于 node_i,如果其 next_larger(node_i) 是 node_j...

    每日题解:LeetCode 144. 二叉树的前序遍历

    题目地址题目描述给定一个二叉树,返回它的前序遍历。示例:输入:[1,null,2,3]12/3输出:[1,2,3]进阶:递归算法很简单,你可以通过迭代算法完成吗?解法cpp迭代classSolution{publicList<Integer>preorderTraversal(TreeN...

    每日题解:LeetCode 454. 四数相加 II

    题目地址个人博客地址题目描述给定四个包含整数的数组列表 A , B , C , D ,计算有多少个元组 (i, j, k, l) ,使得 A[i] + B[j] + C[k] + D[l] = 0。为了使问题简单化,所有的 A, B, C, D 具有相同的长度 N,且 0 ≤ N ≤ 500 。所有...

    每日题解:LeetCode 167. 两数之和 II - 输入有序数组

    题目地址题目描述解法CPPclass Solution {public: vector<int> twoSum(vector<int>& numbers, int target) { int low = 0, high = numbers.size(...

    每日题解:LeetCode 35. 搜索插入位置

    题目地址题目描述给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。示例1:输入:[1,3,5,6],5输出:2示例2:输入:[1,3,5,6],2输出:1示例3:输入:[1,3,5,6],7输出:4示例...