如何证明最短的公共超级字符串是NP-Hard

经过一些研究和许多youtube视频,我知道证明问题是 NP-Hard ;您需要将该问题简化为已知的NP-Hard问题,例如子集总和问题,暂停问题,满意度问题或旅行商问题。现在我的问题是最短的通用超级字符串

  • 输入:二进制字符串的有限集R = {r1,r2,...,rm}(0和1的序列);正 整数k。
  • 问题::是否存在长度不超过k的二进制字符串w,使得R中的每个字符串 是w的子串,即对于R中的每个r,w可分解为w = w0rw1,其中w0, w1是(可能是空的)二进制字符串?

在此链接中,它指出问题是NP-Hard(https://www.geeksforgeeks.org/shortest-superstring-problem/),此外,我正在使用此处所述的贪婪算法来解决问题。

因此,我需要选择减少到哪种NP-Hard算法以及减少它的方法方面的帮助。我不希望有一个完整的解决方案(即使会受到欢迎),只是指导就足够了。

minuteslove 回答:如何证明最短的公共超级字符串是NP-Hard

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2920177.html

大家都在问