Sorting algorithms/Gnome sort: Difference between revisions
Content added Content deleted
m (→version 1: added whitespace.) |
|||
Line 2,939: | Line 2,939: | ||
if @.p<<=@.k then do; k= j; iterate; end /*order is OK so far. */ |
if @.p<<=@.k then do; k= j; iterate; end /*order is OK so far. */ |
||
_= @.p; @.p= @.k; @.k= _ /*swap two @ entries. */ |
_= @.p; @.p= @.k; @.k= _ /*swap two @ entries. */ |
||
k= k-1; |
k= k - 1; if k==1 then k= j; else j= j-1 /*test for 1st index. */ |
||
end /*j*/; return |
end /*j*/; return |
||
/*──────────────────────────────────────────────────────────────────────────────────────*/ |
/*──────────────────────────────────────────────────────────────────────────────────────*/ |
||
show: do j=1 for #; say ' element' right(j, w) arg(1)":" @.j; end; return</lang> |
show: do j=1 for #; say ' element' right(j, w) arg(1)":" @.j; end; return</lang> |