2016-11-26 102 views
0

假設我有一個2-d陣列在搜索從一索引陣列到當前索引

  array[0][0]=1; 
      array[0][1]=3; 
      array[1][0]=2; 
      array[1][1]=3; 
      array[2][0]=3; 
      array[2][1]=1; 

我只是想檢查array[1][0]「s的以前array[0][0]array[0][1] 值值和類似array[1][1]以前的array[0][0],array[0][1]array[1][0]

我該如何解決?

+0

我不明白你問做什麼。你能澄清這個問題嗎? –

+0

是的。 int array [0] [0] = 1; –

+0

我只想檢查當前索引值與二維數組的前一個索引值,直到我得到相同的值 –

回答

1

你可能是指這樣的事:

for (i = 0; i <= current_i, ++i) 
    for (j = 0; j <= current_j, ++j) 
     if (i == current_i && j == current_j) { 
      found = 0; 
     } else if (array[i][j] == array[current_i][current_j]){ 
      found = 1; 
      goto out_of_loops; 
     } 

out_of_loops: 
if (found) /* do something */ else /* do other things */ 
0

如果你只想以前的值,你可以試試這個,

for (i = 0; i <= max_row, ++i){ 
    for (j = 0; j <= max_col, ++j){ 
     if(array[i][j] == array[i-1][j]){ 
       puts("FOUND"); 
       goto END; 
     } 
     if(array[i][j] == array[i][j-1]){ 
       puts("FOUND"); 
       goto END; 
     } 
     if(array[i][j] == array[i-1][j-1]){ 
       puts("FOUND"); 
       goto END; 
     } 
    } 
} END: