摘要:題目要求這是題目系列。存在路障的節(jié)點(diǎn)會(huì)在數(shù)組中被標(biāo)記為。請(qǐng)問從起點(diǎn)到終點(diǎn)有多少條獨(dú)立路徑。思路和代碼在的思路基礎(chǔ)上,我們可以知道,如果某個(gè)節(jié)點(diǎn)上存在路障,那么任何從該節(jié)點(diǎn)前往終點(diǎn)的路徑都將不存在。也就是說,該節(jié)點(diǎn)的路徑數(shù)為。
題目要求
Follow up for "Unique Paths": 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. For example, There is one obstacle in the middle of a 3x3 grid as illustrated below. [ [0,0,0], [0,1,0], [0,0,0] ] The total number of unique paths is 2. Note: m and n will be at most 100.
這是Unique Path題目系列。關(guān)于Unique Path I請(qǐng)參考我的這篇博客。相比于I,這里添加的需求是說,某些節(jié)點(diǎn)上存在路障。存在路障的節(jié)點(diǎn)會(huì)在數(shù)組中被標(biāo)記為1。請(qǐng)問從起點(diǎn)到終點(diǎn)有多少條獨(dú)立路徑。
思路和代碼在Unique Path I的思路基礎(chǔ)上,我們可以知道,如果某個(gè)節(jié)點(diǎn)上存在路障,那么任何從該節(jié)點(diǎn)前往終點(diǎn)的路徑都將不存在。也就是說,該節(jié)點(diǎn)的路徑數(shù)為0。在此基礎(chǔ)上,我們可以知道,如果該節(jié)點(diǎn)為路障,則該節(jié)點(diǎn)路徑數(shù)為0,否則該節(jié)點(diǎn)的路徑數(shù)等于左側(cè)節(jié)點(diǎn)路徑數(shù)和上方節(jié)點(diǎn)路徑數(shù)的和。代碼如下:
public int uniquePathsWithObstacles(int[][] obstacleGrid) { int row = obstacleGrid.length; if(row==0){ return 0; } int column = obstacleGrid[0].length; int path = obstacleGrid[0][0] == 1 ? 0 : 1; for(int i = 1 ; i|
想要了解更多開發(fā)技術(shù),面試教程以及互聯(lián)網(wǎng)公司內(nèi)推,歡迎關(guān)注我的微信公眾號(hào)!將會(huì)不定期的發(fā)放福利哦~
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/67243.html
摘要:和完全一樣的做法,只要在初始化首行和首列遇到時(shí)置零且即可。對(duì)了,數(shù)組其它元素遇到也要置零喏,不過就不要啦。 Problem Follow up for Unique Paths: Now consider if some obstacles are added to the grids. How many unique paths would there be? An obstacle...
摘要:動(dòng)態(tài)規(guī)劃復(fù)雜度時(shí)間空間思路因?yàn)橐咦疃搪窂?,每一步只能向右方或者下方走。所以?jīng)過每一個(gè)格子路徑數(shù)只可能源自左方或上方,這就得到了動(dòng)態(tài)規(guī)劃的遞推式,我們用一個(gè)二維數(shù)組儲(chǔ)存每個(gè)格子的路徑數(shù),則。 Unique Paths I A robot is located at the top-left corner of a m x n grid (marked Start in the dia...
摘要:月下半旬攻略道題,目前已攻略題。目前簡(jiǎn)單難度攻略已經(jīng)到題,所以后面會(huì)調(diào)整自己,在刷算法與數(shù)據(jù)結(jié)構(gòu)的同時(shí),攻略中等難度的題目。 Create by jsliang on 2019-07-30 16:15:37 Recently revised in 2019-07-30 17:04:20 7 月下半旬攻略 45 道題,目前已攻略 100 題。 一 目錄 不折騰的前端,和咸魚有什么區(qū)別...
摘要:在線網(wǎng)站地址我的微信公眾號(hào)完整題目列表從年月日起,每天更新一題,順序從易到難,目前已更新個(gè)題。這是項(xiàng)目地址歡迎一起交流學(xué)習(xí)。 這篇文章記錄我練習(xí)的 LeetCode 題目,語(yǔ)言 JavaScript。 在線網(wǎng)站:https://cattle.w3fun.com GitHub 地址:https://github.com/swpuLeo/ca...我的微信公眾號(hào): showImg(htt...
摘要:?jiǎn)栆还灿卸嗌贄l獨(dú)特的路線思路一通過遞歸實(shí)現(xiàn)計(jì)算。思路二楊輝三角在思路的指引下,我們可以嘗試將遞歸的方法改變?yōu)檠h(huán)的方法來(lái)解決。我們只需要確定在總部數(shù)中哪些步數(shù)右行或是哪些步數(shù)下行即可知道其對(duì)應(yīng)的路徑。這里運(yùn)用到排列組合的思想。 題目要求 A robot is located at the top-left corner of a m x n grid (marked Start in ...
閱讀 1453·2021-09-28 09:44
閱讀 2520·2021-09-28 09:36
閱讀 1190·2021-09-08 09:35
閱讀 1993·2019-08-29 13:50
閱讀 821·2019-08-29 13:29
閱讀 1142·2019-08-29 13:15
閱讀 1735·2019-08-29 13:00
閱讀 3003·2019-08-26 16:16