- I = Lo + Size;
- J = Hi;
- while (I <= J) {
- while (I <= J && Compare (B + Lo, B + I) >= 0) {
- I += Size;
- }
- while (I <= J && Compare (B + Lo, B + J) < 0) {
- J -= Size;
- }
- if (I <= J) {
- _swap (B + I, B + J, Size);
- I += Size;
- J -= Size;
- }
- }
- if (J != Lo) {
- _swap (B + J, B + Lo, Size);
- }
- if (((unsigned) J) * 2 > (Hi + Lo)) {
- QuickSort (Base, J + Size, Hi, Size, Compare);
- Hi = J - Size;
- } else {
- QuickSort (Base, Lo, J - Size, Size, Compare);
- Lo = J + Size;
- }
+ I = Lo + Size;
+ J = Hi;
+ while (I <= J) {
+ while (I <= J && Compare (Base + Lo, Base + I) >= 0) {
+ I += Size;
+ }
+ while (I <= J && Compare (Base + Lo, Base + J) < 0) {
+ J -= Size;
+ }
+ if (I <= J) {
+ _swap (Base + I, Base + J, Size);
+ I += Size;
+ J -= Size;
+ }
+ }
+ if (J != Lo) {
+ _swap (Base + J, Base + Lo, Size);
+ }
+ if (((unsigned) J) * 2 > (Hi + Lo)) {
+ QuickSort (Base, J + Size, Hi, Size, Compare);
+ Hi = J - Size;
+ } else {
+ QuickSort (Base, Lo, J - Size, Size, Compare);
+ Lo = J + Size;
+ }