动态规划 4 步走

求路径

http://www.nowcoder.com/questionTerminal/166eaff8439d4cd898e3ba933fbc6358

//动态规划 4 步走
// 1.确定状态,最后一步+分解为子问题
// 2.转移方程,根据子问题直接定义得到
// 3.初始条件 + 边界条件
// 4.计算顺序,避免重复计算
class Solution {
public:
    int uniquePaths(int m, int n) {
        if(m<=0 || n<=0) return 0;
        //构建辅助数组
        int** dp=new int*[m];
        for(int i=0;i<m;i++)
            dp[i]=new int[n];
        //初始化
        dp[0][0]=1;

        for(int i=0;i<m;i++){
            for(int j=0;j<n;j++){
                //边界条件
                if(i==0 || j==0)
                    dp[i][j]=1;
                else{
                    //转移方程
                    dp[i][j]=dp[i-1][j]+dp[i][j-1];
                }


            }
        }
        int result=dp[m-1][n-1];
        for(int i=0;i<m;i++)
            delete[] dp[i];
        delete[] dp;

        return result;

    }
};
全部评论

相关推荐

07-15 11:35
门头沟学院 Java
心里踏实多了,可以安心准备论文了
看不见我ffgh:牛哇佬,要不要来试一试pdd,部门氛围很好
京东开奖153人在聊
点赞 评论 收藏
分享
水墨不写bug:疑似没有上过大学
点赞 评论 收藏
分享
醉蟀:你不干有的是人干
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务