// Java
public void recur(int level, int param) {
// terminator
if (level > MAX_LEVEL) {
// process result //递归终止条件
return;
}
// process current logic
process(level, param); //处理当前层逻辑
// drill down 下探到下一层
recur( level: level + 1, newParam);
// restore current status //如果需要清扫当前层
}