[英]Searching more than one position in a Multidimensional array
我想知道如何在多維數組(2D)中一次將搜索范圍擴大到多個位置。 具體來說,我正在嘗試查看坐標(X,Y),但也要查看原始位置的上方,下方和側面。
例如)我正在尋找一個整數值“ 0”。 如果我搜索2D數組的任何給定行或列,則還需要在周圍位置搜索。
使用for循環在2D數組中搜索周圍環境:
for(int x=(x1-1); x<=(x1+1); x++) //Check on all 8 directions
for(int y=(y1-1); y<=(y1+1); y++)
if(x!=-1 && y!=-1 && x!=height && y!=width) //Check to ensure you are within bounds
//do whatever..
//e.g: if(array[x][y] == 0); count++;
x1
和y1
是周圍中心的坐標。
在if語句中,您可以添加更多檢查,例如檢查坐標x!=x1 && y!= y1
您可能會傾向於使用一系列8個if-else語句來檢查所有方向,但這不是必須的(而且容易出錯)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.