Реализации алгоритмов/Сортировка/Шелла: различия между версиями

Содержимое удалено Содержимое добавлено
Добавил ещё вариант пёрла 5
Строка 344:
</source>
 
== [[w:Perl_v2|Perl (вариант 2)|Perl_v2]] ==
<source lang="perl">
use feature 'say';
 
my @a = (qw{5, 3, 7, 9, 2, 1, 6, 5, 3, 7, 9, 3, 4)};
say "@a - initial";
 
for(my $k = int($#a / 2); $k > 0; $k = int($k / 2)){
for my $i (0..($#a - $k)){
for(my $j = $i; $j >= 0 && $a[$j] > $a[$j + $k]; --$j){
($a[$j + $k], $a[$j]) = ($a[$j], $a[$j + $k]);
say "@a";
}
}
}
}
</source>