- 本课包含:哈希简介、哈希的操作、哈希函数、哈希的使用、综合实例
哈希简介
概念
- hash,也被称作散列
- 很散,很多东西都能往里塞
- 是一种数据类型(标量、数组、哈希)
-
必要性:便于多重索引
由姓名、学号索引同学成绩
键和值
- key and value
- 可以是任何的标量
- 键的取值必须是唯一,值可以重复
-
哈希相当于装物品(数据)的大桶
键:大桶里物品的表情
值:大桶里的物品
放起来可以杂乱无章,哈希的键与值之间没有顺序
程序里的形式
- 以%开头:%class,%car,* 命名要符合功能
- 对于一维哈希%class, $class{"小李"}是一个值
这样表示的是一个标量
其中“小李”是键 - 定义时用%,取值时用$,必须用大括号括键
多维哈希
- 举例:$class{"xiaoli"}{"English"}
-
多维hash,前几级也可以看成是hash,即桶里还放着桶
示意图
与数组区别
- hash结构有时也称为关联数组
- 同名的标量、数组、hash之间没有任何关系
区别
- 数组用@,hash用%
- 访问方法不一样:
数组使用相对引用,是有序排序,访问需要下标值0,1,2,3,4……
哈希使用绝对引用,是无需排序,通过键索引,键之间无关系
网友评论