不完全确定如何命名,但我希望它有意义。我想向前迭代一个数组,然后向后迭代 x 次。一种选择是将数组的大小加倍,然后根据 mod 长度进行迭代,从而以循环方式进行迭代。假设一个非常大的序列,这可能会消耗大量不必要的内存。另一种选择是:
while(++i <= iterations) {
for(j = 0; j < arrayLength; j++){
//do something
}
for(j = arrayLength - 1; j >= 0; j--){
//do something
}
}
但这感觉很丑 - 我有点重复自己,只是切换 ++/--。我正在寻找一种优雅的编码方法。语言应该是 C 或 C++。为了非常清楚,我正在寻找一种不同的算法。谢谢。