【发布时间】:2011-05-20 08:15:30
【问题描述】:
这基本上是一个副本:
How to split a string into words. Ex: "stringintowords" -> "String Into Words"?
neverthelees,我在使用一个函数,例如:public int Word(x) {code},其中对于字符串 x,它将返回一个整数(+ve 或 -ve),并且该整数将表明它的好坏分区是针对特定单词的。我应该返回给出最大数量的组合。
为此我想到的是创建一个 table(i,j) ,其中 i 和 j 具有单词的长度,并以 tern 填写表格:
for i = 1 to n
for j=i to n do
word(subset of x i to j)
并填写表格,但是,我到底如何才能检索到最佳解决方案(以递归方式?)
任何帮助表示赞赏。
编辑:最佳路径是 word(x) 函数总和最高的路径,即如果我们有
路径 (1,3)=10 , (3,6)=20, (6,7)=1 和
路径 (1,1)=0 , (2,5)=12, (5,7)=-1
那么第一条路径的总和 > 2nd
EDIT2:我希望每个人都知道,经过长时间的工作,我已经回答了这个问题,没关系没有得到解决方案,我想自己得到它总是最好的:P
干杯!:)
【问题讨论】:
-
我认为,您需要获取总字符串长度并为第一个字母运行 for 循环,前两个字母作为第二个循环,前三个字母作为第三个循环..等等...通过比较使用数据库英语词典...直到您到达循环的结尾或字符串的结尾。
-
errr 否,因为我必须为每个单独的分区(我认为)计算一个 Word(x),因此树被划分为 etree 或 thetree 或 th et ree 或树,或thetree ,必须通过调用 word() 方法填写此表中的每个条目。然后我必须以某种方式找到通过该表的最佳路径.. 编辑:最佳路径是 word(x) 函数总和最高的路径。即如果我们有一个路径(1,3)=10 , (3,6)=20, (6,7)=1 和一个路径 (1,1)=0 , (2,5)=12, ( 5,7)=-1 然后第一条路径的总和 > 2nd
标签: partitioning dynamic-programming