首页 > 学院 > 开发设计 > 正文

数组 链表 散列(hash)

2019-11-11 01:20:45
字体:
来源:转载
供稿:网友

hash 哈希, 散列

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

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

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

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

这里写图片描述

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

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

这里写图片描述

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


上一篇:【Bzoj1588】营业额统计

下一篇:浅识C#

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表