我有一项任务要求编制game of life。
我在计算下一代时遇到困难
问题是:
假设我在这里有这个矩阵M4x4:
(dots =死; + =活着)
。 +。 。
。 +。 +
+。 。 。
。 。 +。
M的邻居是相等的矩阵。
所以M(0,0)的邻居是(0,1)(1,1)(1,0)(1,3)(0,3)(3,3)(3,0)和(3, 1)。
我怎么写呢?
我应该创建一个6x6矩阵,我把这些值?或者java有一些方法可以更好地解决问题?
感谢。
答案 0 :(得分:0)
创建规范化方法
int normalize(int i, int max){
if(i==-1) return max;
if(i==max+1) return 0;
return i;
}
和邻居将
int x, y; current
for(int i = -1; i<=1; i++) {
for(int i = -1; i<=1; i++) {
if(i==0 && j==0) continue;
print(normalize(x+i, maxX), normalize(y+j, maxY);
}
}