in reply to Re: Re: Re: Re: Re: sort array by value in it
in thread sort array by value in it
Hi L~R. Im just curious about one part of your solution:
for ( sort { $data[$a]->[2] <=> $data[$b]->[2] } 0 .. $#data ) { print join "\t" , @{ $data[$_] }; print "\n"; }
Why did you code it this way I wonder? It seems odd that you are actually sorting a list of indexes and not the elements themselves. Theres no speed gain, in fact theres a loss in that each element requires two levels of dereferencing, and you have the added memory hit of constructing a list of indexes. Im really curious if there was any reason why you didnt just say
print join("\t",@$_),"\n" for sort { $a->[2] <=> $b->[2] } @data;
or possibly:
print join "\n",map { join "\t",@$_ } sort { $a->[2] <=>$b->[2] } @dat +a;
First they ignore you, then they laugh at you, then they fight you, then you win.
-- Gandhi
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re^6: sort array by value in it
by Limbic~Region (Chancellor) on May 04, 2004 at 20:33 UTC | |
by demerphq (Chancellor) on May 05, 2004 at 07:15 UTC |