我尝试打印不重复的字符串,但没有得到正确的输出,在这里我公开了我的代码片段。
class Duplicatestring
{
public static void main(String [] args)
{
String word = "";
String[] ip ={"mani" ," manivannan","raghv ","mani"};
for(int i =0; i<ip.length; i++)
{
for(int j = i+1; j<=ip.length; j++)
{
if(ip[i].equals(ip[j])){
word = word+ip[i];
}
}
System.out.println(word);
}
}
}
还有一件事是我不想使用我的任务集合,请为此提供任何适当的解决方案。
示例:
Input -> {mani, manivanna,raghv, mani};
output -> {mani, manivanna,raghv}
最佳答案
如果您不想使用集合,那么我认为这是一项家庭作业,因此我不想为您提供完整的解决方案,但我会指导您。
您可以拥有原始数组大小的辅助数组。现在,您编写两个嵌套循环,对于每个单词,如果找到重复项,则将辅助数组标记为 1。
完成此过程后,您将在辅助数组中看到如下内容:
[0,0,0,1]
现在,您可以并行迭代数组,并仅在辅助数组中相应的索引为 0 时打印元素。
解决方案是 O(n2)。
关于java - 如何打印不重复的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21747310/