在PERL中删除数组中重复的元素,并按序排列

前端之家收集整理的这篇文章主要介绍了在PERL中删除数组中重复的元素,并按序排列前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

root@darkstar:/home/tiger506/Program/Perl# cat -n ./p_uniq_num.pl 1  #!/usr/bin/perl 2  use strict; 3  my @num_array=(1,2,5,4,3,1,6,5); 4  my $num_count=$#num_array+1; 5  my $tmp=undef; 6 7 8  for(my $i=0;$i<$num_count;$i++){ #将数组按照由大到小的顺序排列 9          for(my $j=$i+1;$j<$num_count;$j++){10                  if($num_array[$i]<$num_array[$j]){11                          $tmp=$num_array[$i];12                          $num_array[$i]=$num_array[$j];13                          $num_array[$j]=$tmp;14                  }15                  if($num_array[$i]==$num_array[$j]){16                          delete @num_array[$j]; #剔除重复的元素17                  }18          }1920  }2122  print "剔除数组中冗余元素后,将数组由大到小排序: ";23  my @new_array;24  foreach my $element(@num_array){ 25          print $element."_";26          if($element=~m/\d/){ 27                  push @new_array,$element;28          }29  }30  print "\n";31  print"数组长度为".($#new_array+1)."\n";32结果:root@darkstar:/home/tiger506/Program/Perl# ./p_uniq_num.pl剔除数组中冗余元素后,将数组由大到小排序: 6_5_4_3_2_1_数组长度为6

猜你在找的Perl相关文章