亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 2756 | 回復(fù): 4
打印 上一主題 下一主題

求合并一個數(shù)組的方法 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2009-10-03 13:13 |只看該作者 |倒序瀏覽
@a=(
['a','2','4'],
['b','3','2'],
['c','4','4'],
['d','t','3'],
['a','4','5'],
['c','3','5']
);

判斷第一個字段 如果出現(xiàn)相同的 就吧后面的兩個字段加一起
想要的結(jié)果是這樣的
a,24, 45
b ,3, 2
c ,43, 45
d ,t, 3

[ 本帖最后由 luesfeng 于 2009-10-3 13:54 編輯 ]

論壇徽章:
0
2 [報告]
發(fā)表于 2009-10-03 14:34 |只看該作者

  1. my %h = ();
  2. for(@a){
  3.     push @{$h{$_->[0]}},$_->[1].$_->[2];
  4. }

  5. for(sort keys %h){
  6.     print "$_ @{$h{$_}}\n";
  7. }
復(fù)制代碼


  1. C:\file>perl 5.pl
  2. a 24 45
  3. b 32
  4. c 44 35
  5. d t3
復(fù)制代碼

[ 本帖最后由 hitsubunnu 于 2009-10-3 14:41 編輯 ]

論壇徽章:
0
3 [報告]
發(fā)表于 2009-10-03 15:14 |只看該作者
原帖由 hitsubunnu 于 2009-10-3 14:34 發(fā)表

my %h = ();
for(@a){
    push @{$h{$_->[0]}},$_->[1].$_->[2];
}

for(sort keys %h){
    print "$_ @{$h{$_}}\n";
}



C:\file>perl 5.pl
a 24 45
b 32
c 44 35
d t3

謝謝 你了

論壇徽章:
0
4 [報告]
發(fā)表于 2009-10-13 21:45 |只看該作者

回復(fù) #1 luesfeng 的帖子

呃,寫了一個很繁瑣的程序,程序內(nèi)容如下:
=============================================================
#!/usr/local/bin/perl
use warnings;
use strict;

my @a=(
['a','2','4'],
['b','3','2'],
['c','4','4'],
['d','t','3'],
['a','4','5'],
['c','3','5']
);

my $n = scalar(@a) - 1;

for($i=0;$i<=n;$i++)
{
  for(my $j=($i+1);$j<=$n;$j++)
  {
    if($a[$i] -> [0] eq $a[$j] -> [0])
    {
      $a[$i] -> [1] = $a[$i] -> [1] . $a[$j] -> [1];
      $a[$i] -> [2] = $a[$i] -> [2] . $a[$j] -> [2];   
      splice(@a,$j,1);
      $n = $n - 1;  
    }
  }
}

$n = scalar(@a) - 1;

for($i=0;$i<=n;$i++)
{
  print $a[$i] -> [0] . ", ";
  print $a[$i] -> [1] . ", ";  
  print $a[$i] -> [0] . "\n";
}
=============================================================
程序輸出:
a, 24, 45
b, 3, 2
c, 43, 45
d, t, 3

再試試,改簡單點,呼。

論壇徽章:
0
5 [報告]
發(fā)表于 2009-10-14 09:42 |只看該作者
原帖由 luesfeng 于 2009-10-3 13:13 發(fā)表
@a=(
['a','2','4'],
['b','3','2'],
['c','4','4'],
['d','t','3'],
['a','4','5'],
['c','3','5']
);
判斷第一個字段 如果出現(xiàn)相同的 就吧后面的兩個字段加一起
想要的結(jié)果是這樣的
a,24, 45
b  ...



練練手,呵呵。
@a=(
['a','2','4'],
['b','3','2'],
['c','4','4'],
['d','t','3'],
['a','4','5'],
['c','3','5']
);

my %h = ();
for(@a){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$h{$_->[0]} = [$h{$_->[0]}->[0].$_->[1],$h{$_->[0]}->[1].$_->[2]];
}

for(sort keys %h){
&nbsp;&nbsp;&nbsp;&nbsp;print "$_ $h{$_}->[0] $h{$_}->[1] \n";
}
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP