Advertisement
Guest User

Untitled

a guest
Oct 18th, 2017
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.96 KB | None | 0 0
  1. Procedure qsort3(l, r: integer);
  2. Var
  3. i, j: integer;
  4. y, x: real;
  5. m: string;
  6. begin
  7. i := l;
  8. j := r;
  9. x := r2[l + random(r - l)];
  10. While i < j do
  11. begin
  12. While r2[i] > x do inc(i);
  13. While r2[j] < x do dec(j);
  14. if i <= j then
  15. begin
  16. if (r2[i] = r2[j]) then begin
  17. if (r1[i] < r1[j]) then begin
  18. m := s2[i];
  19. s2[i] := s2[j];
  20. s2[j] := m;
  21. y := r2[i];
  22. r2[i] := r2[j];
  23. r2[j] := y;
  24. y := r1[i];
  25. r1[i] := r1[j];
  26. r1[j] := y;
  27. end;
  28. end;
  29. m := s2[i];
  30. s2[i] := s2[j];
  31. s2[j] := m;
  32. y := r2[i];
  33. r2[i] := r2[j];
  34. r2[j] := y;
  35. y := r1[i];
  36. r1[i] := r1[j];
  37. r1[j] := y;
  38. inc(i);
  39. dec(j);
  40. end;
  41. end;
  42. if i < r then qsort3(i, r);
  43. if l < j then qsort3(l, j);
  44. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement