Einzelnen Beitrag anzeigen

Bjoerk

Registriert seit: 28. Feb 2011
Ort: Mannheim
1.384 Beiträge
 
Delphi 10.4 Sydney
 
#78

AW: Doppel schnell aus Lise löschen.

  Alt 11. Dez 2014, 12:51
Also, ich verabschiede mich mal an der Stelle hier und danke allen für die freundliche Unterstützung. Mit ca. 100.000 Punkten und ca. 30.000 Doppel bin ich mit #61 bei 100 ms.
Delphi-Quellcode:
    FLoatPoints.Clear;
    N := 30000;
    for I := 1 to N do
      FLoatPoints.AddXY(FloatRandom(0, 10000), FloatRandom(0, 10000));
    for I := 0 to FLoatPoints.Count div 2 do
      FLoatPoints.Insert(Random(FLoatPoints.Count), FloatPoints[Random(N)]);
    for I := 0 to FLoatPoints.Count div 2 do
      FLoatPoints.Insert(Random(FLoatPoints.Count), FloatPoint(FloatPoints[I].X + Eps, FloatPoints[I].Y));
    for I := 0 to FLoatPoints.Count div 2 do
      FLoatPoints.Insert(Random(FLoatPoints.Count), FloatPoint(FloatPoints[I].X, FloatPoints[I].Y + Eps));
    FLoatPoints.RemoveDoubles;
LG
Thomas
  Mit Zitat antworten Zitat