gpt4 book ai didi

java - 将数组中的对象与同一数组中的所有其他对象进行比较

转载 作者:行者123 更新时间:2023-12-02 05:53:58 27 4
gpt4 key购买 nike

我想将数组中的每个项目与所述数组中的每个其他项目进行比较。我现在正在这样做,是否可以,或者是否有更漂亮/更快/更合乎逻辑的方法?

for(int i=0; i<array1.size(); i++){
for(int j=0; j<array1.size(); j++){
if(i!=j){
..do stuff..
}
}
}

最佳答案

您进行了过多的比较,而且您还不必要地将每个项目与其自身进行了比较。你想要的是这个:

for(int i=0; i<array1.size(); i++){
for(int j=i + 1; j<array1.size(); j++){
if(arr[i] != arr[j]){
..do stuff..
}
}
}

(这是假设您的平等观念是 commutative,这通常是平等。)

如果您的数组中有 N 项,您的原始代码段将进行 N^2 次比较,而我的代码段将进行 N(N-1)/2 次比较。

关于java - 将数组中的对象与同一数组中的所有其他对象进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5182321/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com