我正在实现Chessboard
类来代表棋盘。我可以在棋盘上实现转换(反射和旋转)。
可能的转换包括:
的组合 1. Vertical Reflection
2. Horizontal Reflection
3. Diagonal Reflection
因此,我们对棋盘进行了 8 可能的转换。
棋盘上有 64 方块,编号为[0..63]。
因此,表示转换后的总结果值为8 * 64(转换数量* Chessboard_Size)。
使用数组表示 transformed_board 有两种基本方法:
One-Dimensional Array with transformed_board[8*64]
Two-Dimensional Array with transformed_board[8][64]
问题:
Which approach is better?
What are the pros and cons of each approach?
How will effect the performance with respect to time factor?
答案 0 :(得分:1)
两者的内存布局相同,因此实际上并没有任何“真正的”差异。如果您是否希望编译器为您进行偏移计算,那么只需要更好地使用您喜欢的语法。