10182

# Comparing the Iterative and Recursive Flood Fill Algorithms

This Demonstration compares the iterative and recursive Flood Fill algorithm. The recursive algorithm searches for a blank cell in four directions (north, west, south, east), then fills that cell, and continues to look for another blank cell in the same four directions. It will always search for north, west, south, east in that order. For example, if both west and south are available, it will fill the west cell. Finally, if all compass directions are filled, then it will go back to the previous cell it was at and start filling if there are any cell in the compass direction that are not filled. The iterative algorithm looks for a blank cell in two directions (south and north), fills the blank cell, and adds the blank cells that are to the west or east of it to a queue. Then while the queue is not empty, the step is repeated. The white cells represent blank cells, blue cells represent filled cells, and black cells represent obstacles.

### PERMANENT CITATION

 Share: Embed Interactive Demonstration New! Just copy and paste this snippet of JavaScript code into your website or blog to put the live Demonstration on your site. More details » Download Demonstration as CDF » Download Author Code »(preview ») Files require Wolfram CDF Player or Mathematica.

#### Related Topics

 RELATED RESOURCES
 The #1 tool for creating Demonstrations and anything technical. Explore anything with the first computational knowledge engine. The web's most extensive mathematics resource. An app for every course—right in the palm of your hand. Read our views on math,science, and technology. The format that makes Demonstrations (and any information) easy to share and interact with. Programs & resources for educators, schools & students. Join the initiative for modernizing math education. Walk through homework problems one step at a time, with hints to help along the way. Unlimited random practice problems and answers with built-in Step-by-step solutions. Practice online or make a printable study sheet. Knowledge-based programming for everyone.