小编Eff*_*ury的帖子

最高的"有价值"回文

所以几个月前我正在接受编程采访,这个问题因为某些原因而惹恼了我.我能想到几种解决方案,但大多数解决方案效率极低.虽然我多年来一直在编程,但我目前正在大学攻读CS学位,所以我的参考点可能不完整.我希望有人可以提供一些可能的解决方案:

"给定一组字符串和相关的数字'值,'从这些字符串组装回文,其值(由用于创建它的字符串之和定义)是最高的."

可以提供多少个字符串没有限制,可能不会使用某些字符串.

示例:"asd" - 3"dsa" - 5"appa" - 1

结果将是"asdappadsa",值为9.

我的想法是尝试所有顺序中的所有字符串,然后从最低值的一个开始删除一个,但该解决方案是O(N!)并且我认为不行.

(首选语言是C和Java,但不管是什么工作)

编辑:澄清.提供的每个字符串只能使用一次,并且必须完全按照提供的方式使用,但您可以选择不使用回文中的任何字符串.您不能使用提供的字符串的子字符串,也不能反转字符串.

c java algorithm

7
推荐指数
1
解决办法
601
查看次数

标签 统计

algorithm ×1

c ×1

java ×1