美文网首页
递归解决组合问题

递归解决组合问题

作者: Moonsmile | 来源:发表于2017-03-09 22:15 被阅读0次

比如从5个当中选2个

import java.util.Scanner;


/**
 * Created by junyi.pc on 2017/1/25.
 */

public class Main {


    public static int f(int n,int m){
              if(n<m)
                  return  0;
              if(n==m)
                  return  1;
              if(m==0)
                  return  1;
              return f(n-1,m-1)+f(n-1,m);


    }
    public static void main(java.lang.String[] args){

           System.out.print(f(5,3));
    }
}

运行结果


C:\java\jdk1.8.0_25\bin\java -Didea.launcher.port=7533 "-Didea.launcher.bin.path=C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2016.1\bin" -Dfile.encoding=UTF-8 -classpath "C:\java\jdk1.8.0_25\jre\lib\charsets.jar;C:\java\jdk1.8.0_25\jre\lib\deploy.jar;C:\java\jdk1.8.0_25\jre\lib\ext\access-bridge-64.jar;C:\java\jdk1.8.0_25\jre\lib\ext\cldrdata.jar;C:\java\jdk1.8.0_25\jre\lib\ext\dnsns.jar;C:\java\jdk1.8.0_25\jre\lib\ext\jaccess.jar;C:\java\jdk1.8.0_25\jre\lib\ext\jfxrt.jar;C:\java\jdk1.8.0_25\jre\lib\ext\localedata.jar;C:\java\jdk1.8.0_25\jre\lib\ext\nashorn.jar;C:\java\jdk1.8.0_25\jre\lib\ext\sunec.jar;C:\java\jdk1.8.0_25\jre\lib\ext\sunjce_provider.jar;C:\java\jdk1.8.0_25\jre\lib\ext\sunmscapi.jar;C:\java\jdk1.8.0_25\jre\lib\ext\sunpkcs11.jar;C:\java\jdk1.8.0_25\jre\lib\ext\zipfs.jar;C:\java\jdk1.8.0_25\jre\lib\javaws.jar;C:\java\jdk1.8.0_25\jre\lib\jce.jar;C:\java\jdk1.8.0_25\jre\lib\jfr.jar;C:\java\jdk1.8.0_25\jre\lib\jfxswt.jar;C:\java\jdk1.8.0_25\jre\lib\jsse.jar;C:\java\jdk1.8.0_25\jre\lib\management-agent.jar;C:\java\jdk1.8.0_25\jre\lib\plugin.jar;C:\java\jdk1.8.0_25\jre\lib\resources.jar;C:\java\jdk1.8.0_25\jre\lib\rt.jar;C:\Users\junyi.pc\Desktop\client\out\production\client;C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2016.1\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMain Main
10
Process finished with exit code 0


相关文章

  • 递归解决组合问题

    比如从5个当中选2个 运行结果

  • Python实现字符串排序(包含了排列组合问题)

    用递归的方式解决排列组合问题 def zuhe(ss,res,path): if ss == '': ...

  • 前端开发 -- 算法模式(递归和动态规划)

    递归 递归是一种解决问题的方法,它解决问题的各个小部分,直到解决最初的大问题,递归通常涉及到函数的自身调用。递归函...

  • Y组合子

    Y组合子要解决的问题是如何用纯正的lambda表达式实现递归以阶乘为例,可以采用下面的代码以递归的形式表达: 要求...

  • 学习递归

    1. 递归 1.1 理解递归 ​ 递归是一种解决问题的方法,它从解决问题的各个小部分中开始,直到解决最...

  • 递归2--表达式求值

    用递归解决递归形式的问题: 表达式的定义是递归的:

  • 数据结构之理解递归

    理解递归 要理解递归, 首先要理解递归 --佚名 递归是一种解决问题的方法, 他从解决问题的各个小部分开始, 知道...

  • 全排列,组合(字符串或数字)字典序

    无重复字符的全排列和组合数目问题(求这类问题一般用递归,把问题分解成1+n-1,对n-1部分继续递归分解) 组合:...

  • 递归算法

    递归是解决问题最常用的方法,比如,解决二叉树问题,最容易想到的就是递归算法,首先处理根结点,然后递归处理左右子树。...

  • backtracking(回溯)

    回溯法,是通过递归的方式穷举组合问题的所有可能解,关于这个问题的解决方法大致有如下步骤 建立解矩阵,如果不知道可行...

网友评论

      本文标题:递归解决组合问题

      本文链接:https://www.haomeiwen.com/subject/iebggttx.html