115 不同的路徑

2022-05-12 02:13:13 字數 929 閱讀 9392

原題**:

現在考慮網格中有障礙物,那樣將會有多少條不同的路徑?

網格中的障礙和空位置分別用 1 和 0 來表示。

m 和 n 均不超過100

您在真實的面試中是否遇到過這個題?  是

[

[0,0,0],

[0,1,0],

[0,0,0]

]

一共有2條不同的路徑從左上角到右下角。

標籤陣列

動態規劃(dp)

思路:方法同不同的路勁類似,只不過要注意有障礙物的情況。有障礙物的地方dp值為0,這裡尤其注意如果第乙個點(0,0)就是障礙物,則整個grid無法走通,直接return 0即可。同理,初始化第一行、第一列時,如果遇到乙個障礙物,後面的dp值全為0。

ac**:

class

solution

int col=obstaclegrid[0

].size();

if (col==0

)

vector

int>> dp(row,vector(col,0

));

if (obstaclegrid[0][0]==0

)

else

//如果第一步都走不通,說明無法到達右下角,直接返回0;

for (int i=1;i)

else

//第一列只要出現乙個障礙,後面的就無法走通;

}for (int j=1;j)

else

//第一行只要出現乙個障礙,後面的就無法走通;

}for (int i=1;i)}}

return dp[row-1][col-1

]; }

};

其他實現方式:

115 不同的路徑 II

中文english 不同的路徑 的跟進問題 現在考慮網格中有障礙物,那樣將會有多少條不同的路徑?網格中的障礙和空位置分別用 1 和 0 來表示。example 1 input 0 output 1 example 2 input 0,0,0 0,1,0 0,0,0 output 2 explanat...

lintCode 115 不同的路徑

問題描述 不同的路徑 的跟進問題 現在考慮網格中有障礙物,那樣將會有多少條不同的路徑?網格中的障礙和空位置分別用 1 和 0 來表示。如下所示在3x3的網格中有乙個障礙物 0,0,0 0,1,0 0,0,0 一共有2條不同的路徑從左上角到右下角。思路 由於部分格仔有障礙物,不能訪問到,需要對左上角和...

lintcode練習 115 不同的路徑 II

不同的路徑 的跟進問題 現在考慮網格中有障礙物,那樣將會有多少條不同的路徑?網格中的障礙和空位置分別用 1 和 0 來表示。如下所示在3x3的網格中有乙個障礙物 0,0,0 0,1,0 0,0,0 一共有2條不同的路徑從左上角到右下角。m 和 n 均不超過100 如注釋,動態規劃類的題,最主要的是思...