Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

Re^2: Trying to make a string generated like google

by ultranerds (Hermit)
on Aug 10, 2009 at 14:01 UTC ( #787340=note: print w/replies, xml ) Need Help??

in reply to Re: Trying to make a string generated like google
in thread Trying to make a string generated like google


I'm trying to do something a bit more complex now:

my @sorted_phrases = sort { $b->{sort_number} <=> $a->{sort_number +}, $b->{count} <=> $a->{count} } values %$strings;

..instead of just:

my @sorted_phrases = sort { $b->{count} <=> $a->{count} } values %$strings;

Basically, what I need to do - is :

1) Sort by the value "count" as they were done before
2) If the 2nd array element has a value of "0" for "count", then it will order them by sort_number thereafter.

I've tried all kinda things - including this messy bit of code - but I can't seem to get it working :(

my @sorted_phrases_2; # my $i = 0; foreach (my $i = 0; $i <= $#sorted_phrases; $i++) { local $_ = $sorted_phrases[$i]; if ($i == 1) { print "BLA BLA XXX - \"$_->{count}\" " . Dumper($_); if ($_->{count} < 1) { my $chosen_id_now = $sorted_phrases[0]->{sort_number} ++ 1; print qq|<br />Current sort was: $sorted_phrases[0]->{ +sort_number} , and new one is $chosen_id_now <br />|; foreach my $tmp (@sorted_phrases) { if ($tmp->{sort_number} == $chosen_id_now) { push @sorted_phrases_2, $tmp; } } } } else { push @sorted_phrases_2, $_; } } @sorted_phrases = @sorted_phrases_2;

Thanks for any ideas - as I'm stumped :(



Replies are listed 'Best First'.
Re^3: Trying to make a string generated like google
by davorg (Chancellor) on Jun 30, 2010 at 07:50 UTC

    I've just logged on for the first time for almost a year and saw your unanswered question. It's really quite simple.

    my @sorted_phrases = sort { $b->{count} <=> $a->{count} or $b->{sort_number} <=> $a->{sort_number} } values %$strings;

    It's really worth reading the Perl FAQ. See How do I sort an array by (anything)?


    See the Copyright notice on my home node.

    Perl training courses

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://787340]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (5)
As of 2022-07-06 12:53 GMT
Find Nodes?
    Voting Booth?

    No recent polls found