假設我有一個大小爲NxN的二維數組A表示的大方形網格,並且一個點在其座標上被分配給一個網格。每個網格由八個相鄰的網格圍繞(想想鍵盤中的數字鍵盤,5號被1,2,3,4,6,7,8,9包圍)。檢查相鄰網格的最有效的方法
現在對於每個相鄰的網格我都會爲它做點什麼,但是數組中的某些元素可能沒有八個相鄰的網格。如果是在其中一個寄宿生中,那麼它只有五個鄰居(如2號只被1,3,4,5,6包圍),並且如果它在四個角落中的一個上,那麼它只被包圍三個鄰居。給定數組A的一個元素,如何以最有效的方式檢查其鄰居?我可以設置許多if語句來查看它的數組索引是大於0還是小於N-1,但是如何組合(嵌套)這些if語句以便需要最少的步數?
感謝
你知道編譯時的大小N嗎? – Daniel
「如何檢查它的鄰居」:你能更具體嗎? –