【发布时间】:2021-07-16 09:32:01
【问题描述】:
List<String> a = new ArrayList<>();
a.add("test");
a.add("test2");
a.add("mark3");
a.add("testtest");
a.add("testapple");
a.add("test1apple");
a.add("markapple");
a.add("testmark");
a.add("test2");
a.add("mark3");
a.add("testapple1");
同样,列表的大小是 10000(可以超过 10000)。在这里我需要找到列表中存在的重复值(test2,mark3)以及差异 = 1 的值是什么(test,test2,testapple,test1apple,testapple1)
我需要显示如下内容
重复:test2,mark3
1 区别:test,test2,testapple,test1apple,testapple1
为此,我采用传统方式循环列表以获得如下结果
for(i=0;i<a.size();i++){
for(j=i+1;j<a.size();j++){
// logic
}
}
无论我做得正确还是有其他方法可以实现,因为如果我使用上述循环逻辑,我将面临性能问题
【问题讨论】:
-
test 和 testapple 会给出 '5' 的 diif 但我想要的是 diff = '1' 的值是什么?
-
@GhostCat
test和test2之间存在“1 个差异”。testapple和testapple1之间也有 1 个区别。 -
“test”和“text”有什么区别?
-
差异为 1 ('x')