
算法
文章平均质量分 51
记录常用数据结构与算法,记录常见题目
crxk
某国民级橙色购物APP后端开发~
展开
-
【剑指offer LeetCode】股票的最大利润
题目假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少?输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格。思路此题根据标签查找,一开始就知道用动态规划,所以思路很明确。动归嘛,首先想到的就是要找 递推 关系啊。根据题意求解最大的利润,股票的价格是不断变化,不到最后一天肯定原创 2020-12-10 20:48:05 · 385 阅读 · 0 评论 -
一个公式说清楚:动态规划
什么是动态规划Dynamic Programming,DP。Programming 一词指的不是编程,而是安排计划表,也就是说最后的结果不是直接求出来的,而是一次又一次从子问题递归推算而来的。动态规划总是与 记忆化技术(也就是缓存,说白了就是利用数组、局部变量把一些子问题的结果存储起来,避免重复计算)搭配使用,其所要解决的子问题有所重叠,如果能采用记忆化技术那么可大幅度降低时间复杂度。递归:递归地解决子问题记忆:把已经计算的值保存起来现在可以用一个公式来解释什么是动态规划了动态规划 = 递归原创 2020-12-03 12:26:05 · 689 阅读 · 0 评论