Golang之Struct(二叉树定义)

接招吧,看代码:

package main

import "fmt"

//二叉树结构体
//如果每个节点有两个指针,分别用来指向左子树和右子树,我们把这样的结构叫做二叉树
type Student struct {
    Name  string
    Age   int
    Score float32
    left  *Student
    right *Student
}

func trans(root *Student) {
    if root == nil {
        return
    }
    //fmt.Println(root) //前序遍历
    trans(root.left)
    //fmt.Println(root) //中序遍历
    trans(root.right)
    fmt.Println(root) //后序遍历
}

func main() {
    var root *Student = new(Student)

    root.Name = "stu01"
    root.Age = 18
    root.Score = 100

    var left1 *Student = new(Student)
    left1.Name = "stu02"
    left1.Age = 18
    left1.Score = 100

    root.left = left1

    var right1 *Student = new(Student)
    right1.Name = "Stu04"
    right1.Age = 18
    right1.Score = 100

    root.right = right1

    var left2 *Student = new(Student)
    left2.Name = "Stu03"
    left2.Age = 18
    left2.Score = 100

    left1.left = left2
    trans(root)
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏desperate633

LeetCode 144. Binary Tree Preorder Traversal题目分析代码

Given a binary tree, return the preorder traversal of its nodes' values. For ex...

982
来自专栏Golang语言社区

【Go 语言社区】Golang中interface判断nil问题

在示例中,我们定义一个interface名为Stringer,同时定义一个符合其定义的Binary类型: type Stringer interface { ...

48718
来自专栏10km的专栏

java:Set,Map排序输出到Writer

一般来说java.util.Set,java.util.Map输出的内容的顺序并不是按key的顺序排列的,但是java.util.TreeMap,java.ut...

2019
来自专栏算法修养

LeetCode 102. Binary Tree Level Order Traversal

1534
来自专栏郭耀华‘s Blog

《剑指offer》全部题目-含Java实现

陆续刷了好久,算是刷完了《剑指offer》,以下全部AC代码,不一定性能最优,如有错误或更好解答,请留言区指出,大家共同交流,谢谢~ 1.二维数组中的查找 在...

1K7
来自专栏郭耀华‘s Blog

LeetCode第六天

第六天 30.(219) Contains Duplicate II ? JAVA class Solution { public boolean co...

2907
来自专栏菩提树下的杨过

XStream、JAXB 日期(Date)、数字(Number)格式化输出xml

XStream、Jaxb是java中用于对象xml序列化/反序列化 的经典开源项目,利用它们将对象转换成xml时,经常会遇到日期(Date)、数字按指定格式输出...

2757
来自专栏数据结构与算法

2010 求后序遍历

2010 求后序遍历 时间限制: 1 s 空间限制: 64000 KB 题目等级 : 白银 Silver 题目描述 Description 输入一...

3286
来自专栏Echo is learning

剑指offer04--重建二叉树

1155
来自专栏机器学习入门

LWC 63: 749. Contain Virus

Problem: A virus is spreading rapidly, and your task is to quarantine the infec...

2198

扫码关注云+社区

领取腾讯云代金券