A: Unique Paths II Medium
A robot is located at the top-left corner of a m x n grid (marked ‘Start‘ in the diagram below).
The robot can only move either down or right at any point in time. The robot is trying to reach the bottom-right corner of the grid (marked ‘Finish‘ in the diagram below).
Now consider if some obstacles are added to the grids. How many unique paths would there be?
An obstacle and empty space is marked as 1
and 0
respectively in the grid.
解析:一个机器人从起始位置到终点,只能选择向下或者向右,不能向左或者向上,一个有多少种不同的路线,遇到障碍时无法通过
解题思路:使用动态规划的方式来进行题目的解答,可以画出相应的网格图
4行4列时:
当行数为1时:机器人只能向右走,列数为i,每个array[0][i]的唯一路线和都是1
当列数为1时:机器人只能向下走,行数为i,每个array[i][0]的唯一路线和都是1
对应不同的m行和n列都有array[i][j]=array[i-1][j]+array[i][j-1],指定的终点的可能的唯一路线和是终点在左边一位的可能性之和加上终点在上边一位的可能性之和
当遇到阻碍时对应阻碍点的可能性为0,依照这样的思路可以得出具体的答案
解题方法:https://leetcode.com/submissions/detail/223942453/ 63题
https://leetcode.com/submissions/detail/223909257/ 62题
R:https://blog.usejournal.com/top-50-dynamic-programming-practice-problems-4208fed71aa3 简要描述了动态规划的含义,并列举了50个动态规划的问题
动态规划是一种解决复杂问题的方法,它将复杂问题分解为一系列更简单的子问题,每个子问题只解决一次,并使用基于内存的数据结构(数组、映射等)存储它们的解决方案。
每个子问题解决方案都以某种方式进行索引,通常基于其输入参数的值,以便于查找。因此,下次出现相同的子问题时,不必重新计算它的解,
只需查找以前计算过的解,从而节省计算时间。这种存储子问题的解决方案而不是重新计算它们的技术称为记忆。将处理对应子问题的思路提炼成对应的
公式进行之后问题的结果的推导。
T:java如何设计一个接收文件的接口:对应接口的参数使用:
接收单一文件:@RequestParam("pics") CommonsMultipartFile pics
接收多文件:@RequestParam("pics") CommonsMultipartFile[] pics
其中的@RequestParam("pics") 声明接收的文件或者文件集合的参数名,需要对应,不对应将无法接收文件
S:左耳听风《面对枯燥和量大的知识》,讲述了如何面对枯燥和量大的知识,枯燥的知识通常是比较难或者比较理论的知识,需要找下应用场景,带着问题学习,多实践多踩坑,
认真阅读文档可以避免一些坑,通过多种途径学习一个东西,印象更为深刻。
原文地址:https://www.cnblogs.com/wujunjie-Blog/p/10816870.html