• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
 






乘风有时

 
 

Powered by 博客园
博客园 | 首页 | 新随笔 | 联系 | 订阅 订阅 | 管理

随笔分类 -  动态规划

 
[LeetCode]Increasing Triplet Subsequence
摘要:题目:Increasing Triplet Subsequence Given an unsorted array return whether an increasing subsequence of length 3 exists or not in the array. Formally th 阅读全文
posted @ 2017-06-19 11:03 乘风有时 阅读(142) 评论(0) 推荐(0)
[LeetCode]Range Sum Query
摘要:题目:Range Sum Query - Immutable Given an integer array nums, find the sum of the elements between indices i and j (i ≤ j), inclusive. Example: Note: 给定 阅读全文
posted @ 2017-05-11 22:48 乘风有时 阅读(285) 评论(0) 推荐(0)
[LeetCode]Best Time to Buy and Sell Stock
摘要:题目:Best Time to Buy and Sell Stock 给定一个数组,数组中一个元素表示一天的股价,求一次交易能得到的最大收益。 思路: 数组可能是多个升序降序组成,只要能找到一组极值,使它们的差最大就可以了。 这样实际上就是每当找到一个极大值,就判断此时的到的差值是否比记录的最大值大 阅读全文
posted @ 2017-04-27 21:37 乘风有时 阅读(147) 评论(0) 推荐(0)
[LeetCode]Unique Binary Search TreesII
摘要:题目:Unique Binary Search TreesII 如果要列出所有可能的二叉搜索树,可以在上面的思路上进一步。 f(n) = f(0)*f(n-1) + f(1)*f(n-2) + ... + f(n-1)*f(0); 只要求出不同变量下的子树的所有情况,在整合到一起就可以了。 具体思路 阅读全文
posted @ 2017-04-24 10:38 乘风有时 阅读(148) 评论(0) 推荐(0)
[LeetCode]Word Break
摘要:题目:Word Break 将给定的字符串按照给定的单词表拆分开,判断是否能在给定的单词表中拆分该字符串 单词表中单词不重复,但是可以在字符串中重复出现。 思路: 暴力搜索,只要遍历单词表每次找到与字符串的当前位置往后的n(单词表中当前遍历到的单词长度)的字符重合则表示可以拆分。 这种方法,时间复杂 阅读全文
posted @ 2017-04-18 21:29 乘风有时 阅读(609) 评论(0) 推荐(0)
[LeetCode]Maximal Rectangle
摘要:题目:Maximal Rectangle 找到最大的全1矩阵。 思路: 要求上面的解,先看下面的问题: 一个数组A[]={5,6,7,8,3};对应如下的直方图,求他的最大矩形的面积。 普通的思路,就是循环遍历,i=0~a.length-1; 然后里面从j=i~a.length-1,在最里层循环中, 阅读全文
posted @ 2017-04-09 18:55 乘风有时 阅读(288) 评论(0) 推荐(0)
[LeetCode]Unique Paths
摘要:题目:Unique Paths 从左上角到右下角的所有可能路径。 思路1: 回溯法去递归遍历所有的路径,但是复杂度太大,无法通过。checkPath方法实现 思路2: 动态规划法,从左上角到每一格的路径数与它的上面一格和左边一格的路径和; N(m,n)=N(m-1,n)+N(m,n-1); 注意:第 阅读全文
posted @ 2017-04-08 23:21 乘风有时 阅读(197) 评论(0) 推荐(0)
[LeetCode]Unique Binary Search Trees
摘要:题目:Unique Binary Search Trees 找值为1->n的所有可能的二叉树。 如果是找可能的数量而不需要列出所有可能时,可以用动态规划。 思路如下: 动态规划法:f(n)表示该子树中有n个数字可用来组成树枝f(0) = 1;空树f(1) = 1;树根f(2) = f(0)*f(1) 阅读全文
posted @ 2017-04-03 10:13 乘风有时 阅读(170) 评论(0) 推荐(0)