有什么方法可以在不使用数组的情况下从字符串中删除重复的单词?
例如,我有这句话“ this is java programming program ”,输出必须是“ this java programming ”。
我看到类似的删除重复问题,但所有问题都在使用数组。
下面是更新的代码@Han
public class RemDup
{
public static void main ( String[] args )
{
String sentence = "this is java programming program progress";
int max_word_length = sentence.length()/2;
int min_word_length = 2;
while(max_word_length>=min_word_length)
{
int si = 0;
int ei = max_word_length;
while ( ei<sentence.length() )
{
int e=ei;
while ( e<sentence.length() )
{
int ind = sentence.indexOf ( sentence.substring ( si, ei ),e );
if ( ind!=-1 )
{
if(
sentence.substring(ind-1,ind).equals(" ")
&((ind+max_word_length)>=sentence.length()||
sentence.substring(ind+max_word_length,ind+max_word_length+1).equals(" "))
)
{
sentence = sentence.substring ( 0,ind ) +sentence.substring ( ind+max_word_length,sentence.length() );
}
e=ind+max_word_length;
}
else break;
}
si+=1;
ei+=1;
}
max_word_length--;
}
System.out.println(sentence);
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句