面試題41 包圍區域

2022-09-05 03:21:09 字數 881 閱讀 2351

包圍區域是乙個典型的dfs的題目。大意是乙個二維陣列中存在字元'x'和'o',將被'x'包圍的'o'全部變為'x'。具體做法是從陣列的邊界上為'o'的起點開始dfs,將dfs過程中遇到的字元標記為'y'。然後遍歷二維陣列,將'y'的變為'o',其餘為'x'即可。

題目描述:

given a 2d board containing'x'and'o', capture all regions surrounded by'x'.

a region is captured by flipping all'o's into'x's in that surrounded region .

for example,

x x x x

x o o x

x x o x

x o x x

after running your function, the board should be:

x x x x

x x x x

x x x x

x o x x

1

class

solution else

11 dfs(x+1

,y,board);

12 dfs(x-1

,y,board);

13 dfs(x,y+1

,board);

14 dfs(x,y-1

,board);

1516}17

void solve(vectorchar>> &board) 25}

26}2728

for(int i=0;i)else35}

36}37}

38 };

面試題 閉包問題

function console.log y console.log x console.log y 輸出結果為 1 console.log x 輸出結果為 error,直接報錯 解析宣告變數 從右向左賦值,可分解為 y 1 var x y 可見 y 為全域性變數,x為閉包函式內的區域性變數,在co...

JS閉包 面試題

function setobj p p.name bb var p setobj p console.log p 程式的執行結果是aa 匿名函式的this一般是指向window var number 2 var obj var fn1 obj.fn1 console.log number 匿名函式呼...

js閉包面試題

請看以下 在輸出臺的輸出情況 答案是4400,4401,4399,4400 首先,test函式做了什麼?test在自己的函式作用域內建立乙個變數n,以及乙個函式add,這時add就作為乙個閉包,它可以在外部訪問到test內部的變數n,並對其進行加法。然後test返回乙個物件,這個物件有乙個n變數以及...