• 18、二叉树的镜像


    操作给定的二叉树,将其变换为源二叉树的镜像
    ==============Python================
    # -*- coding:utf-8 -*-
    # class TreeNode:
    #     def __init__(self, x):
    #         self.val = x
    #         self.left = None
    #         self.right = None
    class Solution:
        # 返回镜像树的根节点
        def Mirror(self, root):
            # write code here
            if not root:
                return
            root.left, root.right = root.right, root.left
            self.Mirror(root.left)
            self.Mirror(root.right)
            return root

    ==============Java==============

    /**
    public class TreeNode {
        int val = 0;
        TreeNode left = null;
        TreeNode right = null;
    
        public TreeNode(int val) {
            this.val = val;
    
        }
    
    }
    */
    public class Solution {
        public void Mirror(TreeNode root) {
            if (root == null) {
                return;
            }
            swap(root);
            Mirror(root.left);
            Mirror(root.right);
        }
        public void swap(TreeNode root) {
            TreeNode t = root.left;
            root.left = root.right;
            root.right = t;
        }
    }
  • 相关阅读:
    TCP 基础知识
    Spring Boot 实战 —— 日志框架 Log4j2 SLF4J 的学习
    MySQL 实战笔记
    Java 基础
    RPM 包的构建
    RPM 包的构建
    9. 桶排序
    8. 基数排序
    7. 计数排序
    6. 快速排序
  • 原文地址:https://www.cnblogs.com/liushoudong/p/13539301.html
Copyright © 2020-2023  润新知