Recursion
A self-referential data structure or computation.
Related concepts: TypeReferenceFunctionCall
Closest Wikipedia entry: Recursion (computer science)
Misconceptions about Recursion14 documented Misconceptions
Check YourselfBaseCaseNotNeeded — Java
Recursive computations do not necessarily need a base case
BaseCaseSelfRecursive — Java
The base case of a structural recursion consists of a recursive self-call
ForEachTraversesRecursiveStructure — Java
For-each loops know how to traverse any recursive data structure
RecursiveActivationsShareFrame — Java
Recursive calls of a method share a stack frame
RecursiveCallSiteNoReturn — Java
Tail-recursive call sites of non-void methods need no return statement
RecursiveMethodImpliesRecursiveType — Java
A class with a recursive method represents part of a recursive data structure
RecursiveMethodNeedsIfElse — Java
A recursive method needs to contain an if-else statement
ReferringToRecursiveStructureMakesRecursive — Java
A class referring to a recursive data structure is (indirectly) part of that recursion as well
ReturnUnwindsMultipleFrames — Java
A return statement can unwind multiple call stack frames
UseOfSelfTypeImpliesRecursiveType — Java
If a class has a method that has a local variable, parameter, or return value with the class as its type, the class is a recursive type
VoidMethodNotRecursive — Java
A method with void return type can't be recursive
RecursiveFunctionNeedsIfElse — Python
A recursive function needs to contain an if-else statement
ReturnUnwindsMultipleFrames — Python
A return statement can unwind multiple call stack frames
BaseCaseNotNeeded — Scratch
Recursive computations do not necessarily need a base case