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 浏览量

开启你的 职业

完成课程获取认证

开始
广告