Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
recursion_java
//'main' method must be in a class 'Rextester'. //Compiler version 1.8.0_111 import java.util.*; import java.lang.*; class Rextester { public static void main(String[] args) { // System.out.println(fib(100)); System.out.println(fibWithRec(100000)); // System.out.println(fibWithLoop(100000)); } public static long fib(long n) { if (n > 1) return fib(n - 1) + fib(n - 2); else return n; } public static long fibWithRec(long n) { if (n > 1) return fiIter(1, 1, n - 2); else return n; } public static long fiIter(long prev, long current, long n) { if (n == 0) return current; else return fiIter(current, prev + current, n - 1); } public static long fibWithLoop(long n) { if(n<=1)return n; long i=2; long prev=1; long current=1; while (i < n) { long next = prev+current; prev=current; current=next; i++; } return current; } }
run
|
edit
|
history
|
help
0
Lincoln1_Surafel
3a
String
javaClassAr2
Palindrome String Checking
FizzBuzz
1B
Add Two Numbers saved in linked lists
Queue using linked list
PE #5