在不使用mod的情况下查找循环阵列元素的邻居



我的数组具有六个具有循环特性的元素,即第一个元素的邻居是第二个元素和第六个元素,同样,第6个元素的邻居是第5个元素和第5个元素。第一元素。现在,一种访问它们的简单方法是:

array:item array ( (a + 5) mod 6 ) and array:item array ( (a + 1) mod 6)

其中" a"是我们感兴趣的数组元素。考虑到" mod'operator在计算上是最昂贵的事实,我如何在不使用" mod"运算符的情况下实现数组的循环性质?

  1. 过早优化?我怀疑 mod会是你的瓶脖子。
  2. 只需制作一个表(使用table扩展)将每个项目映射到其"邻居"。

最新更新