//tree结构
type treenode struct {
value int
left, right *treenode
}
func (node *treenode) print() {
if node == nil {
fmt.Println("nil=node")
} else {
fmt.Println(node.value)
}
}
func (node *treenode) setVal(val int) {
node.value = val
}
//递归函数:数据结构是递归的,操作方法是递归的
func (node *treenode) recu() {
if node != nil {
node.print()
node.left.recu()
node.right.recu()
} else {
return
}
}
func main() {
root := treenode{}
root.setVal(0)
root.left = &treenode{value: 1}
root.right = &treenode{value: 2}
root.left.left = &treenode{value: 3}
root.left.right = &treenode{value: 4}
root.right.left = &treenode{value: 5}
root.right.right = &treenode{value: 6}
root.recu()
}