我有一個可能的字符串列表組列表。每個字符串由幾個字組成,它們是字符串元素。我想根據這些元素對字符串進行分組。字符串分組
每個組都基於一個常用單詞:組中的所有字符串必須包含該單詞 - 儘管我不要求包含該單詞的所有字符串都在同一組中。與N字符可以在任何N不同的組。每個字符串可能只在一個組中。每個組必須至少有兩個字符串。
目標:形成組以最大化組中的字符串數量(最小化「孤立」字符串)。
舉例來說,如果我有一個字符串以下列表:
cycle cost
pump cost
cycle analysis
cost example
我會每個字符串作爲潛在羣組的所有可能的話。我現在想把這些字符串分組,以便儘可能多地進入一個組。
我嘗試了一種天真的方法,首先在組中使用最多的字符串,在本例中它將是cost
,但是這會在沒有組的情況下保留cycle analysis
。
我在這個例子中尋找的結果是:
cycle: cycle cost, cycle analysis
cost: pump cost, cost example
是否存在一種算法,這種問題了嗎?任何關於採取方法的指針都會有所幫助。
這真是一口。這完全取決於字符串和組如何關聯。你能否詳細說明,如果有幫助,請提供一個簡單的例子。 – JCKaz
你能舉一個你想要的例子嗎? – sourabh1024
我已經添加了一個例子來闡明我的意思。 –