all tasks
This commit is contained in:
parent
b83f433714
commit
68f8f3e56b
14735 changed files with 178959 additions and 0 deletions
|
|
@ -0,0 +1,48 @@
|
|||
/* NetRexx */
|
||||
options replace format comments java crossref symbols nobinary
|
||||
|
||||
runSample(arg)
|
||||
return
|
||||
|
||||
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
method bead_sort(harry = Rexx[]) public static binary returns Rexx[]
|
||||
MIN_ = 'MIN'
|
||||
MAX_ = 'MAX'
|
||||
beads = Rexx 0
|
||||
beads[MIN_] = 0
|
||||
beads[MAX_] = 0
|
||||
|
||||
loop val over harry
|
||||
-- collect occurences of beads in indexed string indexed on value
|
||||
if val < beads[MIN_] then beads[MIN_] = val -- keep track of min value
|
||||
if val > beads[MAX_] then beads[MAX_] = val -- keep track of max value
|
||||
beads[val] = beads[val] + 1
|
||||
end val
|
||||
|
||||
harry_sorted = Rexx[harry.length]
|
||||
bi = 0
|
||||
loop xx = beads[MIN_] to beads[MAX_]
|
||||
-- extract beads in value order and insert in result array
|
||||
if beads[xx] == 0 then iterate xx
|
||||
loop for beads[xx]
|
||||
harry_sorted[bi] = xx
|
||||
bi = bi + 1
|
||||
end
|
||||
end xx
|
||||
|
||||
return harry_sorted
|
||||
|
||||
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
method runSample(arg) public static
|
||||
unsorted = [734, 3, 1, 24, 324, -1024, -666, -1, 0, 324, 32, 0, 432, 42, 3, 4, 1, 1]
|
||||
sorted = bead_sort(unsorted)
|
||||
say arrayToString(unsorted)
|
||||
say arrayToString(sorted)
|
||||
return
|
||||
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
method arrayToString(harry = Rexx[]) private static
|
||||
list = Rexx ''
|
||||
loop vv over harry
|
||||
list = list vv
|
||||
end vv
|
||||
return '['list.space(1, ',')']'
|
||||
Loading…
Add table
Add a link
Reference in a new issue