説明を受けた通りに実装したみた.
合っているのかよくわからない・・・.
最悪計算量,無限大ってどうなんでしょうね.
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 件のコメント:
コメントを投稿