一尘不染

Golang:递归数据结构

go

我有一个简单的问题…我正在尝试使用切片在Golang中重现此递归数据结构。

type Trie map[byte]Trie

现在,我在下面使用带有切片的递归数据结构的“粗糙”源代码,除了我输入的结构是结构而不是结构片之外,其他所有东西都可以正常工作。理想情况下,我希望类型化的递归数据结构是Trie的一部分,其中包含元素Trie
{byte,[] Trie}。希望这有意义吗?现在,我有一个Trie struct {byte,[] Trie}类型。

type Trie struct {
elem byte
others []Trie
}

也许这会有所帮助。当我现在创建切片的Trie时,我使用此功能。

func CreateTrie() []Trie {
    return make([]Trie, 0, 13)
}

我想以这样的方式定义切片的Trie:

func CreateTrie() Trie {
    return make(Trie, 0, 13)
}

切片是否可以做到这一点,或者我对切片使用了第一个(唯一的)解决方案?


阅读 230

收藏
2020-07-02

共1个答案

一尘不染

是您要找的东西吗?

2020-07-02