二叉排序

来源:互联网 发布:软件开发 私活 价格 编辑:程序博客网 时间:2024/05/18 00:07

二叉排序树的查找恰好走了一条从根节点到该节点的路径,和给定值比较的次数等于给定值在二叉排序树中的层数。

我用Go想演示一下这个过程,大家帮我看看有什么不妥?

package mainimport(    "fmt")type node struct{    data int    lChild *node    rChild *node}var lNode = node {    data: 1,    lChild: nil,    rChild: nil,}var rNode = node {    data: 3,    lChild: nil,    rChild: nil,}var root = node {    data: 2,    lChild: &lNode,    rChild: &rNode,}func bisortSearch(root *node, value int) *node {    if root == nil {        return nil    } else if root.data == value {        return root    } else if root.data > value {        bisortSearch(root.lChild, value)    } else {        bisortSearch(root.rChild, value)    }    return nil}func main(){    result := bisortSearch(&root, 2)    fmt.Println(*result)}
原创粉丝点击