HashTable 简述
#include <stdio.h>#define M 100 #define Hash_key = 29template <class T> struct HashNode {T data;int key;int isNull;HashNode<T>* pNext;HashNode(){pNext = NULL;isNull = 1;} }; template <class T> class HashTable { private:HashNode<T> m_HashNodes[M];int getHashAddress(int key) {return key % Hash_key;}public:HashTable(){// for (i=0; i<M; i++) {// m_HashNodes[i].isNull = 0; // } }bool insert(int key,T data) {int address = this.getHashAddress(key);if (m_HashNodes[address].isNull == 1) {m_HashNodes[address].data = data;m_HashNodes[address].isNull == 0;}else {// while (m_HashNodes[address].isNull == 0 && address <M) { // 线性探测法, 开发地址法// address++;// }// if (address == M) {// return false;// }// HashNode<T>* pTmpNode = m_HashNodes[address].pNext; // 链地址法HashNode<T>* pCurNode = NULLwhile (pTmpNode != NULL) {pCurNode = pTmpNode;pTmpNode = pTmpNode->pNext;}pCurNode->pNext = new HashNode<T>();pCurNode->pNext->data = data;pCurNode->pNext->key = key;pCurNode->pNext->isNull = 0;}}HashNode<T> find(int key) {int address = this.getHashAddress(key);HashNode<T> node = m_HashNodes[address];if (node.key == key){return &node.data;}else {pCur = m_HashNodes[address].pNext;while (pCur != NULL){if (pCur->key == key) {return pCur;}else {pCur = pCur->pNext;} }return NULL}}}
转载于:https://www.cnblogs.com/suyuan1573/p/6071295.html
HashTable 简述相关推荐
- Hashtable简述
散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构.也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度.这个映 ...
- 在C#中应用哈希表(Hashtable)
一,哈希表(Hashtable)简述 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似key/value的键值对,其 ...
- C#中HashTable的用法
1. 哈希表(Hashtable)简述 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似key-value的键值对, ...
- C#中Hashtable表的应用
一,哈希表(Hashtable)简述 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似keyvalue的键值对,其中 ...
- .Net下的HashTable
一,哈希表(Hashtable)简述 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似key/value ...
- C# 集合类(四):Hashtable
一.哈希表(Hashtable)简述 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似key/value的 ...
- C# HashTable 使用用法详解
C#中如何操作HashTable类呢?本文将给你答案,哈希表(Hashtable)简述在.NET Framework中, 一,Hashtable是System.Collections命名空间提供的一个 ...
- C# hashtable
Hashtable 一,哈希表(Hashtable)简述 在.NET work中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似key/的键值对,其 ...
- C#中哈希表(HashTable)的用法详解
1. 哈希表(HashTable)简述 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似keyvalue的键值对, ...
- 聊聊C# 中HashTable与Dictionary的区别说明
哈希表(HashTable)简述 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似keyvalue的键值对,其中ke ...
最新文章
- DevExpress最强干货|实用示例、更新等你来体验!
- spring中那些让你爱不释手的代码技巧
- SNMP协议介绍和操作截图
- java仿聊天室项目总结_Java团队课程设计-socket聊天室(个人总结)
- 瑞星2008网络版序列号大全
- MySQL数据库模式(SQL_MODE)中的STRICT_TRANS_TABLES和STRICT_ALL_TABLES
- Windows Phone 内容滑动切换实现
- 第十八期:网页禁止复制粘贴怎么办?教你六招轻松搞定
- matlab 图像矢量量化,MATLAB环境下基于矢量量化的说话人识别系统(1)
- 手机里的html文档是什么,华为手机中后面带HTML的文档能删除吗?
- Problem C(HDU-5687)
- [Erlang危机](4.4)命名管道
- 慎用javascript:void(0) 【转】
- Ubuntu12.04安装配置Nginx Tomcat环境
- 父与子python下载不了_【求助】看父与子学习Python,里面有一个滑雪小游戏,加载不出图...
- ax200 兼容性问题 老路由器_WiFi6来了!但我们究竟应不应该换哥新的路由器呢
- Cannot resolve plugin org.apache.tomcat.maven:tomcat7-maven-plugin:<unknown>
- atmega128 单片机 密码锁 PROTEUS 仿真
- simulink中不能改名_王者荣耀:万格改名教学,空白名、重复名、个性符号名改法技巧!...
- HTML是什么?有什么作用?
热门文章
- Scikit-learn:聚类clustering
- Pytorch完成线性回归
- python高阶函数map reduce filter sorted_【Python入门】7.高阶函数之 map( )、reduce( )、filter( )、sorted( )的用法...
- 软件测试--缺陷报告常见问题03
- Web — 调色盘打开+div
- L1-042 日期格式化 (5 分)—团体程序设计天梯赛
- Linux查看磁盘空间和文件夹大小
- JEE5标准与Struts/Spring/Hibernate等诸多开源框架的比较分析
- 概率分布与马尔科夫链的关系讨论(上传费事)
- [World Final 2016] Branch Assignment