“Дерево бинарного поиска inder ruversal golang” Ответ

Дерево бинарного поиска inder ruversal golang

package main
 
import "fmt"
 
type Node struct {
	val   int
	left  *Node
	right *Node
}
 
func InorderRecursive(root *Node) {
	if root == nil {
		return
	}
 
	InorderRecursive(root.left)
	fmt.Printf("%d ", root.val)
	InorderRecursive(root.right)
}
 
func main() {
	/*
				10
			   /  \
			 20	   30
			/ \      \
		   40  50     60
		  /
		 70
	*/
 
	root := &Node{10, nil, nil}
	root.left = &Node{20, nil, nil}
	root.right = &Node{30, nil, nil}
	root.left.left = &Node{40, nil, nil}
	root.left.right = &Node{50, nil, nil}
	root.right.right = &Node{60, nil, nil}
	root.left.left.left = &Node{70, nil, nil}
 
	fmt.Println("Inorder Traversal - recursive solution : ")
	InorderRecursive(root)
}
Tired Termite

Порядок в проходе Голанг

type TreeNode struct {
  Val int
  Left *TreeNode
  Right *TreeNode
}

func inOrderTraverse(root *TreeNode) int[] {
  list := []int {}
  if root == nil {
    return list
  }
  
  stack := []*TreeNode { }
  for root != nil || len(stack) > 0 {
    
    for root != nil {
      stack = append(stack, root)
      root = root.Left
    }
    
    root = stack[len(stack) - 1]
    stack = stack[0:len(stack) - 1]
    list = append(list, root.Val)
    root = root.Right
  }
  
  return list
}

Ibrahim Albarghouthi

Предварительный заказ Traversal Golang

type TreeNode struct {
  Val int
  Left *TreeNode
  Right *TreeNode
}

func preOrderTraverse(root *TreeNode) int[] {
  list := []int {}
  if root == nil {
    return list
  }
  
  stack := []*TreeNode { root }
  for len(stack) > 0 {
    root = stack[len(stack) - 1]
    stack = stack[0:len(stack) - 1]
    list = append(list, root.Val)

    if root.Left != nil {
      stack = append(stack, root.Left)
    }
    
    if root.Right != nil {
      stack = append(stack, root.Right)
    }
  }
  
  return list
}
Ibrahim Albarghouthi

Ответы похожие на “Дерево бинарного поиска inder ruversal golang”

Вопросы похожие на “Дерево бинарного поиска inder ruversal golang”

Больше похожих ответов на “Дерево бинарного поиска inder ruversal golang” по Go

Смотреть популярные ответы по языку

Смотреть другие языки программирования