给定一个外来语言的排序字典,它包含N个单词和k个标准字典的起始字母,任务是完成返回字符串的函数,该字符串表示语言中字符的顺序。在算法中正确使用拓扑排序
Input: Dict[] = { "baa", "abcd", "abca", "cab", "cad" }, k = 4
Output: Function returns "bdac"
Here order of characters is 'b', 'd', 'a', 'c'
我已经实施了这个问题用拓扑排序参考一些网上的文章的解决方案,但他们没有提及他们是如何在使用拓扑排序的做出决定吗?
问题:某人可能怎么知道何时使用图或其拓扑排序等概念来解决问题?
参考:
的解决方案是遍历给出的列表,并比较每个字符串与下一个。只要发现第一个不匹配,就在图形中的两个字符之间添加边,然后继续比较接下来的两个字符串。
一旦图形准备就绪,应用拓扑排序。