FC2ブログ

# 奇偶転置ソート Odd-even Transposition Sort
# 引数 値 (\@Price)
# 戻り値 奇偶転置ソート (@OddEvenTranspositionSort)
sub ODDEVENTRANSPOSITIONSORT{
my ($Price) = @_;
my @OddEvenTranspositionSort = @$Price;
my $Flag = 1;
my $Count = @$Price - 1;

# 配列数の確認
if($Count <= 0){
return 0;
}

# 昇順ソート
while($Flag != 0){
$Flag = 0;

# 偶数 奇数
for(my $i = 0; $i < $Count; $i += 2){
if($OddEvenTranspositionSort[$i] > $OddEvenTranspositionSort[$i + 1]){
# 奇偶転置ソート Odd-even Transposition Sort
($OddEvenTranspositionSort[$i], $OddEvenTranspositionSort[$i + 1]) = ($OddEvenTranspositionSort[$i + 1], $OddEvenTranspositionSort[$i]);
$Flag = 1;
}
}

# 奇数 偶数
for(my $i = 1; $i < $Count; $i += 2){
if($OddEvenTranspositionSort[$i] > $OddEvenTranspositionSort[$i + 1]){
# 奇偶転置ソート Odd-even Transposition Sort
($OddEvenTranspositionSort[$i], $OddEvenTranspositionSort[$i + 1]) = ($OddEvenTranspositionSort[$i + 1], $OddEvenTranspositionSort[$i]);
$Flag = 1;
}
}
}

return @OddEvenTranspositionSort;
}


参考URL
奇偶転置ソート - Wikipedia
オンライン コンパイラ/インタプリタ
テクニカル分析
プロフィール

Author:雨宮
Firefoxを使用しているので気づかなかったけど、IE6でソースコードを上手くコピーできない

5/3
携帯用ならIE6でもソースコードをコピーできる
携帯用

検索フォーム


あわせて読みたいブログパーツ
一寸先は闇 RSS