Benni: Prioritäten vergeben nach Werten

Beitrag lesen

Hallo!
Ich bin gerade dabei, einen Backtrackingalgorithmus zu schreiben und dazu will ich für 4 Richtungen Prioriäteten bilden. Also die Richtung mit der höchsten Priorität wird als erstes versucht.
Dazu bilde ich eine Differenz zwischen den Zielkoordinaten und den momentanen Koordinaten mit folgendem Code:

---------------------------------------
  $difference[up] = $y_now - $y_goal;
  $difference[down] = $y_goal - $y_now;
  $difference[left] = $x_now - $x_goal;
  $difference[right] = $x_goal - $x_now;
---------------------------------------

Nun soll die größte Priorität dorthin, wo der Wer der Differenz am größten ist. Die Priorität soll mit den Zahlen 1, 2, 3 und 4 abgespeichert werden in $priority[up/down/right/left].
Ich wüsste zwar, wie man das ganze realisiert mit weiß ich nicht wie vielen If - Überprüfungen, aber irgendwie muss es dafür doch einen besseren Weg geben?

MfG,
Benni