
剑指
无名coder
这个作者很懒,什么都没留下…
展开
-
【剑指】-12.矩阵中的路径
1、矩阵中的路径 力扣链接 思路: 其实就是暴力遍历,对于矩阵中每一个字符开头的,进行深度优先搜索,两重循环 递归参数:i,j,k 递归边界:当索引越界,当前的board[i][j] 不等于word[k] 时,返回False ;当 k==len(word)的长度时,返回true 递归工作:标记当前矩阵元素: 将 board[i][j] 值暂存于变量 tmp ,并修改为字符 ‘/’ ,代表此元素已访...原创 2020-04-16 16:27:17 · 131 阅读 · 0 评论 -
【剑指】-14.剪绳子
给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]…k[m] 。请问 k[0]k[1]…*k[m] 可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。 力扣链接 解题思路: 考虑最后一次剪多少,最后一次剪k, 则剩下i-k(使用一个循环) ...原创 2020-04-16 12:46:50 · 124 阅读 · 0 评论 -
【剑指】-47.礼物的最大价值
1、礼物的最大价值 在一个 m*n 的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于 0)。你可以从棋盘的左上角开始拿格子里的礼物,并每次向右或者向下移动一格、直到到达棋盘的右下角。给定一个棋盘及其上面的礼物的价值,请计算你最多能拿到多少价值的礼物? 力扣链接 思路:动态规划 状态表示:dp[i][j]表示以grid[i][j]为结尾的,可以拿到礼物的最大价值 转移方程:dp[i][...原创 2020-04-16 11:32:17 · 118 阅读 · 0 评论 -
【剑指】-63.股票的最大利润
1、假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少? 力扣链接 解题思路:动态规划 状态定义: dp[i]表示前i日的最大利润 转移方程: dp[i]=max(dp[i-1],price[i]-min(price[0:i])) 初始状态: dp[0]=0 返回值: dp[-1] class Solution(object): def ma...原创 2020-04-16 10:33:30 · 129 阅读 · 0 评论 -
【剑指】42.-连续子数组的最大和
1、求连续子数组的最大和 力扣链接 解题思路:动态规划 状态:dp[i]表示以nums[i]结尾的连续子数组的最大和 转移方程:dp[i]=max(nums[i],dp[i-1]+nums[i]) 如果dp[i-1]<0,则以当前nums[i]结尾的子数组的最大和为nums[i] 如果dp[i-1]>0,则为dp[i-1]+nums[i] class Solution: def...原创 2020-04-16 10:14:29 · 118 阅读 · 0 评论