
编程练习题
文章平均质量分 70
我叫刘十三
这个作者很懒,什么都没留下…
展开
-
关于01背包问题,你搞懂了吗?
01背包问题首先我们来看一下案例,通过案例来对01背包问题进行理解有N件物品和一个最多能背重量为W 的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最大?很多同学拿到这种题感觉无法下手,这是典型的01背包问题,下面通过一个具体的例子进行讲解,采用动态规划的方法解决01背包问题。首先根据动态规划的五部曲进行解题:1.确定dp数组及其下标的含义在这里我们采用的是二维数组进行定义的,dp[i][j]表示将下标为原创 2021-06-10 18:48:09 · 749 阅读 · 0 评论 -
机器人路径(进阶版)
机器人路径问题—>进阶版问题描述:一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径?路径问题当我们拿到题目时感觉无从下抓,上一题我们是对没有障碍物的进行搜索,此时我们同样是进行动态规划五部曲,参照上一题机器人路径1.确定dp数组以及下标的含义dp[i][j] :表示从(0 ,0)出发原创 2021-05-27 20:15:19 · 1113 阅读 · 0 评论 -
机器人路径问题
机器人路径问题首先来看一下问题:一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?分析:首先机器人从左上角(0,0)开始向右下角运动,每次机器人只能向右或者向下运动。第一种方法:深度搜索(不可用,时间复杂度过大)如图所示,将机器人向右移动看成是右子树,向下移动看成是左子树,求机器人的路径即求二叉树的叶子节点的个数,用深度原创 2021-05-27 17:23:31 · 1601 阅读 · 5 评论