下面程序片段主要体现的算法思想是( )。

 void dfs(int x, int y) {   vis[x][y] = true;   for (int k = 0; k < 4; k++) {      int nx = x + dx[k], ny = y + dy[k];      if (inside(nx, ny) && a[nx][ny] == 1 && !vis[nx][ny])         dfs(nx, ny);   } }
填写答案