快捷搜索: 王者荣耀 脱发

软考之路(三)——数据结构之查找表与哈希表

引言:

数据结构一直都是程序人员应该重视的科目,程序是处理数据的软件,知道了数据结构,能让我们编程人员的力量更加强大。

概述:

本篇博客总结查找表和哈希表,先说它们的概念。(1)查找表:同一类型的数据元素(或记录)构成的集合,这种数据结构各数据元素之间的关系松散,它是非常灵活数据结构。(2)哈希表:根据关键码值(Key value)而直接进行访问的数据结构,通过哈希函数实现地址映像。

内容:

一 查找表:一张图清晰明了。

概念,小编已经在概述中提到了,下面主要讲述查找表的分类

1 静态查找表:

2 动态查找表:

(1)二叉排序树:左子树上所有节点的值均小于根节点的值,右子树上的所有节点的值均大于根节点的值。

(2)平衡二叉树:左子树和右子树还是平衡二叉树,高度之差的绝对值不超过1。四种调整方式:LL型单向右旋平衡处理、RR型单向左旋、LR型先左后右双向旋转、RL型先右后左双向旋转。

(3)B_树:一棵m阶的B_树性质:每个结点最多有m棵树;根节点不是叶子节点,最少有俩棵树;除根以为的所有非终端结点最少有m/2棵子树等性质。

二 哈希表:再来一张图瞧瞧

哈希表主要俩个内容构造和出现冲突的处理方法。构造哈希表主要解决的问题:1 节省存储空间 2 较好的散列性,减少冲突。

由于哈希表是通过哈希函数地址压缩映像产生的,主要处理冲突方法:1 开放定址法 2 链地址法 3 再哈希法 4 公共溢出区法。

总结:

查找表和哈希表就是俩种同种类型数据记录的数据结构,重点掌握各自特殊之处。

经验分享 程序员 微信小程序 职场和发展