#!/usr/bin/perl use strict; my (@out,$ref) = undef; #generating some rand data for(0..100){push @out,int (rand(300))+1;} #Take vector ref $ref = \@out; sortQ(0,$#out,$ref); #Qsort subr... sub sortQ{ my($s,$e,$dst)=@_; my$m=$s-1; for($s..$e-1){ if($dst->[$_] < $dst->[$e]){ $m++; ($dst->[$m],$dst->[$_])=($dst->[$_],$dst->[$m]); } } ++$m; ($dst->[$m],$dst->[$e])=($dst->[$e],$dst->[$m]); if($s<$m-1){sortQ($s,$m-1,$dst);} if($m+1<$e){sortQ($m+1,$e,$dst);} }