数组中的每一项与同一数组中的每一项

本文关键字:一项 数组 | 更新日期: 2023-09-27 18:04:00

我有一个项目数组,我想做的是某种循环,我将使用该数组中的每个对象,并对该数组中其他每个对象运行一个测试函数。

我不想使用两个相同的对象两次,这意味着如果A和B被检查,B和A不会被检查。

假设我有一个数组A B C D现在我要做的是

B

C

D

B C

B D

C D

这样就不会有两个相同的元素被打印两次

数组中的每一项与同一数组中的每一项

这是一个简单的嵌套循环:

int[] myArray = new int[1000];
for (int x = 0; x < myArray.Length; ++x)
{
    for (int y = x+1; y < myArray.Length; ++y)
    {
        // do something with x and y
    }
}

您应该明白,对于大型数组,这可能需要很长时间。组合的个数是n*(n-1)/2。因此,如果你的数组包含1000个项目,你将有近50万个组合需要检查。