数组 链表 散列(hash)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013565163/article/details/54913240

hash 哈希, 散列

当我们对数据进行处理的时候, 需要快速查找 ,删除,增加。

在我们学习 c 语言基础的的时候, 接触到了 数组和链表:

我们知道
数组 查找起来 相比较容易一些,但是做 删除和增加的时候比较困难。
数组在内存中是 存储连续一整块的内存。
这里写图片描述

链表 很容易实现做删除和增加。
链表 不需要连续的一整块内存。但是因为 有一个指针指向 下一个数据,需要的内存相比数组更多一些

这里写图片描述

那么这个时候,我们需要很快的查找和删除增加怎么办。
这个时候,介绍一种 新的数据结构: hash 发音 哈希, 名称:散列

可以 理解为 数组和链表的结合体。 但是相比数组和链表 他的时间复杂度降低了 但是 空间复杂度升高了。

这里写图片描述

我们知道, 在算法与数据结构中,我们应该明白一个道理: 时间复杂度和空间复杂度是一对矛盾点。





关注我的公众号第一时间阅读有趣的技术故事
扫码关注:

也可以在微信搜索公众号即可关注我:codexiulian
渴望与你一起成长进步!

阅读更多
换一批

没有更多推荐了,返回首页