哈希表-二级指针
来源:互联网 发布:数据的重要性 编辑:程序博客网 时间:2024/05/22 23:27
哈希表是一种数据的存储和查找方式
数据的大小是字节描述,那么数据的存储就是一个利用空间的过程
数据量很大时候,几百G,几亿条,查找起来是多么费事,当然你可以排序等算法简化,但依然于事无补
生活中的存储 中药店的药箱根据药材分类存放,药箱内再放个九宫格
根据算法得到分类 根据key计算哈希值,得到一级存放位置,如果内部有多个数据,则挨个比较
从乱序中找到一对一关系,再从遗漏的部分,挨个比较,就是哈希的思想
链式哈希:
基础块 是数据key对应的value,value一般为void*,这样可以转换为任意的一般为结构体指针
每次插入都需要申请malloc内存
哈希值值对应存储 对链表的插入删除,动态大小
哈希表 可以固定大小,malloc内存,内部存放链表的头指针
指向哈希表 二级指针
二级指针
数组定义和指针基本一样,只不过在于指针指向大小不同
char a[10];char *a,sizeof(a)的值不同,不过在声明不可见范围,a是一样的仅指针大小,例如a作为参数传参
数组和指针只是赋值方式不同,都可以通过下表访问一定范围地址的内容,
当指针指向数组时候,可以理解数组就是指针,指针就是数组
此外,指针可以指向变量和函数
二级指针就是指向了一个指针的指针,被指向的指针可能是函数,数组,变量
当被指向的指针是数组时候,那么就是哈希表了
char* a[]是指针数组,那么指向数组内第一个元素的指针就是二级指针
char **b = &a[0];那么b[0]就是a[0],b指向一个指针数组
哈希表首先指向一个指针数组,数组内指针是链表的首地址
0 0
- 哈希表-二级指针
- 二级指针
- 二级指针
- 二级指针
- 二级指针
- 二级指针
- 二级指针
- 二级指针
- 二级指针
- 二级指针
- 二级指针
- 二级指针
- 二级指针
- 二级指针
- 二级指针
- 二级指针
- 二级指针
- 二级指针
- zabbix安装配置
- js中将字符串转换成json的三种方式
- QComboBox item文字重叠
- 设计模式学习之过滤器模式
- 【设计模式】解释器模式
- 哈希表-二级指针
- Struts+JQuery实现ajax并返回json数据
- 开公司(排列枚举、DFS)
- 设计模式-09 策略模式
- HTML,CSS,font-family:中文字体的英文名称
- 程序设计模式(一) 基础回顾
- 深入探讨MySQL索引底层实现
- lintcode 452 删除链表中的元素
- LeetCode 47. Permutation ii java solution