V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
coolair
V2EX  ›  问与答

一个算法问题,大家来看看咯!

  •  
  •   coolair · May 29, 2016 · 1883 views
    This topic created in 3622 days ago, the information mentioned may be changed or developed.
    0000000
    0111000
    1001000
    0111000
    1001000
    1001000
    1111100
    如何计算被 1 包裹的 0 的个数?边缘不算
    7 replies    2016-05-30 03:55:58 +08:00
    messyidea
        1
    messyidea  
       May 29, 2016 via Android
    对在边缘的每个 0 进行 dfs 啊。能访问到的 0 都标记。访问不到的那些就是被 1 包裹的
    fcicq
        2
    fcicq  
       May 29, 2016
    典型 flood fill 问题
    binux
        3
    binux  
       May 29, 2016 via Android
    扫一边不就出来了? O(n)了你还要怎样
    zhunimagebice
        4
    zhunimagebice  
       May 29, 2016 via Android
    1 楼正解
    hxndg
        5
    hxndg  
       May 29, 2016
    @messyidea 没听懂。。。能再解释么?
    messyidea
        6
    messyidea  
       May 29, 2016   ❤️ 1
    @hxndg 你可以先去了解一下深度优先搜索,对边缘每个 0 进行深度优先搜索,这样搜到的点就一定没有被 1 包含,因为能通过很多 0 走到边界上。
    jedihy
        7
    jedihy  
       May 30, 2016 via iPhone   ❤️ 1
    Number of islands leetcode 原题 dfs 或者 bfs ,本质就是穷举
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   4304 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 39ms · UTC 04:05 · PVG 12:05 · LAX 21:05 · JFK 00:05
    ♥ Do have faith in what you're doing.