Sorting algorithms/Gnome sort: Difference between revisions
Content added Content deleted
m (→{{header|REXX}}: fixed a typo.) |
|||
Line 739: | Line 739: | ||
Sorted: |
Sorted: |
||
-7 -10 0 1 7 25 99 |
-7 -10 0 1 7 25 99 |
||
</pre> |
|||
=={{header|Elena}}== |
|||
ELENA 3.2.1 : |
|||
<lang elena>import extensions. |
|||
import system'routines. |
|||
extension $op |
|||
{ |
|||
gnomeSort |
|||
[ |
|||
var list := self clone. |
|||
int i := 1. |
|||
int j := 2. |
|||
while (i < list length) |
|||
[ |
|||
if (list[i-1]<=list[i]) |
|||
[ |
|||
i := j. |
|||
j += 1 |
|||
]; |
|||
[ |
|||
list exchange(i-1,i). |
|||
i -= 1. |
|||
if (i==0) |
|||
[ |
|||
i := 1. |
|||
j := 2 |
|||
] |
|||
] |
|||
]. |
|||
^ list |
|||
] |
|||
} |
|||
program = |
|||
[ |
|||
var list := (3, 9, 4, 6, 8, 1, 7, 2, 5). |
|||
console printLine("before:", list). |
|||
console printLine("after :", list gnomeSort). |
|||
].</lang> |
|||
{{out}} |
|||
<pre> |
|||
before:3,9,4,6,8,1,7,2,5 |
|||
after :1,2,3,4,5,6,7,8,9 |
|||
</pre> |
</pre> |
||