请教多维数组排序问题

fatbobman 2002-05-28 10:26:05
有一个多维数组
name money age hit time etc...
我想以money+age排序,不知道该如何实现比较高效
...全文
43 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
beckheng 2002-05-29
  • 打赏
  • 举报
回复
假設你的多維數組裡面的是哈希結構的引用:
降序
@new=sort{$b->{money}+$b->{age}<=>$a->{money}+$a->{age}} @yourarr;
升序
@new=sort{$a->{money}+$a->{age}<=>$b->{money}+$b->{age}} @yourarr;

假設你的多組數組裡面的是數組的引用:
降序
@new=sort{$b->[index]+$b->[index]<=>$a->[index]+$a->[index]} @yourarr;
升序
@new=sort{$a->[index]+$a->[index]<=>$b->[index]+$b->[index]} @yourarr;
fatbobman 2002-05-29
  • 打赏
  • 举报
回复
多谢。。
Linus2000 2002-05-28
  • 打赏
  • 举报
回复
使用hash表保存数据,money+age作为key
foreach $key(sort keys(%hash)) {
print "$hash{$key}\n";
}
fatbobman 2002-05-28
  • 打赏
  • 举报
回复
刚才看了一遍perldoc,里面都是有不少方法,不过就是没有太看明白原理。。晕
perl的sort语句本身就够怪异的,再加上map更晕

2,203

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 CGI
社区管理员
  • CGI社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧