在二维数组中查找邻居
是否有一种简单的方法来查找二维数组中某个元素的邻居(即,元素周围的八个元素)?缺少只是以不同的组合减去和增加索引,像这样:
array[i-1][i]array[i-1][i-1]
array[i][i-1]
array[i+1][i]
… 等等。
回答:
(伪代码)
row_limit = count(array);if(row_limit > 0){
column_limit = count(array[0]);
for(x = max(0, i-1); x <= min(i+1, row_limit); x++){
for(y = max(0, j-1); y <= min(j+1, column_limit); y++){
if(x != i || y != j){
print array[x][y];
}
}
}
}
当然,这几乎要花费原始硬编码解决方案的许多行,但是通过这一解决方案,您可以最大程度地扩展“邻居”(2-3个或更多单元格)
以上是 在二维数组中查找邻居 的全部内容, 来源链接: utcz.com/qa/403492.html