unique path print

2017-10-31  本文已影响0人  弹杯一笑

class Main {
public static void main(String[] args) {
int[][] arr = {{0,0,0,0},{0,1,0,0},{0,0,1,1},{0,0,0,0}};
printUnique(arr);
}

public static void printUnique(int[][] obstacleGrid) {
    int row = obstacleGrid.length;
    int col = obstacleGrid[0].length;
    DFS(obstacleGrid,row,col,0,0,"(0,0)=>");
}
private static void DFS(int[][] mat,int row,int col,int i,int j,String s){
    if (i < 0 || j < 0 || i>=row || j>=col || mat[i][j] == 1) return;
    if (i == row - 1 && j == col - 1){
        System.out.println(s.substring(0,s.length()-2));
        return;
    }
    DFS(mat,row,col,i+1,j,s+"("+(i+1)+","+j+")=>");
    DFS(mat,row,col,i,j+1,s+"("+i+","+(j+1)+")=>");
}

}

上一篇 下一篇

猜你喜欢

热点阅读