給定一個外來語言的排序字典,它包含N個單詞和k個標準字典的起始字母,任務是完成返回字符串的函數,該字符串表示語言中字符的順序。在算法中正確使用拓撲排序
Input: Dict[] = { "baa", "abcd", "abca", "cab", "cad" }, k = 4
Output: Function returns "bdac"
Here order of characters is 'b', 'd', 'a', 'c'
我已經實施了這個問題用拓撲排序參考一些網上的文章的解決方案,但他們沒有提及他們是如何在使用拓撲排序的做出決定嗎?
問題:某人可能怎麼知道何時使用圖或其拓撲排序等概念來解決問題?
參考:
的解決方案是遍歷給出的列表,並比較每個字符串與下一個。只要發現第一個不匹配,就在圖形中的兩個字符之間添加邊,然後繼續比較接下來的兩個字符串。
一旦圖形準備就緒,應用拓撲排序。