Falls nicht sortiert werden soll/muß
Delphi-Quellcode:
j := 0;
for i := 0
to High(MyArray)
do begin
k := High(MyArray);
while k > i
do
if MyArray[i] = MyArray[k]
then break
else Dec(k);
if k <> i
then Continue;
MyArray[j] := MyArray[k];
Inc(j);
end;
SetLength(MyArray, j);
Insgesamt isses eh etwas besser, wenn man nicht ständig das Array (Länge/Speicherverwaltung) ändert.
[add]
meines ist dann wohl irgendwas zwischen O(n^2) und O(n), aber dafür entfällt das vorhergehende Sortieren, welches auch irgendwas über O(n) ist
meines: O(n)..O(n^2)
alzaimar: O(n) + O(n)..O(n^2)
Corpsman: O(n^2) + O(n)..O(n^2)
(die Zeit für eure vielen SetLength hab ich ignoriert)