Leetcode刷题
xiaofeng-2018
这个作者很懒,什么都没留下…
展开
-
leetcode56划分区间
class Solution { public: vector<vector<int>> merge(vector<vector<int>>& intervals) { vector<vector<int>>res; int n = intervals.size(); sort(intervals.begin(), intervals.end()); fo.原创 2020-07-24 21:03:14 · 95 阅读 · 0 评论 -
Leetcode 53最大子序列和
int maxSubArray( vector<int>nums) { int len = nums.size(); if (len == 0)return 0; int* dp= new int[len]; dp[0] = nums[0]; for (int i = 1;i < len;i++) { dp[i] = max(nums[i], dp[...原创 2020-03-22 02:17:16 · 91 阅读 · 0 评论 -
Leetcode49 字母异位词分组
class Solution { public: vector<vector<string>> groupAnagrams(vector<string>& strs) { vector<vector<string>> res; unordered_map<string, int>...原创 2020-03-06 22:53:50 · 70 阅读 · 0 评论 -
Leetcode 48旋转图像
class Solution { public: vector<vector<int>> rotate(vector<vector<int>>& matrix) { int size = matrix.size(); for (int time = 0; time <= size / 2; time++) { int...原创 2020-03-06 00:14:53 · 91 阅读 · 0 评论 -
Leetcode43 字符串相乘
给定两个以字符串形式表示的非负整数num1和num2,返回num1和num2的乘积,它们的乘积也表示为字符串形式。 示例 1: 输入: num1 = "2", num2 = "3" 输出: "6" 示例2: 输入: num1 = "123", num2 = "456" 输出: "56088" 说明: num1和num2的长度小于110。 num1 和num2 只包含...原创 2020-03-02 21:03:59 · 84 阅读 · 0 评论 -
Leetcode41 缺失的第一个数
思路:由于本题要求的时间和空间复杂度,不能利用常规方法去做。本题用到的一个思路是将原数组先处理为一个简单的哈希表:即数组的第i个位置存放整数i-1,这一步的时间复杂度平均为O(n),原因引用某网友写的题解解释 说明:while 循环不会每一次都把数组里面的所有元素都看一遍。如果有一些元素在这一次的循环中被交换到了它们应该在的位置,那么在后续的遍历中,由于它们已经在正确的位置上了,代码再执行到它们...原创 2020-03-02 17:01:09 · 77 阅读 · 0 评论 -
38 外观数列
一开始的思路是这样的:n轮循环,每一轮循环中分两种情况 如果后边的一项和前面的一项相同,则写一个子函数找到有几个不同,然后跳跃几个位置到下一个不同的字母。 如果后边的一项和前面的一项不同,或者到达了最后一个元素,就直接正常向后推移一个元素。 class Solution { public: int Countsame(int start, string ss) { int coun...原创 2020-02-29 00:22:21 · 228 阅读 · 0 评论 -
64.最小路径和
(1)第一种方法,递归暴力解决。 class Solution { public: int dfs(vector<vector<int>>& grid, int i, int j){ if (i == grid.size() || j == grid[0].size()){ return INT_MAX; //超出范围的时候,返回一个最大值,...原创 2019-08-25 01:44:53 · 143 阅读 · 0 评论 -
343 整数拆分
(1)第一种方法:递归加记忆化搜索 class Solution { public: vector<int> memo; int max3(int a, int b, int c){ return max(a, max(b,c)); } int dfs(int n){ if (n == 1) return 1; int res = -1; if (me...原创 2019-08-27 17:28:37 · 179 阅读 · 0 评论