Sorting algorithms/Insertion sort: Difference between revisions

m
Line 939:
end</lang>
=={{header|Elena}}==
ELENA 3.4.x :
<lang elena>import extensions.;
extension op
{
insertionSort()
= self .clone; ().insertionSort(0, self length.Length - 1).;
insertionSort(IntNumberint first, IntNumberint last)
[{
for(int i := first + 1), i <= to:last, do(:i += 1)
[{
var entry := self[i].;
int j := i.;
while ((j > first) &&( self[j - 1] > entry))
[{
self[j] := self[j - 1].;
j -= 1
].};
self[j] := entry
]}
]}
}
public program()
{
[
var list := (new int[]{3, 9, 4, 6, 8, 1, 7, 2, 5).};
console .printLine("before:", list).asEnumerable());
console .printLine("after :", list .insertionSort().asEnumerable());
]}</lang>
{{out}}
<pre>
Anonymous user