So far, so good. Now go through it by hand. Work out the arguments passed, and what first last and mid are in the first recursive call. go through all the calls and see whether you get to your base case (first == last) for every route.[campbell@computer java]$ java Recursion 1 2 69
The biggest number is 69
Notice that using args allows you to pass an array of any length and see what happens, without having to recompile every time.[campbell@computer java]$ java Recursion 1 2 69 4
Exception in thread Main etc etc
Something is calling the recursion with the left argument greater than the right. You can see you are always getting the same call. It will never reach the base case.[campbell@computer java]$ java Recursion 1 2 69 4
first = 0, mid = 1, last = 3
first = 0, mid = 0, last = 1
first = 2, mid = 1, last = 3
first = 2, mid = 0, last = 1
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
first = 2, mid = 0, last = 0
Exception in thread "main" java.lang.RuntimeException: Taking too long.
Campbell Ritchie wrote: It will never reach the base case.
permaculture is largely about replacing oil with people. And one tiny ad:
a bit of art, as a gift, that will fit in a stocking
https://gardener-gift.com
|