31 #ifndef ACE_SORTING_COMB_SORT_H
32 #define ACE_SORTING_COMB_SORT_H
36 namespace ace_sorting {
54 while (swapped || gap > 1) {
56 if (gap == 0) gap = 1;
61 for (i = 0, j = gap; j < n; i++, j++) {
62 if (data[i] > data[j]) {
63 swap(data[i], data[j]);
87 while (swapped || gap > 1) {
89 if (gap == 9 || gap == 10) {
91 }
else if (gap == 0) {
98 for (i = 0, j = gap; j < n; i++, j++) {
99 if (data[i] > data[j]) {
100 swap(data[i], data[j]);
129 template <
typename T>
134 while (swapped || gap > 1) {
136 if (gap == 0) gap = 1;
141 for (i = 0, j = gap; j < n; i++, j++) {
142 if (data[i] > data[j]) {
143 swap(data[i], data[j]);
161 template <
typename T>
166 while (swapped || gap > 1) {
168 if (gap == 9 || gap == 10) {
170 }
else if (gap == 0) {
177 for (i = 0, j = gap; j < n; i++, j++) {
178 if (data[i] > data[j]) {
179 swap(data[i], data[j]);