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
广告