请在JAVA中,用递归算法计算下面的题目

比如:1+4+2-3这样子可以计算吗?

第1个回答  2017-03-07
package test;

public class CircleMt {
    public static int operate(int a ,int b,String operation){
        if(operation.equals("+")){
            return a+b;
        }else if(operation.equals("-")){
            return a-b;
        }
        return 0;
    }
    public static void main(String[] args) {
        System.out.println(operate(operate(operate(1,4,"+"),2,"+"),3,"-"));
    }
}

追问

我是想计算出式子的结果。

在java中,用递归方法计算n的阶乘。
用Java求键盘输入的数的阶乘n。(递归算法)packagejiecheng; importjava.util.*; \/\/导入java.util包中的所有类classrep{ publiclongrep(intn){ longi=0; if(n==0||n==1) i=1;elsi=n*rep(n-1) returni; } } publicclassJie { publicstaticvoidmain(String[] args) { intn; ...

java 递归算法问题:(n,k)=(n-1,k-1)+(n-1,k)?
就是说 n 个里面要选 k 个,分为两组,包含 A和不包含A。包含 A : 已经包含A了,所以总数是 n-1 个了;同理,已经包含了A,所以只要选 k -1 个就可以了,所以为 (n-1,k-1)。不包含A:已经不包含A了,所以总数是 n-1 个;还是选 k个,所以为(n-1,k)。无限递归即可以了。

Java用递归实现3.根据规律写出计算算法:1、7、8、15、23、38、61...
具体实现代码如下:在上面的代码中,我们定义了一个getNumber方法,该方法接受一个整数n作为参数,返回数列中第n位的值。在该方法中,我们使用了递归算法,把求第n位的值转化为了求第n-1位和第n-2位的和。其中,第一项的值为1,第二项的值为7。通过递归调用,我们最终可以得到数列中任意一项的值...

用递归算法求1~100的和,用java写。
public class Test { \/*创建类*\/public static void main(String[] args) {System.out.println(dg(100));}static int dg(int i) { \/*定义变量 *\/int sum;if (i == 1) \/*假设条件*\/return 1;elsesum = i + dg(i - 1); \/*1~100的和的表达式*\/return sum; \/*...

java编程求1+2+3…+100的和(用递归法)
int sum=0;for(int i=1;i<=100;i++){ sum+=i;} System.out.print(sum);} } 当然你可以将核心代码直接放在main()函数中,也可以放在某个函数中(如sum()),根据你自己的需要进行选择,如果放置在sum()函数中,可以让函数有返回值int,函数体中加return 语句,直接将变量sum返回,这样就...

Java中怎样用递归函数求20的阶乘?
public class Jiecheng { public static void main(String[] args) { long n=20;long result=jiecheng(n);System.out.println("20的阶乘是"+result);} public static long jiecheng(long n) { return (n==1)?1:n*jiecheng(n-1);} } ...

java递归算法的例子。
阶乘:要求:给定一个数值,计算出它的阶乘值,例如5的阶乘为5*4*3*2*1 实现:[html] view plaincopy \/\/ 利用递归实现一个数的阶乘值 private static BigDecimal getNum(BigDecimal inNum) { if (inNum.compareTo(BigDecimal.ONE) == 0) { return inNum; } return inNum....

用Java编写一个完整的递归程序,实现如下功能:从键盘输入数字n,程序自动...
} public static Integer factorial(Integer a, Integer b){ if(b == 1){ return a * b; }else{ return a * b * factorial(a, b-1); } }这个最后吐槽一句,用循环一下就解决了,非要用递归,闲得蛋疼

独立编写JAVA程序,采用递归的方法求1至n的和。 要求: 1.n从键盘输入...
import java.util.Scanner;public class Recursion { public static int recursion(int num){ if(num==1) return 1;return num+recursion(num-1);} public static void main(String[] args){ while(true){ System.out.println("请输入一个1~"+Integer.MAX_VALUE+"之间的整数(或输入Y退出),...

时间复杂度怎么算例题
因此,递归算法如下:Java代码 fact(intn){ if(n==0||n==1)return1;else returnn*fact(n-1);} 以n=3为例,看运行过程如下:fact(3)---fact(2)---fact(1)---fact(2)---fact(3)递归回溯 递归算法在运行中不断调用自身降低规模的过程,当规模降为1,即递归到fact(1)时,满足停止...

相似回答