給定乙個二維的矩陣,包含'x'
和'o'
(字母 o)。
找到所有被'x'
圍繞的區域,並將這些區域裡所有的'o'
用'x'
填充。
示例:
x x x x執行你的函式後,矩陣變為:x o o x
x x o x
x o x x
x x x x解釋:x x x x
x x x x
x o x x
被圍繞的區間不會存在於邊界上,換句話說,任何邊界上的'o'
都不會被填充為'x'
。 任何不在邊界上,或不與邊界上的'o'
相連的'o'
最終都會被填充為'x'
。如果兩個元素在水平或垂直方向相鄰,則稱它們是「相連」的。
此題先檢查二維矩陣最外側的一圈邊界,當遇到字元'o'時,呼叫dfs函式,並在dfs函式中先將該位置的字元置為'$',然後判斷如果上下左右有字元'o'的話,呼叫dfs函式繼續處理。這個dfs函式的遞迴基是當上下左右都沒有'o'時,返回。如此進行處理完之後,此時二維矩陣上剩下的字元'o'就是被'x'包圍的了。然後再遍歷一次二維矩陣,然後當遇到'o'時,把它替換成'x';當遇到'$'時,把它替換為'o'。
class solution
}}
for(int i = 0; i < board.size(); i++)}}
void dfs(int i, int j, vector>& board)
};
LeetCode130 被圍繞的區域
給定乙個二維的矩陣,包含 x 和 o 字母 o 找到所有被 x 圍繞的區域,並將這些區域裡所有的 o 用 x 填充。示例 x x x x x o o x x x o x x o x x執行你的函式後,矩陣變為 x x x x x x x x x x x x x o x x解釋 被圍繞的區間不會存在於...
Leetcode130 被圍繞的區域
給定乙個二維的矩陣,包含 x 和 o 字母 o 找到所有被 x 圍繞的區域,並將這些區域裡所有的 o 用 x 填充。示例 x x x x x o o x x x o x x o x x執行你的函式後,矩陣變為 x x x x x x x x x x x x x o x x解釋 被圍繞的區間不會存在於...
leetcode 130被圍繞的區域
給定乙個二維的矩陣,包含 x 和 o 字母 o 找到所有被 x 圍繞的區域,並將這些區域裡所有的 o 用 x 填充。示例 x x x x x o o x x x o x x o x x執行你的函式後,矩陣變為 x x x x x x x x x x x x x o x x解釋 被圍繞的區間不會存在於...