Étant donné une matrice booléenne , soit entrées représentent la mer et entrées représentent la terre. Définissez un îlot comme verticalement ou horizontalement (mais pas en diagonale) adjacent entrées.X 0 1 1
La question initiale était de compter le nombre d'îles dans une matrice donnée. L'auteur a décrit une solution récursive ( mémoire ).
Mais j'essayais en vain de trouver une solution de streaming (de gauche à droite, puis vers le bas à la ligne suivante) qui compte dynamiquement les îles avec ou ou mémoire (il n'y a pas de limite de complexité temporelle). Est-ce possible? Sinon, comment puis-je le prouver?O ( n ) O ( n + m )
Quelques exemples de sorties attendues pour certaines entrées de la count
fonction: