当前位置: 首页 > news >正文

成都网站seo推广/百度快照提交入口

成都网站seo推广,百度快照提交入口,网站短链接怎么做,wordpress 不发邮件开放定址的哈希表的实现 关于哈希表的一些基础知识,可以参考哈希表的全新理解 哈希表的类型定义 typedef struct {RcdType *rcd; //哈希表记录的地址指针 int size; //哈希表的规模 int count; //记录个数 int *tag; //标志指针:1为有,0为…

开放定址的哈希表的实现

关于哈希表的一些基础知识,可以参考哈希表的全新理解

哈希表的类型定义

typedef struct {RcdType *rcd;	//哈希表记录的地址指针 int size;	//哈希表的规模 int count;	//记录个数 int *tag;	//标志指针:1为有,0为空,-1为已删除 int (*hash)(KeyType key,int size) ;	//起映射作用的哈希函数指针 int (*collision)(int &hashValue,int size) ;	//处理冲突的函数指针 
}HashTable; 

哈希表的初始化

//哈希表的初始化
Status InitHash (HashTable &H,int size,int (*hash)(KeyType,int),int (*collision)(int &,int)) {//申请了size个连续的RcdType类型的存储空间H.rcd = (RcdType*)malloc(size*sizeof(RcdType));//申请了同样个数(size)的连续的整形的存储空间//方便后面一对一登记各点的记录状态//将地址赋值给指针H.tagH.tag = (int*)malloc(size*sizeof(int));//每次申请存储空间,习惯判断是否申请成功if (H.rcd==NULL||H.tag==NULL) {return OVERFLOW;}for (int i=0;i<size;i++)  {H.tag[i] = 0;	//数组初始化,很多时候我们都需要保持初始化的习惯//特别是刚定义变量/申请存储空间时//因为他们可能带有默认值影响结果}H.size = size;H.count = 0;H.hash = hash;H.collision = collision;	//处理冲突函数return OK;
}

冲突函数

//冲突函数
void collision(int & hashValue,int hashSize) {
//冲突函数可以根据实际问题具体设计hashValue = (hashValue+1)%hashSize;
} 

哈希表的查找


//哈希表的查找
Status SearchHash(HashTable H,KeyType key,int &p,int &c) {p = H.hash(key,H.size);		//求得哈希地址//如果地址p存在不等记录或者记录已经删除,则进入循环 while((1==H.tag[p]&&H.rcd[p].key!=key)||-1==H.tag) {H.collision(p,H.size);	//一开始存放的时候是通过冲突函数处理的,//现在查找也通过同样的方式查找,//就好像你将东西放在某个地方,你要查找的时候还是要按同样的路前去取出 c++;	//c代表层次,经过n次冲突函数,则c=n }//存在相等记录 if(H.rcd[p].key==key&&1==H.tag[p]) {return OK;}else {	//不存在记录 return ERROR;}
} 

插入记录

//插入
int InsertHash(HashTable &H,RcdType e) {int c=0,j;//判断待插入记录是否已经存在,通过哈稀函数返回地址j,层次c(这两个参数属于引用形参,可双向传递) if(OK == SearchHash(H,e.key,j,c)) {return -1;}else {	//待插入记录在哈希表中不存在,则执行插入操作 H.rcd[j] = e;H.tag[j] = 1;++H.count;return c;}
} 

删除记录

//删除
Status DeleteHash (HashTable &H,KeyType key,RcdType &e) {int j,c;	//用于接收SearchHash函数中引用形参的返回值 if (ERROR == SearchHash(Hey,j,c)) {return ERROR;}else {e = H.rcd[j] ;H.tag[j] = -1 ;H.count--;return OK;}
}
http://www.lbrq.cn/news/1258201.html

相关文章:

  • 廊坊网站建设冀icp备/网站搜索优化价格
  • 上海做网站那家公司好/外链大全
  • 贵阳有哪些做网站的公司/seo电商运营是什么意思
  • 网站倍攻击/关键词排名技巧
  • 做供应链的网站/百度公司的业务范围
  • 商城网站制作 价格/资源猫
  • 网站订票策划方案/哪里做网络推广好
  • 厦门网站快照优化公司/企业推广网
  • 快速做网站的软件/电脑培训班附近有吗
  • 网站备案号添加超链接/兰州seo培训
  • 如何做交易网站/十五种常见的销售策略
  • wordpress增加关键词/seo在中国
  • ppt做网站/it培训班大概需要多少钱
  • 网站建设倒计时代码/企业网站搭建
  • 怎么做网站黑链/seo公司推荐
  • 西宁做网站建设公司/搜索引擎排名google
  • 毕设代做网站招聘/软件优化
  • 网站建设logo/搜索引擎优化的作用是什么
  • 快盘WordPress/合肥seo招聘
  • 普通政府网站 多少钱/西安网站seo厂家
  • 西安网站建设huanxi/优化设计答案五年级上册
  • 做期货主要看哪个网站/百度推广首次开户需要多少钱
  • 网站备案账户名如何查询/西安seo网站排名
  • 深圳做网站建设的公司/国内优秀个人网站欣赏
  • 影响网站建设价格的因素有/高级搜索技巧
  • 全面的聊城网站建设/外链服务
  • 东莞网站推广多少钱/推广赚钱平台
  • 电商网站建设策划书/同城发广告的平台有哪些
  • 苹果商店app store/seo服务的内容
  • 建立文档/企业seo顾问服务阿亮
  • 贯穿全生命周期,生成式AI正在重塑游戏行业
  • Android JUnit 测试框架详解:从基础到高级实践
  • CCF-GESP 等级考试 2025年6月认证C++一级真题解析
  • 著作权登记遇难题:创作者如何突破确权困境?
  • 关于Web前端安全防御之内容安全策略(CSP)
  • .env 文件