将二叉树的两个孩子换位置,即左变右,右变左。不能用递规
来源:互联网 发布:python正则匹配ip地址 编辑:程序博客网 时间:2024/05/09 15:45
分析
先用递归
//二叉树的两个孩子换位置(递归版本): void exchange(BiTree BT) { BiTree p;if(BT=NULL){p=BT-> lchild;BT-> lchild=BT-> rchild;BT-> rchild=p;exchange(BT-> lchild);exchange(BT-> rchild);}}
非递归实现
//二叉树的两个孩子换位置(非递归版本): // 在二叉链表下的交换操作 void exchange(BiTree BT){BiTree r,p;BiTree stack[100];int tp=0;stack[0]=BT;while(tp >= 0){p=stack[tp];tp=tp-1;if(p!=NULL){r=p-> lchild;p-> lchild=p-> rchild;BT-> rchild=r; stack[tp+1]=p-> lchild;tp=tp+1;stack[tp+1]=p-> rchild;tp=tp+1;}}}
- 将二叉树的两个孩子换位置,即左变右,右变左。不能用递规
- 华为的一个笔试题:.将二叉树的两个孩子换位置,即左变右,右变左。不能用递规
- 将二叉树的两个孩子换位置,即左变右,右变左。(递规与非递规两种方法)
- 将二叉树的两个孩子换位置,即左变右,右变左。(用递归和非递归两种方法)
- 将二叉树的两个孩子换位置,即左变右,右变左。(用递归和非递归两种方法)
- 将任意一颗二叉树转变为每一个节点都是另外两个孩子节点的和
- 将邻接表表示的图转换为孩子兄弟法表示的二叉树
- 面试题二: java 实现二叉树的中序优先遍历,不能用递归
- 求两个数的和,但是不能用加法操作。
- 比较两个数的大小,要求不能用if,<,>,?
- 面试题:实现两个数的和,不能用“+”“-”
- C++二叉树左右孩子的交换
- 两个孩子的对话
- 查看一颗二叉树的每个节点的值是否都是其左右两个孩子节点值的和
- 编写一个函数,将两个字符串连接起来。(不能用strcat函数)。
- 指针类型的数据在初始化以前时不能用位置运算符寻找其位置
- 不能用的文件名
- 两个数相减,不能用加减乘除做减法
- poj2940 Wine Trading in Gergovia-----想法题
- 重写FLEX组件 --资料收集
- CSDN博客开通了
- : hibernate hql 书写 投影查询 问题
- Struts2 国际化资源表达式用法
- 将二叉树的两个孩子换位置,即左变右,右变左。不能用递规
- 编程规范
- 【正则表达式教程】正则表达式入门
- 实现一个挺高级的字符匹配算法: 给一串很长字符串,要求找到符合要求的字符串,例如目的串:123 1******3***2 ,12*****3 这些都要找出来
- 不同操作系统对文本文件“行结束符”的不同定义
- 两种为hql设置参数的万能方法
- 【MFC】按钮提示功能的实现
- Java之加密方式
- linux常用命令整理