C-打印特定的Trie段

C-打印特定的Trie段,c,trie,C,Trie,不久前,我问我应该用什么来存储大量的产品代码。 我决定使用Tries,并编写了这段代码,并将其上传到我的Github存储库 但现在我必须根据我的项目打印我的Trie,但我不能这样做 我还需要打印,例如:所有代码都以字母“A”开头,所以我的打印函数需要接收一个trie和一个要打印的字符 问题是我无法成功地打印它。我对指针没有经验,所以这对我来说更难 我希望你能帮助我 代码是用葡萄牙语编写的,但我可以为你们解释 它从txt中读取产品代码 使用strtok删除\n并将其保存到trie 现在我应该按

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

但现在我必须根据我的项目打印我的Trie,但我不能这样做

我还需要打印,例如:所有代码都以字母“A”开头,所以我的打印函数需要接收一个trie和一个要打印的字符

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

我希望你能帮助我

代码是用葡萄牙语编写的,但我可以为你们解释

  • 它从txt中读取产品代码
  • 使用strtok删除\n并将其保存到trie
  • 现在我应该按字母顺序打印所有以A开头的代码
创建一个堆栈(后进先出)数据结构,其中包含一个节点指针和一个整数,您将在其中存储索引变量

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

当您到达终点时,执行您想要在当前节点上执行的任何操作,从堆栈中弹出节点指针和索引以增加索引


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

我决定尝试使用AVL树,但在将元素存储到AVL中时遇到了一些问题。它需要插入的195534个代码中有6471个。知道为什么会这样吗?这是我的代码,这是我试图处理的AVL:有帮助吗?谢谢