Dla 4 królowych na szachownicy o wymiarach 4 x 4, sekwencją są 4 pozycje (I, II, III i IV kolumna w wierszu), na których są umieszczone królowe. Zbiorem dla każdego wyboru jest 42 = 16 możliwych pól na szachownicy. Kryterium jest takie, że królowe nie mogą się wzajemnie szachować.
Postępując według algorytmu z powrotami robimy sobie takie oto drzewo przestrzeni stanów.
Fragment takiego drzewa
Jak to czytamy? Start to początek rozwiązywania naszego problemu, następnie wybieramy (korzystamy z wyszukiwania w głąb grafu, dla porządku jedziemy od lewej) gdzie stawiamy pierwszą królową, na polu (1,1), (1,2), (1,3) lub (1,4). Powiedzmy, że stawiamy na (1,1), przechodzimy więc do tego węzła i dostajemy kolejne możliwości; (2,1), (2,2), (2,3) i (2,4).
Pierwsza królowa na polu (1,1), złe ustawienie drugiej królowej
Od razu widać, że pola (2,1) i (2,2) sa szachowane przez nasza królową postawioną na (1,1), zatem nazwijmy te węzły węzłami nieobiecującymi i zignorujmy. Pozostały węzły (2,3) oraz (2,4), to zdecydowanie są dla nas węzły obiecujące. Zgodnie z naszym sposobem wybierania kolejnych węzłów przechodzimy do (2,3). Ale co to? W takiej konfiguracji, każde pole w trzecim rzędzie jest szachowane. Nie pozostaje nam nic jak uznać te węzły za nieobiecujące i spróbowac znowu przestawić królową w polu drugim.
Kontynuując prace tym tokiem skrócimy nasze drzewo do takiej formy:
Elegancko widać jak rozstawić królowe, aby się nie szachowały :)
Kolejne kroki algorytmu z powrotami