如何使用 C# 中的遞迴反轉二叉查詢樹?
要反轉二叉查詢樹,我們呼叫一個方法 InvertABinarySearchTree,它將節點作為引數。如果節點為 null,則返回 null,如果該節點不為 null,則透過傳遞左右子代的值遞迴地呼叫 InvertABinarySearchTree。並將右子值分配給左子值並將左子值分配給右子值。最終的輸出將包含一個樹,它將是其自身的映象。
示例
public class TreesPgm{
public class Node{
public int Value;
public Node LeftChild;
public Node RightChild;
public Node(int value){
this.Value = value;
}
public override String ToString(){
return "Node=" + Value;
}
}
public Node InvertABinarySearchTree(Node node){
if (node == null){
return null;
}
Node left = InvertABinarySearchTree(node.LeftChild);
Node right = InvertABinarySearchTree(node.RightChild);
node.LeftChild = right;
node.RightChild = left;
return root;
}
}輸入
1 3 2
輸出
1 2 3
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP