Algorithm &引用;至于;循环所有可能的组合,无需重复
我有一个值表,我需要比较所有值。问题是,我不想两次比较相同的值(例如,循环比较值1-2、1-3、2-1和2-1与1-2相同)。我在一个循环中写了一个循环,如下所示:Algorithm &引用;至于;循环所有可能的组合,无需重复,algorithm,loops,combinations,variations,Algorithm,Loops,Combinations,Variations,我有一个值表,我需要比较所有值。问题是,我不想两次比较相同的值(例如,循环比较值1-2、1-3、2-1和2-1与1-2相同)。我在一个循环中写了一个循环,如下所示: for (int i = 0; i < numberOfSets; i++) { for (int j = 1; j < numberOfSets; j++) { //compare element i and j here } } for(int i=0;i
for (int i = 0; i < numberOfSets; i++) {
for (int j = 1; j < numberOfSets; j++) {
//compare element i and j here
}
}
for(int i=0;i
但是如何修改此循环以跳过重复?到目前为止,我尝试的是在I==j时增加j:
for (int i = 0; i < numberOfSets; i++) {
for (int j = 1; j < numberOfSets; j++) {
if(i == j) {
j++;
} else {
//compare element i and j
}
}
}
for(int i=0;i
但它似乎不能正常工作。有没有更好的方法来循环我想要的方式 只需使用
j=i+1
启动内部循环即可
for (int i = 0; i < numberOfSets; i++) {
for (int j = i + 1; j < numberOfSets; j++) {
// do stuff
}
}
for(int i=0;i
只需使用j=i+1
启动内部循环即可
for (int i = 0; i < numberOfSets; i++) {
for (int j = i + 1; j < numberOfSets; j++) {
// do stuff
}
}
for(int i=0;i
for(int i=0;i
内部循环跳过外部循环中包含的元素(int i=0;i内环跳过外环Start
j
ati
中包含的元素,而不是0。从i+1Startj
ati
开始内环,而不是0。从i+1I开始内环,我不知道为什么我不能解决这个问题。谢谢。我不知道为什么我没能弄明白。非常感谢。