zoukankan      html  css  js  c++  java
  • 解如下方程(java实现)

                 n                              (m=1) 

    f(m,n)=  m                              (n=1)

                 f(m-1,n)+f(m,n-1)      (m>1,n>1)

           

    分析:本题就是类似于杨辉三角形,除了横边和纵边顺序递增外,其余每一个数是它左边和上边数字之和。

    package JingDian;
    //解类似杨辉三角形的方程
    public class leiyanghui {
        public static void main(String[] args){
            diguijie shu1 = new diguijie();
            feidiguijie shu2 = new feidiguijie();
            System.out.println(shu1.f1(5,5));
            System.out.println(shu2.f2(5,5));
        }
    
    }
    //这里是递归解法
    class diguijie{
        public int f1(int m,int n){
            if(1==m)
                return n;
            if(1==n)
                return m;
            return f1(m-1,n)+f1(m,n-1);
        }
    }
    //这里是非递归解法
    class feidiguijie{
        public int f2(int m,int n){
            int[][] a;
            a = new int[50][50];
            for(int i=0;i!=m;++i)
                a[i][0] = i+1;
            for(int j=0;j!=n;++j)
                a[0][j] = j+1;
            for(int i=1;i!=m;++i)
                for(int j=1;j!=n;++j)
                    a[i][j] = a[i-1][j]+a[i][j-1];
            return a[m-1][n-1];
        }
        
    }
  • 相关阅读:
    nginx 安装部署
    cordova 安装使用
    git 设置和取消代理
    SQL语句 合并列值 将一列的多个值合并成一行
    idea 注册码 地址:
    mac 安装redis
    redisTemplate 方法
    js 点击 隐藏弹出层
    windows 安装redis
    docker 安装redis
  • 原文地址:https://www.cnblogs.com/skylar/p/3662171.html
Copyright © 2011-2022 走看看