小编Vim*_*aco的帖子

Perl中的QuickSort

我尝试在Perl中实现QuickSort,就像我在Python和Ruby中使用以下代码一样:

use strict;
use warnings;

sub sort {
    my ($lista, $p, $r) = @_;
    if ($p < $r) {
        my $q = &partition(\@$lista, $p, $r);
        &sort(\@$lista, $p, $q - 1);
        &sort(\@$lista, $q + 1, $r);
    }
}

sub partition {
    my ($lista, $p, $r) = @_;
    my $x = $$lista[$r];
    my $i = $p - 1;
    for (my $j = $p; $j < @$lista - 1; $j++) {
        if ($$lista[$j] <= $x) {
            $i++;
            ($$lista[$i], $$lista[$j]) = ($$lista[$j], $$lista[$i]);
        } …
Run Code Online (Sandbox Code Playgroud)

algorithm perl quicksort

3
推荐指数
1
解决办法
5049
查看次数

标签 统计

algorithm ×1

perl ×1

quicksort ×1