Forums Register Login
Java recursion problem

hey guys,

im sort of new to java and im trying to write this complicated(for me) program..so basically given a number n,the the output is 2*function(n-1)+function(n-1)
for n=1,n=0 return 1 and o respectively.

And the constraint is that the value once computed should not be computed again that is all computed values should be stored and used the next time when the same calculation is done. so i tried to figure out TreeMaps and also generics. and i believe that i have the program obeying the conditions.

but the biggest value the program gives an output is 4250 after which an exception is thrown and its getMessage prints a null . i want to be able to give inputs till 10000.

I dont know why i did it..but i googled out the largest number datatype and coded using the BigInteger but the result is not correct better than Integer though.

Please tell my mistake.
First off, "2*function(n-1)+function(n-1)" is the same as "3*function(n-1)". This sequence of numbers will grow fast, so you definitely need to use BigInteger. As for storage, any Map<Integer, BigInteger> will do - HashMap, for example.
As for the exception: change your code to print the stack trace, not just the message. Like this:

Then you will know exactly what exception was thrown and exactly what line of code threw it.

thejwal pavithran wrote:

Well, since the code has been deleted -- and for what seems like an important reason -- this topic is arguably less likely to generate detailed answers. No reason to allow it to continue.


This thread has been viewed 799 times.

All times above are in ranch (not your local) time.
The current ranch time is
Oct 21, 2018 09:02:31.