1

所以我不确定我将如何解决这个问题,所以任何人都可以提出任何算法或方法来解决这个问题吗?

更具体地说,这个词不能由元素周期表中元素的字母组成,因为这意味着这个词总是可以组成的。我要问的是这个词是否可以通过附加元素的简短形式来组成。

另外,您建议的方法的运行时间是多少?

对不起,如果问题仍然太模糊。如果缺少详细信息,我将进行编辑。

4

2 回答 2

2

这相当于将字符串分割成 "words",其中您的 "words" 是元素周期表中的元素缩写。那篇文章对各种解决方案进行了很好的长篇文章。它基本上归结为一个动态编程问题,您试图使用元素作为片段来消耗目标字符串的一部分。

于 2013-03-23T03:17:24.523 回答
1

一个正则表达式就可以了。只需检查您的字符串是否匹配

/(H|He|Li|... all other elements ...)*/i

正则表达式可以编译为具有O(N)复杂性,N输入的长度在哪里(正则表达式的复杂性是多少?)。

于 2013-03-23T03:13:30.890 回答