摘要:
子集树:2^n(选还是不选的问题) 排列树:n! 回溯法参数: 1.深度参数t 当t==n时递归结束,产生一个结果,将其加入结果集中。 2.当前结果 当t==n时结果完全生成。 3.结果集 保存不同搜索路径下产生的结果,通常类型为vector<T>&。 ##子集树 当所给的问题是从n个元素的集合中找 阅读全文
摘要:
给定一个非负整数数组,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个位置。 示例 1: 输入: [2,3,1,1,4] 输出: true 解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 3 步到达最后一个 阅读全文
摘要:
给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 1: 输入: "babad" 输出: "bab" 注意: "aba" 也是一个有效答案。 /*动态规划的核心是找到状态转移公式,这道题的状态转移明显是若一个子串是回文子串 且这个子串的前一个字符与后一个字 阅读全文
摘要:
题目 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4], 输出: 6 解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。 思路 dp[i]表示以nums[i]结尾的子数组的 阅读全文
摘要:
##最长公共子序列 给定两个字符串 text1 和 text2,返回这两个字符串的最长公共子序列的长度。 一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。 例如,"ace" 是 "abcde" 的子序列, 阅读全文