この一連の文字列があるとしましょう:
strings = {'qqq', 'eqq', 'qqw', 'www', 'qww', 'wwe', 'eee', 'eeq', 'wee', 'qwe'}
文字列が最大限に重なり合うように配置するアルゴリズムを作成するにはどうすればよいですか? それらを配置する1つの方法は次のとおりであることはすでに知っています。
qww
www
wwe
wee
eee
eeq
eqq
qqq
qqw
qwe
ただし、上記の結果は力ずくのソリューションで見つかりました。これを行うより賢い方法はありますか?