Golang 程式,定義一個二叉樹


示例 − 在給定的樹中,根節點為 1,其左子樹的根為 2,右子樹的根為 3,...依此類推。

先序遍歷樹輸出:1、2、4、5、3、6、7。

解決此問題的辦法

步驟 1 − 首先,我們定義節點結構。

步驟 2 − 在 main 方法中,我們將建立上面的樹。

步驟 3 − 最後,我們將執行先序遍歷樹。

示例

 現場演示

package main
import "fmt"
type Node struct {
   data int
   left *Node
   right *Node
}
func (root *Node)PreOrderTraversal(){
   if root !=nil{
      fmt.Printf("%d ", root.data)
      root.left.PreOrderTraversal()
      root.right.PreOrderTraversal()
   }
   return
}
func main(){
   root := Node{1, nil, nil}
   root.left = &Node{2, nil, nil}
   root.right = &Node{3, nil, nil}
   root.left.left = &Node{4, nil, nil}
   root.left.right = &Node{5, nil, nil}
   root.right.left = &Node{6, nil, nil}
   root.right.right = &Node{7, nil, nil}
   fmt.Printf("Pre Order Traversal of the given tree is: ")
   root.PreOrderTraversal()
}

輸出

Pre Order Traversal of the given tree is − 1 2 4 5 3 6 7

更新日期:17-Mar-2021

588 瀏覽量

開啟你的 職業

完成課程獲取認證

開始
廣告
© . All rights reserved.