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

机械配件网站建设wap手机网站模版

机械配件网站建设,wap手机网站模版,企业服务专区,建设网站技术要求1.unordered系列关联式容器 本节主要介绍unordered_map和unordered_set两个容器#xff0c;底层使用哈希实现的 unordered_map 1.unordered_map是储存key,value键值对的关联式容器#xff0c;其允许通过key快速查找到对应的value#xff0c;和map非常相似#x…1.unordered系列关联式容器 本节主要介绍unordered_map和unordered_set两个容器底层使用哈希实现的 unordered_map 1.unordered_map是储存key,value键值对的关联式容器其允许通过key快速查找到对应的value和map非常相似但是底层实现完全不同 2.unoredered_map没有对key,value进行排序而是映射一个对象其内容与其键相关联键和映射值的类型可能不同 2.底层结构 unordered系列的关联式容器之所以效率比较高是因为底层实现了哈希结构 哈希概念 构造一种储存结构通过某种函数使元素的储存位置与他的关键码建立一一映射的关系那么在查找该元素的时候很快就能找到 这个顺序表叫做哈希表但是还有一个问题如果插入44会出现什么问题 哈希冲突 不同关键字通过相同的哈希函数计算出相同的哈希地址这种现象称为哈希冲突 这种情况我们通常用开放定址法和哈希桶解决 常见哈希函数 常用的除留余数法 就是用我们插入的数据模上哈希表的长度得出的余数就是我们得到的插入位置的下标 哈希表什么时候扩容 开放定址法实现哈希 #pragma once #includevectortemplateclass K struct HashFunc {size_t operator()(const K key){return (size_t)key;} };//特化 template struct HashFuncstring {size_t operator()(const string key){size_t hash 0;for (auto ch : key){hash * 131;hash ch;}return hash;} };namespace open_address {enum State{EXIST,EMPTY,DELETE};templateclass K, class Vstruct HashData{pairK, V _kv;State _state EMPTY;};templateclass K, class V, class Hash HashFuncKclass HashTable{public:HashTable(){_tables.resize(10);}bool Insert(const pairK,V kv){if (Find(kv.first)){return false;}//扩容if (_n * 10 / _tables.size() 7){HashTableK, V newHT;newHT._tables.resize(_tables.size() * 2);for (size_t i 0; i _tables.size(); i){if (_tables[i]._state EXIST){newHT.Insert(_tables[i]._kv);}}_tables.swap(newHT._tables);}Hash hs;size_t hashi hs(kv.first) % _tables.size();while (_tables[hashi]._state EXIST){hashi;hashi % _tables.size();}_tables[hashi]._kv kv;_tables[hashi]._state EXIST;_n;return true;}HashDataK, V* Find(const K key){Hash hs;size_t hashi hs(key) % _tables.size();while (_tables[hashi]._state ! EMPTY){if (_tables[hashi]._state EXIST _tables[hashi]._kv.first key){return _tables[hashi];}hashi;hashi % _tables.size();}return nullptr;}bool Erase(const K key){HashDataK, V* ret Find(key);if (ret nullptr){return false;}else{ret-_state DELETE;--_n;return true;}}private:vectorHashDataK, V _tables;size_t _n 0;};
http://www.w-s-a.com/news/648043/

相关文章:

  • 常州专门做网站的公司有哪些网页模板下载网站10
  • linx服务器怎么做网站做长页网站
  • 汕头网站建设sagevis服装设计公司有什么职位
  • 网站流量分析报告医院网站制作公司
  • 仿58网站怎么做邯郸网站设计多少钱
  • 广州网站制作开发wordpress中文固定连接
  • 成都网站建设公司盈利吗专门做二手手机的网站有哪些
  • 手机网站设计需要学什么wordpress读法
  • WordPress pajx天津短视频seo
  • 检察院门户网站建设情况总结深圳网站制作长沙
  • 单页导航网站模板搜索量查询
  • 如何在一个地方建设网站营销型定制网站
  • 保定网站建设方案维护动易网站中添加邮箱
  • 简易网站的html代码wordpress音乐html
  • 四川住房和城乡建设厅网站打不开海山网站建设
  • 深圳设计功能网站如何用html制作网站
  • 网络优化软件下载竞价排名和seo的区别
  • 龙华新区做网站中高端网站建设
  • 网站开发小图标大全手机网站设计开发
  • 网页设计设计一个网站口碑营销的优点
  • 枣庄建网站的公司唐山企业网络推广培训
  • 张家界建设企业网站学校资源网站建设方案
  • 网站制作教程书籍业务管理系统
  • 上传网站空间的建站程序怎么删除c 网站开发案例详解下载
  • 企业网站维护兼职丹阳网站优化
  • 秦皇岛网站开发公司怎么注册自己的公司
  • 写作网站哪个能得稿费绿色环保企业网站模板
  • 牡丹江网站建设定制开发安徽建设工程信息网官网入口
  • 有什么好的网站建设的书适合在家做的网站工作
  • wordpress情侣源码西安网站快速优化