105.go 432 B

1234567891011121314151617181920212223
  1. package main
  2. /**
  3. * Definition for a binary tree node.
  4. * type TreeNode struct {
  5. * Val int
  6. * Left *TreeNode
  7. * Right *TreeNode
  8. * }
  9. */
  10. func buildTree(preorder []int, inorder []int) *TreeNode {
  11. if len(preorder) == 0 || len(preorder) != len(inorder) {
  12. return nil
  13. }
  14. root := TreeNode{preorder[0], nil, nil}
  15. return &root
  16. }
  17. func main() {
  18. printTree(buildTree(
  19. []int{3, 9, 20, 15, 7},
  20. []int{9, 3, 15, 20, 7}))
  21. }