Wieso bei allen?
IMHO dürften doch die beiden auszutauschenden genügen, oder irre ich mich? Beispiel:
Code:
1 Erster DS
2 Zweiter DS
3 Dritter DS
4 Vierter DS
Wenn man nun z.B. 2 und 3 tauschen möchte, könnte das doch so funktionieren (erstes Update):
Code:
1 Erster DS
0 Zweiter DS //temporär auf 0 oder eine andere nicht existente Zahl
3 Dritter DS
4 Vierter DS
Zweites Update:
Code:
1 Erster DS
0 Zweiter DS
2 Dritter DS //alter Wert des "0"-DS
4 Vierter DS
Drittes Update:
Code:
1 Erster DS
3 Zweiter DS //alter Wert des anderen DS
2 Dritter DS
4 Vierter DS
In Reihenfolge dann:
Code:
1 Erster DS
2 Dritter DS
3 Zweiter DS
4 Vierter DS