Hola, no se mucho de programación, pero me gustaría intentar una "Búsqueda en expansión", para citar un ejemplo diría que me gustaría recorrer una matriz desde un punto inicial como si se tratara de la expansión del agua en minecraft. Lo logre con unos for's pero me pregunto si sabrán un método mejor. (Programo en C++)
(Ejemplo de lo que quiero hacer)
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 1 0 0 0 0 0 0 0 0
0 0 0 0 0 1 A 1 0 0 0 0 0 0 0
0 0 0 0 0 0 1 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 B 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 2 0 0 0 0 0 0 0 0
0 0 0 0 0 2 1 2 0 0 0 0 0 0 0
0 0 0 0 2 1 A 1 2 0 0 0 0 0 0
0 0 0 0 0 2 1 2 0 0 0 0 0 0 0
0 0 0 0 0 0 2 0 0 B 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 3 2 3 0 0 0 0 0 0 0
0 0 0 0 3 2 1 2 3 0 0 0 0 0 0
0 0 0 3 2 1 A 1 2 3 0 0 0 0 0
0 0 0 0 3 2 1 2 3 0 0 0 0 0 0
0 0 0 0 0 3 2 3 0 B 0 0 0 0 0
0 0 0 0 0 0 3 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 4 3 2 3 4 0 0 0 0 0 0
0 0 0 4 3 2 1 2 3 4 0 0 0 0 0
0 0 4 3 2 1 A 1 2 3 4 0 0 0 0
0 0 0 4 3 2 1 2 3 4 0 0 0 0 0
0 0 0 0 4 3 2 3 4 B 0 0 0 0 0
0 0 0 0 0 4 3 4 0 0 0 0 0 0 0
0 0 0 0 0 0 4 0 0 0 0 0 0 0 0