PHP获取二叉树镜像的方法


Posted in PHP onJanuary 17, 2018

本文实例讲述了PHP获取二叉树镜像的方法。分享给大家供大家参考,具体如下:

问题

操作给定的二叉树,将其变换为源二叉树的镜像。

解决思路

翻转二叉树,有递归和非递归两种方式,非递归就是使用队列。

实现代码

<?php
/*class TreeNode{
 var $val;
 var $left = NULL;
 var $right = NULL;
 function __construct($val){
  $this->val = $val;
 }
}*/
function Mirror(&$root)
{
 if($root == NULL)
  return 0;
 $queue = array();
 array_push($queue, $root);
 while(!empty($queue)){
  $node = array_shift($queue);
  $tmp = $node->left;
  $node->left = $node->right;
  $node->right = $tmp;
  if($node->left != NULL)
   array_push($queue, $node->left);
  if($node->right != NULL)
   array_push($queue, $node->right);
 }
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
SMARTY学习手记
Jan 04 PHP
PHP 的 __FILE__ 常量
Jan 15 PHP
php 读取shell管道传输过来的内容
Mar 01 PHP
利用Memcached在php下实现session机制 替换PHP的原生session支持
Aug 21 PHP
PHP代码网站如何防范SQL注入漏洞攻击建议分享
Mar 01 PHP
PHP调用Linux的命令行执行文件压缩命令
Jan 27 PHP
深入file_get_contents与curl函数的详解
Jun 25 PHP
windwos下使用php连接oracle数据库的过程分享
May 26 PHP
Linux系统递归生成目录中文件的md5的方法
Jun 29 PHP
PHP下载生成的csv文件及问题总结
Aug 06 PHP
php实现简单的上传进度条
Nov 17 PHP
PHP实现阿里大鱼短信验证的实例代码
Jul 10 PHP
PHP实现按之字形顺序打印二叉树的方法
Jan 16 #PHP
PHP实现可添加水印与生成缩略图的图片处理工具类
Jan 16 #PHP
PHP实现找出链表中环的入口节点
Jan 16 #PHP
详解thinkphp中的volist标签
Jan 15 #PHP
thinkphp 中的volist标签在ajax操作中的特殊性(推荐)
Jan 15 #PHP
PHP7扩展开发之基于函数方式使用lib库的方法详解
Jan 15 #PHP
PHP7扩展开发之hello word实现方法详解
Jan 15 #PHP
You might like
php中处理模拟rewrite 效果
2006/12/09 PHP
php图片加中文水印实现代码分享
2012/10/31 PHP
php数组去除空值函数分享
2015/02/02 PHP
laravel 使用auth编写登录的方法
2019/09/30 PHP
Js+Dhtml:WEB程序员简易开发工具包(预先体验版)
2006/11/07 Javascript
JavaScript 字符串与数组转换函数[不用split与join]
2009/12/13 Javascript
JavaScript实现拼音排序的方法
2012/11/20 Javascript
JS画5角星方法介绍
2013/09/17 Javascript
JavaScript按位运算符的应用简析
2014/02/04 Javascript
javascript使用for循环批量注册的事件不能正确获取索引值的解决方法
2014/12/20 Javascript
javascript实现简单的贪吃蛇游戏
2015/03/31 Javascript
JavaScript中使用Object.prototype.toString判断是否为数组
2015/04/01 Javascript
使用Jasmine和Karma对AngularJS页面程序进行测试
2016/03/05 Javascript
浅谈js函数中的实例对象、类对象、局部变量(局部函数)
2016/11/20 Javascript
Asp.Net之JS生成分页条的方法
2016/11/23 Javascript
浅谈js for循环输出i为同一值的问题
2017/03/01 Javascript
JS正则表达式验证中文字符
2017/05/08 Javascript
JavaScript之Map和Set_动力节点Java学院整理
2017/06/29 Javascript
纯JavaScript实现实时反馈系统时间
2017/10/26 Javascript
关于JavaScript语句后面的分号问题
2017/12/07 Javascript
vue中子组件向父组件传递数据的实例代码(实现加减功能)
2018/04/20 Javascript
wxpython 学习笔记 第一天
2009/03/16 Python
使用Python编写一个在Linux下实现截图分享的脚本的教程
2015/04/24 Python
python使用urllib2实现发送带cookie的请求
2015/04/28 Python
python解决方案:WindowsError: [Error 2]
2016/08/28 Python
python 制作自定义包并安装到系统目录的方法
2018/10/27 Python
Python小白学习爬虫常用请求报头
2020/06/03 Python
Python实现列表中非负数保留,负数转化为指定的数值方式
2020/06/04 Python
浅谈Python中的模块
2020/06/10 Python
美国背景检查、公共记录和人物搜索网站:BeenVerified
2018/02/25 全球购物
北美主要的汽车零部件零售商:AutoShack.com
2019/02/23 全球购物
酷瑞网络科技面试题
2012/03/30 面试题
人民教师求职自荐信
2014/03/12 职场文书
财务担保书范文
2014/04/02 职场文书
闪闪的红星观后感
2015/06/08 职场文书
win10电脑双屏显示一个黑屏怎么办?win10电脑双屏显示一个黑屏解决方法
2022/07/15 数码科技