I have this code:
public class RecurLoopTest {
public static void main(String[] args) {
printit(2);
}
private static int printit(int n){
if(n>0){
printit(--n);
}
System.out.print(n+",");
return n;
}
}
I have drawn a execution flow/memory flow diagram for above program. Is this diagram correct or do I need some changes to make it correct?
What I have drawn looks like this:
enter image description here
-
\$\begingroup\$ Wow, this diagram visually clearly communicates your recursive algorithm: illustrated call-stack plus count-down iterator-parameter👍 \$\endgroup\$hc_dev– hc_dev2021年05月08日 12:29:43 +00:00Commented May 8, 2021 at 12:29
1 Answer 1
It would be better to add the method arguments in the diagram, for example:
printit(0) -- n=0, prints "0,", returns 0
printit(1) -- n=1, prints "0,", returns 0
printit(2) -- n=2, prints "1,", returns 1
main()
I don't think you need 4 drawings side by side for this, just one like this would be clear enough already.
Explore related questions
See similar questions with these tags.