例题:孩子-兄弟链表存储结构中求树的叶子结点的算法思路
typedef struct CSNode {
int val;
CSNode* firstchild, * nextsibling;
} CSNode, * CSTree;
int dfs(CSTree root) {
if (!root) return 0;
else if (!root->firstchild) return 1;
else {
int left = dfs(root->firstchild);
int right = dfs(root->nextsibling);
return left + right;
}
}