Académique Documents
Professionnel Documents
Culture Documents
Recursion
Examples
code
int size(list) {
true return 0
25/09/2012
25/09/2012
(b,c) true
(c) true
() false
(c) true ()
() false
display b display c
(b,c)
(c)
()
display b display c
25/09/2012
25/09/2012
Call 1
(a, (c,d,g)) false true return (a,c,d,g)
}
25/09/2012 DFR- DSA Recursion Examples 5 25/09/2012 DFR- DSA Recursion Examples 6
code
delete(el, list) { if is_empty(list) return list;
Call 1
(a, (a,d,e)) false
}
25/09/2012 DFR- DSA Recursion Examples 7 25/09/2012 DFR- DSA Recursion Examples 8
Call 1
(d, (a,d,e)) false false
Call 2
(d, (d,e)) false true return (e)
Call 1 Call 2
(e, (a,d,e)) false false (e, (d,e)) false false
Call 3
(e, (e)) false true
return ()
}
25/09/2012 DFR- DSA Recursion Examples 9 25/09/2012 DFR- DSA Recursion Examples 10