「アルゴリズムとデータ構造」のRuby版。
バブルソート
# -*- coding: cp932 -*-
# データの件数
N = 10
def bubbleSort()
flag = true
# 1度も並べ替えをせずに見終わったら終了
while flag
flag = false
for i in (0..N - 2)
# 左右の並びがおかしければ
if @sort[i] > @sort[i + 1]
flag = true
j = @sort[i]
@sort[i] = @sort[i + 1]
@sort[i + 1] = j
end
end
end
end
@sort = []
printf("ソート準備:\n")
for i in (0..N - 1)
# 配列にランダムな値を格納
@sort[i] = rand(1000)
printf("%d ", @sort[i])
end
printf("\nソート開始:\n")
bubbleSort()
printf("\nソート終了:\n")
for i in (0..N - 1)
printf("%d ", @sort[i])
end
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。