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

Finding neighbors of elements of a cyclic array without using mod

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

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

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

  1. 过早优化?我怀疑 mod 会是你的瓶颈。
  2. 只需制作一个 table(使用 table 扩展名)将每个项目映射到它的 "neighbors"。