【问题标题】:C - Print a specific Trie segmentC - 打印一个特定的 Trie 段
【发布时间】:2015-04-04 14:07:40
【问题描述】:

不久前,我问我应该使用什么来存储大量产品代码。 我决定使用 Tries,并编写了这段代码,并将其上传到我的 Github 存储库

https://github.com/OctavioMaia/Projetos

但现在我必须根据我的项目打印我的 Trie,但我无法做到。

我还需要打印,例如:所有代码都以 char 'A' 开头,因此我的打印函数需要接收一个 trie 和一个 char 来打印。

问题是我无法成功打印它。我对指针没有经验,所以这对我来说更难

希望你能帮帮我。

代码是用葡萄牙语记录的,但我可以为你们解释一下。

  • 它从 txt 中读取产品代码。
  • 使用 strtok 删除 \n 并将其保存到 trie。
  • 现在我应该打印所有开头的代码,例如:A,按字母顺序

【问题讨论】:

标签: c trie


【解决方案1】:

创建一个堆栈(后进先出)数据结构,其中包含一个整数节点指针,您将在其中存储索引变量。

当你向下移动 trie 时,将当前节点指针和索引压入堆栈,移动到相应节点并将索引变量重置为 0。

当你到达终点时,执行你打算在当前节点上执行的任何操作,弹出一个节点指针并从堆栈中增加索引。

当没有更多节点可以推送或弹出时,您的工作就完成了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多