695. Max Area of Island

題目地址:https://leetcode.com/problems/max-area-of-island/description/
大意:這題跟200題很想,200題是求“島”的個(gè)數(shù),這一題是求“島”的最大面積??梢詤⒖?00題(http://www.itdecent.cn/p/4da701d8b5fa)

思路:
同樣的,用DFS,每次遍歷的時(shí)候比較一下當(dāng)前面積和最大面積的,如果當(dāng)前面積大,就用當(dāng)前面積取代最大面積。重點(diǎn)還是DFS方法。

# 695. Max Area of Island

class Solution:
    area = 0
    max = 0
    def maxAreaOfIsland(self, grid):
        """
        :type grid: List[List[str]]
        :rtype: int
        """
        m = len(grid)
        if m == 0:
            return 0
        n = len(grid[0])
        for y in range(m):
            for x in range(n):
                self.area = 0
                if grid[y][x] == 1:
                    self.__dfs(grid, x, y, n, m)
        return self.max


    def __dfs(self,grid,x,y,n,m):
        if x<0 or y<0 or x >= n or y>=m or grid[y][x] == 0:
            return
        grid[y][x] = 0
        self.area = self.area +1
        self.__dfs(grid, x + 1, y, n, m)
        self.__dfs(grid, x - 1, y, n, m)
        self.__dfs(grid, x, y + 1, n, m)
        self.__dfs(grid, x, y - 1, n, m)
        if self.area > self.max:
            self.max = self.area




所有題目解題方法和答案代碼地址:https://github.com/fredfeng0326/LeetCode
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容