all tasks
This commit is contained in:
parent
b83f433714
commit
68f8f3e56b
14735 changed files with 178959 additions and 0 deletions
|
|
@ -0,0 +1,26 @@
|
|||
import std.stdio, std.algorithm;
|
||||
|
||||
void cocktailSort(Range)(Range data) {
|
||||
bool swapped = false;
|
||||
do {
|
||||
foreach (i; 0 .. data.length - 1)
|
||||
if (data[i] > data[i + 1]) {
|
||||
swap(data[i], data[i + 1]);
|
||||
swapped = true;
|
||||
}
|
||||
if (!swapped)
|
||||
break;
|
||||
swapped = false;
|
||||
foreach_reverse (i; 0 .. data.length - 1)
|
||||
if (data[i] > data[i + 1]) {
|
||||
swap(data[i], data[i + 1]);
|
||||
swapped = true;
|
||||
}
|
||||
} while(swapped);
|
||||
}
|
||||
|
||||
void main() {
|
||||
auto array = ["John", "Kate", "Zerg", "Alice", "Joe", "Jane"];
|
||||
cocktailSort(array);
|
||||
writeln(array);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue