摘要:1. 题目 读题 https://leetcode.cn/problems/generate-parentheses/ 这道题的题目描述是这样的: 给定一个整数n,表示括号对的数量,写一个函数来生成所有可能的有效括号组合。¹ 有效括号组合的意思是,每个左括号都有一个对应的右括号,并且括号之间的嵌套关
阅读全文
随笔分类 - 算法
摘要:1. 题目 读题 https://leetcode.cn/problems/generate-parentheses/ 这道题的题目描述是这样的: 给定一个整数n,表示括号对的数量,写一个函数来生成所有可能的有效括号组合。¹ 有效括号组合的意思是,每个左括号都有一个对应的右括号,并且括号之间的嵌套关
阅读全文
摘要:1. 题目 读题 https://leetcode.cn/problems/combination-sum/ 你好,这是Bing。根据搜索结果,leetcode 39是一个编程题目,要求你找出一个整数数组中所有可以使数字和为目标数的不同组合¹²。 例如,如果数组是[2,3,6,7],目标数是7, 那
阅读全文
摘要:1. 题目 读题 https://leetcode.cn/problems/permutations/description/ LeetCode 46题是一个**全排列**问题,给定一个不含重复数字的数组 nums ,返回其 **所有可能的全排列**。你可以 **按任意顺序** 返回答案。¹³ 例如
阅读全文
摘要:1. 题目 考查点 对回溯算法的理解和应用,以及你对字符串或者数组的操作和遍历。你需要掌握回溯算法的基本框架和思想,以及如何用代码实现回溯的过程。你还需要注意一些细节,比如如何避免重复的排列,如何恢复原来的状态,如何优化时间和空间复杂度等。 2. 解法 思路 这道题的思路是用**回溯**算法来求解。
阅读全文
摘要:1. 题目 读题 https://leetcode.cn/problems/permutations-ii/submissions/428949841/ 考查点 这道题的考查点主要有以下几个: - **回溯法**:回溯法是一种搜索所有可能解的方法,它的基本思想是从一个初始状态开始,每次尝试一个可能的
阅读全文
摘要:1. 题目 2. 解法 思路 这道题的考点是字符串的处理和分割,以及整数的比较。解题思路是: 首先,将两个版本号按照"."分割成字符串数组,这样就可以得到每个修订号的字符串表示。 然后,遍历两个数组,比较每个位置上的修订号。为了方便比较,可以将字符串转换成整数,这样就可以忽略前导零的影响。 如果某个
阅读全文
摘要:1. 题目 https://leetcode.cn/problems/longest-palindromic-substring/description/ 2. 解法 总有三种解法 动态规划、中心扩展和马拉车算法这三种解法。根据网上的资料,我总结了以下几点: 动态规划的思路是用一个二维数组 dp[i
阅读全文
摘要:1. 题目 https://leetcode.cn/problems/string-to-integer-atoi/submissions/428764685/ LeetCode 8 是一道字符串转换整数的题目, 考查的是如何处理各种边界情况和异常输入,比如空格、正负号、非数字字符、溢出等 2. 解
阅读全文
摘要:1. 题目 题目 考查点 这个算法题的考查点是: 字符串的处理,如去除空格,分割单词,拼接字符串等。 双指针的使用,如左右指针,单词边界指针等。 字符串的反转,如整体反转,局部反转等。 2. 解法 思路 这个代码的思路是先去除字符串首尾的空格,然后反转整个字符串,再反转每个单词。这样就可以实现将每个
阅读全文
摘要:1. 题目 2. 解法 3. 总结
阅读全文
摘要:1. 题目 https://leetcode.cn/problems/find-minimum-in-rotated-sorted-array/ 考察点: 这道题的考察点是二分搜索的应用,你需要掌握如何在旋转排序数组中找到最小值,以及如何判断数组是否旋转过。你还需要注意时间复杂度要求是O(log n
阅读全文
摘要:1. 题目 2. 解法 思路:滑动窗口来遍历字符串 大致如下: 定义一个哈希集合和两个指针,分别表示窗口内的字符和窗口的左右边界。 定义一个变量,表示窗口的最大长度,也就是答案。 从左到右遍历字符串,每次移动右指针,把它指向的字符加入到哈希集合中。 如果哈希集合中已经存在这个字符,说明有重复,那么就
阅读全文
摘要:1. 题目 https://leetcode.cn/problems/find-first-and-last-position-of-element-in-sorted-array/ 考察点 这道题主要考察的是数组和二分查找的知识点。😊 数组是一种基本的数据结构,可以用来存储多个相同类型的数据,可
阅读全文
摘要:1. 题目 https://leetcode.cn/problems/search-in-rotated-sorted-array/ 考察点 这道题的考察点是二分查找的应用。二分查找是一种在有序数组中查找目标值的高效算法,它的时间复杂度是O(log n)。二分查找的基本思想是,每次比较中间元素和目标
阅读全文
摘要:1. 题目 2. 解法 解答思路 求一棵二叉树的直径,也就是树中任意两个节点之间的最长路径的长度。这条路径可能经过或不经过根节点。路径的长度用边的数量来表示。 解题思路是使用递归函数,对于每个节点,计算它的左子树和右子树的高度, 然后更新一个全局变量 max,使其为 max 和左右子树高度之和的较大
阅读全文
摘要:1. 总结 本期主要讲了 栈和树 两种结构 ,关键字:递归
阅读全文
摘要:1. 题目 https://leetcode.cn/problems/path-sum-iii/ 考察点 这道题的考察点是: 二叉树的遍历,如何使用深度优先搜索或广度优先搜索来访问每个节点。 前缀和的概念,如何利用前缀和来快速计算路径和,以及如何处理负数的情况。 哈希表的使用,如何利用哈希表来存储和
阅读全文
摘要:1. 题目 https://leetcode.cn/problems/delete-node-in-a-bst/ 考察点 这道题的考察点主要是以下几个方面: 二叉搜索树的性质和操作,如何在二叉搜索树中查找、插入和删除节点,以及如何找到节点的后继(或者前驱)。 递归的思想和技巧,如何设计递归函数的参数
阅读全文
摘要:1. 题目 https://leetcode.cn/problems/convert-bst-to-greater-tree/ 考察点 总结一下这个题目的要点: 题目给定一个二叉搜索树,要求把它转换成累加树,即每个节点的值是原来的值加上所有大于它的值之和。 为了实现这个转换,我们需要按照节点值降序遍
阅读全文
|