Skip to content

Latest commit

 

History

History
51 lines (31 loc) · 961 Bytes

二叉树的镜像.md

File metadata and controls

51 lines (31 loc) · 961 Bytes
Error in user YAML: (<unknown>): mapping values are not allowed in this context at line 2 column 6
---
Time:2019/8/29
Title: 二叉树的镜像
Author: 小鹿
---


面试题二十七:

请完成一个函数,如果一个二叉树,该函数输出它的镜像。

一、思路

根节点的左右子节点相互交换,继续递归遍历,将子节点的左右结点进行交换,知道遇到叶子节点。

二、测试用例

  • 普通二叉树 —— 普通测试
  • 只有左子节点、只有右子节点、只有一个结点 —— 特殊测试
  • 空树 —— 输入测试

三、代码实现

const insert = (root)=>{
	// 判断根节点是否为 null
    if(root == null){
     	return;  
    }
    
    // 进行结点交换
    Let tempNode = root.left;
    root.left = root.right;
    root.right = tempNode;
    
    // 递归遍历剩余的子节点
    insert(root.left);
    insert(root.right);
    
    // 返回根节点
    return root;
}