数组的优缺点:
优点:元素的内容可由基址+下标*元素大小就可直接访问,是访问最快的方法。缺点是通过元素内容直接得出元素的位置。比喻一个单词统计功能,需要记录单词和单词出现在次数如下:
Hello world is really best good …..
2 3 1 7 4 8 ……..
当我们需要建立这样一一对应关系时,我们发现如果用数组分别存储时,我们就需要不停的枚举,而不是直接对应。代价就是有多少单词就需要搜索多少次数组。
关联数组,又称Hash(哈希),散列。是通过建立元素内容与元素位置的对应关系进行分散存储的一种数据结构。分散存储的方法有很多种,常见是通过一个函数(散列函数)将位置值简单变量转换成分散的地址值,实现按值存储。
[root@windriver-machine test]# cat hash.pl
#!/usr/bin/perl
%h=(a=>1,b=>3);
print "%h\n";
print %h;
$a=%h;
print "\n$a\n";
$aoh=[{'k11'=>'v11','k12'=>'v12'},{'k21'=>'v21','k22'=>'v22'}];
$hash=$aoh->[0];
print "@{[%$hash]}\n";
$hoh={k1=>{key1=>'value1',key2=>'value2'},k2=>{key1=>'val1',key2=>'val2'}};
print "$hoh->{k1}{key1}\n";
print "@{$hoh->{k1}}{'key1','key2'}";
[root@windriver-machine test]# perl hash.pl
%h
a1b3
2/8
k11 v11 k12 v12
value1
value1 value2[root@windriver-machine test]#
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com