Además se hace notar que el algoritmo es O(|Live set|) en espacio aunque
sea iterativo.
v = gray_set.pop()
black_set.add(v)
for (src, dst) in v.edges
- if v in white_set
- white_set.remove(v)
- gray_set.add(v)
-
-Es simple notar que este algoritmo es naturalmente no recursivo, lo que de por
-sí ya presenta una ventaja sobre el marcado *bicolor*.
+ if dst in white_set
+ white_set.remove(dst)
+ gray_set.add(dst)
+
+Si bien este algoritmo no es recursivo, tiene un requerimiento de espacio
+:math:`O(\lvert Live \thickspace set \rvert)`. Un ejemplo donde se aprecia
+esto a simple vista es cuando el *live set* resulta una lista simplemente
+enlazada, en cuyo caso el :math:`gray_set` deberá almacenar todos los nodos
+del *live set*.