Keerthu has asked for the wisdom of the Perl Monks concerning the following question:

This node falls below the community's minimum standard of quality and will not be displayed.

Replies are listed 'Best First'.
Re: Sort hash of hashes
by Biker (Priest) on Feb 03, 2002 at 15:40 UTC

    The strange thing is that pradsham just asked the same thing.

    Are you in the same class?

    "Livet är hårt" sa bonden.
    "Grymt" sa grisen...

Re: Sort hash of hashes
by vek (Prior) on Feb 03, 2002 at 17:05 UTC
    If you really have attempted to solve this on your own and are still scratching your head, try the perldsc documentation. Wait, it's conveniently located here at perldoc.com.
Re: Sort hash of hashes
by TippyTurtle (Novice) on Feb 03, 2002 at 19:22 UTC
    I threw it into a short bit of code.
    It don't print the results, but it gets you the data structure. I cut out the \s in case it is homework, don't want to make it too easy :)
    while (<DATA>){my($s,$c,$dl)=split(':'); $sd=~s/^\s+|\s+$//;@sd=split(' ',$dl); @sd=sort{$a<=>$b}@sd;$r{$s}{$c}{'h'}=pop@sd; $r{$s}{$c}{'l'}=shift@sd} __DATA__ CA:San Francico: 56 45 53 35 42 24 89 67 85 45 65 45 87 64 CA:Freemont: 87 78 67 65 98 78 78 43 98 45 82 48 78 47 Texas:Houston: 98 67 101 78 92 56 89 57 83 45 76 46 76 29 Texas:Dallas: 78 45 79 54 89 56 82 54 76 46 73 45 65 56
Re: Sort hash of hashes
by atcroft (Abbot) on Feb 03, 2002 at 17:53 UTC
    What I threw together below below seems to work, and includes sample data (including data to cause the multiple-city temperature case). I know it can probably be done better, however, and I would hope other, more experienced monks would comment so we all might learn from their experience. Good luck in finding your solution.
    begin 664 test8.pl M(R$O=7-R+V)I;B]P97)L("UW"G5S92!S=')I8W0["G5S92!W87)N:6YG<SL* M"FUY("5R97-U;'1S(#T@*"`B;6EN(B`]/B`M,2P@(FUA>"(@/3X@,2`I.PIM M>2`H)6UI;FUA>"P@)&QI;F4L("1L;V-A;&4L("1C:71Y+"`D<W1A=&4L("1R M97-U;'0L($!T96UP<RD["@IW:&EL92`H)&QI;F4@/2`\1$%403XI('L*"6-H M;VUP*"1L:6YE*3L*"2@D;&]C86QE+"!`=&5M<',I(#T@<W!L:70H+UQS*R\L M("1L:6YE*3L*"2@D<W1A=&4L("1C:71Y*2`]('-P;&ET*"\L+RP@)&QO8V%L M92P@,BD["@H)>PH)"2,@4V]R="!T:&4@=&5M<&5R871U<F5S"@D);7D@0'-T M96UP<R`]('-O<G0@>R1A(#P]/B`D8GT@0'1E;7!S.PH)"4!T96UP<R`]($!S M=&5M<',["@E]"@H)9F]R96%C:"!M>2`D=&5M<"`H<7<H;6EN(&UA>"DI('L* M"0DD<F5S=6QT(#T@,3L*"0EI9B`H)'1E;7`@97$@(FUA>"(I('L*"@D)"2,@ M4F5V97)S92!T:&4@=&5M<&5R871U<F4@87)R87D@:68@;&]O:VEN9R!F;W(@ M"@D)"2,@("!T:&4@;6%X('1E;7!E<F%T=7)E+"!S;R!W92!O;FQY(&AA=F4@ M=&\@;&]O:R`*"0D)(R`@(&%T(&5L96UE;G0@,"X*"0D)0'1E;7!S(#T@<F5V M97)S92A`=&5M<',I.PH)"7T*"@D)(R!/;FQY(&-O;7!A<F4@86=A:6YS="!T M:&4@8W5R<F5N="!V86QU92!I9B!T:&5R92!I<R!O;F4*"0EI9B`H97AI<W1S M*"1M:6YM87A[)'-T871E?7LD=&5M<'U[(FQO8V%T:6]N(GTI*2!["@H)"0DC M(%)E='5R;G,@+3$L(#`L(#$@9&5P96YD:6YG(&]N(&AO=R!T:&4@=&5M<"!C M;VUP87)E<R`*"0D)(R`@('=I=&@@=&AE(')E8V]R9&5D(&]N90H)"0DD<F5S M=6QT(#T@)'1E;7!S6S!=(#P]/B`D;6EN;6%X>R1S=&%T97U[)'1E;7!]>R=D M96=R965S)WT["@H)"0DC($5N<W5R97,@=&AA="!A(&YO;BUN96=A=&EV92!V M86QU92!W:6QL('1R:6=G97(*"0D)(R`@(&-H86YG:6YG('9A;'5E<PH)"0DD M<F5S=6QT("H]("1R97-U;'1S>R1T96UP?3L*"0E]"@H)"6EF("@D<F5S=6QT M(#X](#`I('L*"@D)"2,@0F5C875S92!T:&4@87)R87D@:7,@;W)D97)E9"`H M86YD(')E=F5R<V5D+"`*"0D)(R`@(&9O<B!M87@I+"!T:&4@=F%L=64@=V4@ M<V5E:R!I<R!T:&4@9FER<W0@96QE;65N=`H)"0DD;6EN;6%X>R1S=&%T97U[ M)'1E;7!]>R=D96=R965S)WT@/2!S:&EF="A`=&5M<',I.PH*"0D)(R!)9B!T M:&4@=F%L=64@=V%S(&YO="!T:&4@<V%M92!A<R!T:&4@<F5C;W)D960@;VYE M+`H)"0DC("`@<F5P;&%C92!I=#L@;W1H97)W:7-E+"!A9&0@:70@=&\@=&AE M(&QI<W0@;V8*"0D)(R`@(&-I=&EE<PH)"0EI9B`H)')E<W5L="D@>PH)"0D) M0'LD;6EN;6%X>R1S=&%T97U[)'1E;7!]>R=L;V-A=&EO;B=]?2`]("@@)&-I M='D@*3L*"0D)?2!E;'-E('L@"@D)"0EP=7-H*$![)&UI;FUA>'LD<W1A=&5] M>R1T96UP?7LG;&]C871I;VXG?7TL("1C:71Y*3L*"0D)?0H)"7T*"7T)"GT) M"@HC(%!R:6YT('1H92!S=&%T92P@9F]L;&]W960@8GD@=&AE(&UA>"!A;F0@ M;6EN('1E;7!E<F%T=7)E<RP@96%C:"!F;VQL;W=E9`HC("`@8GD@=&AE(&-I M='D@;W(@8VET:65S(&EN('=H:6-H(&ET(&]C8W5R<F5D+"!W:71H(&UU;'1I M<&QE(&-I=&EE<PHC("`@<V5P97)A=&5D(&)Y("(L("(*9F]R96%C:"!M>2`D M<W1A=&4@*&ME>7,H)6UI;FUA>"DI('L*"7!R:6YT*"1S=&%T92P@(B`B*3L* M"69O<F5A8V@@;7D@)'1E;7`@*'%W*&UA>"!M:6XI*2!["@D)<')I;G0H)'1E M;7`L("(@=&5M<"`B*3L*"0EP<FEN="@D;6EN;6%X>R1S=&%T97U[)'1E;7!] M>R=D96=R965S)WTL("(@(BD["@D)<')I;G0H:F]I;B@B+"`B+"!S;W)T*$![ M)&UI;FUA>'LD<W1A=&5]>R1T96UP?7LG;&]C871I;VXG?7TI*2P@(B`B*3L* M"7T*"7!R:6YT*")<;B(I.PI]"E]?1$%405]?"D-A+$9R965M;VYT(#@W(#0U M(#DQ(#4V(#@Y(#4T(#8W(#0U(#<V(#0S(#@Q(#0X(#<V(#0S(`I#82Q"97)K M;&5Y(#4V(#,T(#8W(#,X(#8V(#,T(#4V(#,Q(#8W(#0U(#<Q(#0U(#8U(#0R M(`I4>"Q(;W5S=&]N(#(X(#,P(#,Q(#,Q(#,T(#,V(#4Q(#<R(#<U(#<U(#<W M(#<Y(#@Q(#@X"E1X+$1A;&QA<R`R."`R."`S,B`T,R`T-2`T-2`T-B`W-B`W 1."`W.2`X,R`X-"`X-B`X-PH` ` end
    Update: After finding shortly after posting this that there was a high probability this was indeed homework (compare with How do i sort), I was quite angry, and in my anger posted it to both, thinking perhaps they might at least get caught in their attempt to dupe those willing to help. Perhaps it was poor etiquite of me to post the solution on both questions, and if so, I appologize to the other monks herein. For a while, I considered removing my code altogether, but was unsure if that would be appropriate either. I am grateful for the sage advice of tilly, jeffa, and others, who suggested another course of action. The block that has now replaced the code above is actually the code, as I tested it, UUEncoded. Perhaps it only slows down those who would take advantage of the willingness to help found here, perhaps not. It is my hope that damage to trust by those involved is realized. It is sad to think that now, with each post I read and consider, the question in my mind will be, "is this a real request for help, or homework?"