0

虽然有loop0 1 2 3 4 5 0 1 2 3 ... 有两个方向,例如从数字 4 转发 4 5 0 1 2 3 ... 和向后 4 3 2 1 0 5 ... 。如果值类似于实际的 2 下一个 3 或实际的 5 下一个 0,则用于检测前向或后向的 if 算法的外观如何。

我正在寻找一个简单的是否可以检查

if (actual > next && ?jump from last/first?) { 
  forwarding
} else {
  backward
}

任何想法如何检测向前或向后?

4

1 回答 1

0

这是一种方法:

$forward = ($actual < $next);
if (abs($actual-$next) != 1) $forward = !$forward;

如果实际小于下一个,则假设它是向前的。然后检查实际下一个之间的差异- 如果它不是一个,那么你就在边界上,所以结果与你期望的相反。

于 2013-07-17T21:04:10.767 回答