September Morn Update

This commit is contained in:
Ingy döt Net 2019-09-12 10:33:56 -07:00
parent 4e2d22a71d
commit aac6731f2c
6856 changed files with 141342 additions and 21127 deletions

View file

@ -1,31 +1,31 @@
import extensions.
import system'routines.
import extensions;
import system'routines;
extension $op
extension op
{
stoogeSort
= self stoogeSort(0, self length - 1).
stoogeSort()
= self.stoogeSort(0, self.Length - 1);
stoogeSort(IntNumber i, IntNumber j)
[
{
if(self[j]<self[i])
[
self exchange(i,j)
].
{
self.exchange(i,j)
};
if (j - i > 1)
[
int t := (j - i + 1) / 3.
self stoogeSort(i,j-t).
self stoogeSort(i+t,j).
self stoogeSort(i,j-t).
]
]
{
int t := (j - i + 1) / 3;
self.stoogeSort(i,j-t);
self.stoogeSort(i+t,j);
self.stoogeSort(i,j-t)
}
}
}
program =
[
var list := 0 to:15 repeat(:n)(randomGenerator eval(20)); toArray.
public program()
{
var list := new Range(0, 15).selectBy:(n => randomGenerator.eval(20)).toArray();
console printLine("before:", list).
console printLine("after:", list stoogeSort).
].
console.printLine("before:", list.asEnumerable());
console.printLine("after:", list.stoogeSort().asEnumerable())
}