次に例を示します(黒いものを数えます):
入力:
出力:
5 4 // 5 groups (4 squares each)
1 1 // 1 group containing 1 square
今のところ、私は反復のための苦痛以上のものを考えることはできません。これらのグループを再帰的に取得することは可能でしょうか?ありがとう
最初は、各セルは「未訪問」です。
「未訪問」の黒いセルに出会うまで、セルを繰り返し処理します。その時点までにヒットした各白血球
黒いセルに当たったら、可能であればそれをすべての方向に「拡張」します(「塗りつぶし」と同様)。可能な限り展開し、訪問したすべてのセルを「訪問済み」としてマークします。それを行った後、感染した黒い細胞の数を数え、グループの大きさがわかります。グループを検出した後、次の「未訪問」の黒いセルに進みます。
4連結性の連結成分ラベリングにアルゴリズムを使用できます