Anonymous user
Sorting algorithms/Pancake sort: Difference between revisions
m
→{{header|REXX}}: added an optimization.
m (→{{header|REXX}}: changed whitespace and comments, simplified some code.) |
m (→{{header|REXX}}: added an optimization.) |
||
Line 3,137:
exit 0 /*stick a fork in it, we're all done. */
/*──────────────────────────────────────────────────────────────────────────────────────*/
panFlip: parse arg y; do i=1 for (y+1)%2; yi=y-i+1; _=@.i; @.i=@.yi; @.yi=_; end; return
show: do k=1 for #; say @element right(k,length(#)) arg(1)':' right(@.k,9); end; return
/*──────────────────────────────────────────────────────────────────────────────────────*/
Line 3,148 ⟶ 3,149:
bp=2 17 5 29 7 37 13 61 43 181 47 197 67 277 97 397 113 461 137 557 167 677 173 701,
797 1117 307 1237 1597 463 1861 467
$= bp fibs;
return /* [↑] populate the @. array with #s*/
/*──────────────────────────────────────────────────────────────────────────────────────*/
pancakeSort: procedure expose @.; parse arg n .; if inOrder(n) then return
do n=n by -1 for n-1
!= @.1; ?= 1; do j=2 to n;
!= @.j;
end /*j*/
call
end /*n*/; return</lang>
{{out|output|text= when using the internally generated numbers:}}
|