当前位置: 首页 > news >正文

LeetCode -- Invert Binary Tree

题目描述:
Invert a binary tree.


     4
   /   \
  2     7
 / \   / \
1   3 6   9
to
     4
   /   \
  7     2
 / \   / \
9   6 3   1




就是把一棵二叉树进行反转。


思路:
本题的实现比较直接:后续遍历,交换节点。


实现代码:




/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     public int val;
 *     public TreeNode left;
 *     public TreeNode right;
 *     public TreeNode(int x) { val = x; }
 * }
 */
public class Solution {
    public TreeNode InvertTree(TreeNode root) 
    {
        
        Travel(ref root);
    	return root;
    }


private void Travel(ref TreeNode current)
{
	if(current == null || current.left == null && current.right == null){
		return;
	}
	
	Travel(ref current.left);
	Travel(ref current.right);
	Swap(ref current);
}




private void Swap(ref TreeNode n)
{
	var tmp = n.left;
	n.left = n.right;
	n.right = tmp;
}
}


相关文章:

  • 使用简单ORM开发框架进行快速开发
  • LeetCode -- Largest Number
  • LeetCode -- Length of last word
  • 编程是一种“组合的艺术”
  • LeetCode -- Majority Element II
  • 3G上网卡招标,华为成最大赢家
  • LeetCode -- Nim Game
  • 近期阅读关注(200905)
  • LeetCode -- Pascal's Triangle II
  • LeetCode -- Permutation Sequence
  • FreeBSD中替换系统调用监视系统文件打开记录
  • LeetCode -- Remove Element
  • 刚做的H1N1猪流感分布图Demo
  • LeetCode -- Same Tree
  • 与辛鹏和王昕聊OPUG(开放流程社区)
  • [译] 理解数组在 PHP 内部的实现(给PHP开发者的PHP源码-第四部分)
  • 《Java8实战》-第四章读书笔记(引入流Stream)
  • 【162天】黑马程序员27天视频学习笔记【Day02-上】
  • 4. 路由到控制器 - Laravel从零开始教程
  • classpath对获取配置文件的影响
  • CSS实用技巧干货
  • eclipse的离线汉化
  • Git 使用集
  • go append函数以及写入
  • springMvc学习笔记(2)
  • 汉诺塔算法
  • 计算机在识别图像时“看到”了什么?
  • 理清楚Vue的结构
  • 批量截取pdf文件
  • 前嗅ForeSpider教程:创建模板
  • 手机端车牌号码键盘的vue组件
  • 原生Ajax
  • 直播平台建设千万不要忘记流媒体服务器的存在 ...
  • ​LeetCode解法汇总2808. 使循环数组所有元素相等的最少秒数
  • ###项目技术发展史
  • (51单片机)第五章-A/D和D/A工作原理-A/D
  • (LNMP) How To Install Linux, nginx, MySQL, PHP
  • (草履虫都可以看懂的)PyQt子窗口向主窗口传递参数,主窗口接收子窗口信号、参数。
  • (二)PySpark3:SparkSQL编程
  • (附源码)计算机毕业设计ssm基于B_S的汽车售后服务管理系统
  • (黑客游戏)HackTheGame1.21 过关攻略
  • (牛客腾讯思维编程题)编码编码分组打印下标(java 版本+ C版本)
  • (亲测成功)在centos7.5上安装kvm,通过VNC远程连接并创建多台ubuntu虚拟机(ubuntu server版本)...
  • (算法)N皇后问题
  • (译) 函数式 JS #1:简介
  • (转)IIS6 ASP 0251超过响应缓冲区限制错误的解决方法
  • (转)jQuery 基础
  • (转载)OpenStack Hacker养成指南
  • *p++,*(p++),*++p,(*p)++区别?
  • .Net Remoting常用部署结构
  • .NET 编写一个可以异步等待循环中任何一个部分的 Awaiter
  • .NET 药厂业务系统 CPU爆高分析
  • .Net6 Api Swagger配置
  • .NET导入Excel数据
  • .Net组件程序设计之线程、并发管理(一)