leetcode 139 word break class Solution { public: bool wordBreak(string s, vector<string>& wordDict) { unordered_set<string> wordset(wordDict.begin(),w ...
分类:
其他好文 时间:
2020-05-05 11:04:03
阅读次数:
59
用递归即可 因为是二叉搜索树,也就是根大于左子节点,根小于右子节点,这就好办了,对于每个可能的根节点,求出所有左右子树的集合,双循环配对 /** * Definition for a binary tree node. * public class TreeNode { * int val; * T ...
分类:
其他好文 时间:
2020-05-05 10:57:51
阅读次数:
61
LC每日一题45. 跳跃游戏 II 给定一个非负整数数组,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 你的目标是使用最少的跳跃次数到达数组的最后一个位置。 示例: 输入: [2,3,1,1,4] 输出: 2 解释: 跳到最后一个位置的最小跳跃数是 2。 从下标为 ...
分类:
其他好文 时间:
2020-05-04 22:57:22
阅读次数:
52
题目: 解答: 方法一:双指针。 在找到一个偶数位是奇数的前提下,找奇数位上的偶数,找到之后在交换。 1 class Solution { 2 public: 3 vector<int> sortArrayByParityII(vector<int>& A) 4 { 5 int j = 1; 6 f ...
分类:
编程语言 时间:
2020-05-04 19:32:24
阅读次数:
70
题目: 解答: 方法一:累计求和 为了获得长度为 kk 的子数组的平均值,我们需要知道这 kk 个元素之和。使用 sumsum 记录数组的累加和,sum[i]sum[i] 存储从第一个元素到第 ii 个元素之和。该数组只需要计算一次。 在数组 sumsum 中,原数组索引从 ii 到 i+ki+k ...
分类:
编程语言 时间:
2020-05-04 19:26:39
阅读次数:
67
https://www.cnblogs.com/grandyang/p/4271456.html leetcode 132 https://www.cnblogs.com/grandyang/p/7404777.html leetcode 647 将字符串切割为回文的最小切割数:动态规划 p[i][ ...
分类:
其他好文 时间:
2020-05-04 19:19:24
阅读次数:
48
P3295 [SCOI2016]萌萌哒 题目描述 一个长度为 nn 的大数,用 S_1S_2S_3 \cdots S_nS1?S2?S3??Sn?表示,其中 S_iSi? 表示数的第 ii 位, S_1S1? 是数的最高位。告诉你一些限制条件,每个条件表示为四个数,l_1,r_1,l_2,r_2l1 ...
分类:
其他好文 时间:
2020-05-04 19:10:08
阅读次数:
64
题目: 解答: 总的来说就是利用杨辉三角形后一行与前一行的关系。更新过程为:从倒数第二个元素开始往前更新 它等于原来这个位置的数 + 前一个位置的数行[i] = 行[i] + 行[i-1] 1 class Solution { 2 public: 3 vector<int> getRow(int r ...
分类:
编程语言 时间:
2020-05-04 17:33:24
阅读次数:
77
题目: 解答: 1 class Solution { 2 public: 3 int maxProfit(vector<int>& prices) 4 { 5 int profit = 0; 6 for (int i = 1; i < prices.size(); i++) 7 { 8 int tm ...
分类:
编程语言 时间:
2020-05-04 17:32:01
阅读次数:
63
题目: 解答: 1 class Solution { 2 public: 3 vector<int> twoSum(vector<int>& numbers, int target) 4 { 5 int low = 0; 6 int high = numbers.size() - 1; 7 8 wh ...
分类:
编程语言 时间:
2020-05-04 17:27:43
阅读次数:
67