01 2020 档案
摘要:这是一道动态规划题目,动态规划的核心是:状态和转态转移方程。 //方法一: //Time:O(n),Space:O(n) class Solution { public: int max(int a,int b) { return a>b?a:b; } int rob(vector<int>& nu
阅读全文
摘要://方法一:递归版 //Time:O(2^n),Space:O(n) class Solution { public: int climbStairs(int n) { if(n==0) { return 1; } else if(n==1) { return 1; } else { return
阅读全文
摘要:这道题目的解题方法有很多,我们来介绍几种方法。 //方法一,递归版,是一种最常见的解题方法,没有任何的优化,里面存在大量的重复计算 //时间复杂度较高,实际上是一颗递归树,当N>42时,需要的时间是很久的,在实际的工程开发中 //是不可以忍受的,那么有没有可以优化的办法呢?当然有的,我们看第二种办法
阅读全文
摘要:这道题属于属于动态规划中比较简单的一道题目。 //Time:O(n),Space:O(1) class Solution { public: int max(int a,int b) { return a>b?a:b; } int maxSubArray(vector<int>& nums) { i
阅读全文
摘要://方法一:暴力破解法,使用2重循环来解决,这种方法时间复杂度较高 //Time:O(n^2),Space:O(1) //语言:经典C++ class Solution { public: int max(int a,int b) { return a>b?a:b; } int maxProfit(
阅读全文
摘要:这个题目也是二分搜索的变体
阅读全文
摘要:这个题目是二分搜索的变形题。 当然这个题目,可以利用遍历一遍数组来求解,但是时间复杂度就是O(n)了。这里我们用变体二分搜索的解法来求解这个题目。 //Time:O(log(n)),Space:O(1) class Solution { public: int findMin(vector<int>
阅读全文
摘要://方法一:利用二分搜索法来做 //Time:O(log(n)),Space:O(1) class Solution { public: int mySqrt(int x) { int begin=0; int end=x; while(begin<=end) { long mid=begin+((
阅读全文
摘要://方法一,利用一个set集合的数据结构 //Time:O(n),Space:O(n) class Solution { public: int singleNumber(vector<int>& nums) { set<int> v; int sum=0,uniqueSum=0; for(int
阅读全文
摘要://方法一,递归版 //Time::O(n),Space:O(1) class Solution { public: int Add(int num1, int num2) { return num2==0?num1:Add(num1^num2,(num1&num2)<<1); } }; //方法二
阅读全文
摘要://Time:O(n),Space:O(n) //动态规划版本的解题方法,类比,求解第n个斐波那契数列 class Solution { public: //求解2个数中的最小数 int min(int a,int b) { return a<b?a:b; } //求解3个数中的最小数 int mi
阅读全文
摘要://Time:O(m+n+l) m为多少个2,n为多少个3,l为多少个5,Space:O(1) class Solution { public: bool isUgly(int num) { if(num<=0) return false; while(num%2==0) num/=2; while
阅读全文
摘要://Time: O(n),Space:O(1) //定义2个游标,也称快慢指针法 class Solution { public: int removeDuplicates(vector<int>& nums) { int p=1; if(nums.size()==0) return 0; for(
阅读全文
摘要://Time:O(n),Space:O(n) //语言:C++11 class Solution { public: vector<int> twoSum(vector<int>& nums, int target) { vector<int> res={-1,-1}; unordered_map<
阅读全文

浙公网安备 33010602011771号