Das kann man noch weiter optimieren. So braucht man nicht immer wieder die erste for Schleife komplett durchlaufen
Delphi-Quellcode:
doppelt := false;
for i:=0 to High(arr)-1 do
begin
for j:=i+1 to High(arr) do
begin
if arr[i]=arr[j] then
begin
doppelt := true;
break;
end;
end;
if doppelt then
break;
end;
end;