説明を受けた通りに実装したみた.
合っているのかよくわからない・・・.
最悪計算量,無限大ってどうなんでしょうね.
Transcript clear. x := 10. box := Array new:x. 1 to:x do:[:v | box at:v put: (1 to: 100) atRandom]. box do:[:v |Transcript show:v; show:Character space. ]. Transcript cr. c := 1. counter := 1. [box size = counter] whileFalse:[ counter := 1. box := box shuffle. 2 to: box size do:[:i | ((box at: i -1) < (box at: i) ) ifTrue:[ counter := counter + 1] ]. c := c + 1. ]. box do:[:v |Transcript show:v; show:Character space. ]. Transcript cr;show:'loop counter='; show:c; cr.
ソートとよべるのか? これは,奇跡を待つだけのソートだと思う.
0 件のコメント:
コメントを投稿