Einzelnen Beitrag anzeigen

SProske

Registriert seit: 16. Feb 2015
Ort: Halle/S.
116 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#5

AW: "8 Puzzle" lösen mit A* Algo - "Neighbor function"

  Alt 21. Jun 2016, 13:40
Mit X - 3 > -1 kannst du prüfen, ob es einen oberen Nachbarn gibt, diesen erhälts du dann mit X - 3.
Mit X + 3 < 9 kannst du prüfen, ob es einen unteren Nachbarn gibt, diesen erhälts du dann mit X + 3.
Mit X mod 3 <> 0 kannst du prüfen, ob es einen linken Nachbarn gibt, diesen erhältst du mit X - 1.
Mit (X + 1) mod 3 <> 0 kannst du prüfen, ob es einen rechten Nachbarn gibt, diesen erhältst du mit X + 1.

Wobei X der Index deines Arrays ist und der berechnete Wert der Index des entsprechenden Nachbarn.
Sebastian

Geändert von SProske (21. Jun 2016 um 13:46 Uhr)
  Mit Zitat antworten Zitat