首页 > 技术文章 > 交互二叉树的所有左子树和右子树.

listened 2014-09-18 12:40 原文

  递归实现:

真正对递归的调用过程很熟悉的哥们才很顺,虽然这个题目代码看起来不难,但是我在纸上画出调用过程后,才弄明白是什么个过程.

 1 //交换所有二叉树的左子树和右子树.
 2 void
 3 swap(PNode p) {
 4     if(!p)    return;
 5 
 6     swap(p->lchild);
 7     swap(p->rchild);
 8 
 9     PNode t;
10     t = p->lchild;
11     p->lchild = p->rchild;
12     p->rchild = t;
13     return;
14 }

 

推荐阅读