Just another update
This commit is contained in:
parent
a25938f123
commit
00a190b0a6
6591 changed files with 94363 additions and 23227 deletions
|
|
@ -1,22 +1,22 @@
|
|||
import std.stdio, std.algorithm;
|
||||
|
||||
void combSort(T)(T[] input) {
|
||||
void combSort(T)(T[] input) pure nothrow @safe @nogc {
|
||||
int gap = input.length;
|
||||
bool swaps = true;
|
||||
|
||||
while (gap > 1 || swaps) {
|
||||
gap = max(1, cast(int)(gap / 1.2473));
|
||||
swaps = false;
|
||||
foreach (i; 0 .. input.length - gap)
|
||||
foreach (immutable i; 0 .. input.length - gap)
|
||||
if (input[i] > input[i + gap]) {
|
||||
swap(input[i], input[i + gap]);
|
||||
input[i].swap(input[i + gap]);
|
||||
swaps = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void main() {
|
||||
auto array = [28, 44, 46, 24, 19, 2, 17, 11, 25, 4];
|
||||
combSort(array);
|
||||
writeln(array);
|
||||
auto data = [28, 44, 46, 24, 19, 2, 17, 11, 25, 4];
|
||||
data.combSort;
|
||||
data.writeln;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue