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

一些做的好的网站域名创建

一些做的好的网站,域名创建,网站制作多少钱一个月,专业的建设机械网站本节目标 1.unordered系列关联式容器 2.底层结构 3.模拟实现 4.哈希的应用 5.海量数据处理面试题 unordered系列关联式容器 在c98中,STL提供了底层为红黑树结构的一系列关联式容器,在查询时效率可以达到logN,即最差的情况下需要比较红…

本节目标

1.unordered系列关联式容器

2.底层结构

3.模拟实现

4.哈希的应用

5.海量数据处理面试题

unordered系列关联式容器

在c++98中,STL提供了底层为红黑树结构的一系列关联式容器,在查询时效率可以达到logN,即最差的情况下需要比较红黑树的高度次,当树中的结点非常多时,查询效率也不理想。最好的查询是,进行很少的比较次数就能够将元素找到,因此c++11中,STL又提供了4个unordered系列的关联式容器,这四个容器与红黑树结构的关联式容器使用方式基本类似,只是其底层结构不同。

unordered_map

unordered_map的介绍

无序映射(unordered_map)是一种关联式容器,用于存储由键值(key)和映射值(mapped value)组合而成的元素, 并支持基于键的快速元素检索。

在unordered_map中: - 键值通常用于唯一标识元素 - 映射值是与该键关联的内容对象 - 键和映射值的类型可以不同 其内部实现特点:

1. 元素不会按照键值或映射值的顺序排列

2. 基于哈希值组织到桶(buckets)中

3. 通过键值直接访问元素的平均时间复杂度为O(1)

性能特性:

- 无序映射在通过键访问单个元素时比有序映射(map)更快

- 但在迭代访问元素子集时效率通常较低

接口特性:

- 支持直接访问操作符(operator[]),可通过键值直接访问映射值

- 容器提供的迭代器至少为前向迭代器(forward iterators)

unordered_map的接口使用说明

这些是别名,也就是typedef过的,为了方便后续理解,可以自行把常见和常用的了解一下

构造函数

empty (1)	
explicit unordered_map ( size_type n = /* see below */,                                const hasher& hf = hasher(),                                   const key_equal& eql = key_equal(),                           const allocator_type& alloc = allocator_type() );
explicit unordered_map ( const allocator_type& alloc );
range (2)	
template <class InputIterator>  
unordered_map ( InputIterator first, InputIterator last,   size_type n = /* see below */,const hasher& hf = hasher(),const key_equal& eql = key_equal(), const allocator_type& alloc = allocator_type() );
copy (3)	
unordered_map ( const unordered_map& ump );
unordered_map ( const unordered_map& ump, const allocator_type& alloc );
move (4)	
unordered_map ( unordered_map&& ump );
unordered_map ( unordered_map&& ump, const allocator_type& alloc );
initializer list (5)	
unordered_map ( initializer_list<value_type> il, size_type n = /* see below */,   const hasher& hf = hasher(),    const key_equal& eql = key_equal(), const allocator_type& alloc = allocator_type() );

 总结:第一个就是构造一个空的非排序map 

            第四个就是拷贝构造

            第五个是迭代器构造

基本上知道第一个和第四个就行了,其他可以自行了解

capacity函数 

iterator函数

 

元素访问函数

 

只要知道[]就可以了

modifier函数

 

学习insert erase clear swap即可

桶操作(具体可以等学习完hash后在了解)

 

unordered_set 

unordered_set的介绍和使用这里就不多加说明了,就是和set差不多,就是底层结构不一样,我们重点学习底层结构

map/set和unordered_map/unordered_set有什么区别和联系?

1.都可以实现key和key-value的搜索场景,并且功能和使用基本一样

2.map/set的底层是用红黑树实现的,遍历出来是有序的,增删查改的时间复杂度为logN

3.unordered_map和unordered_set的底层是用哈希表实现的,遍历出来的是无序的,增删查改的时间复杂度为O(1)

4.map和set是双向迭代器,unordered_map和unordered_set是单向的(仅支持++)

底层结构

请移步我的数据结构篇章中关于哈希表的讲解(包括海量数据的处理都在那一篇章讲解)

http://www.dtcms.com/wzjs/609202.html

相关文章:

  • 南通seo网站建设费用适合小公司的记账软件
  • 做头像的网站有哪些wordpress会员等级
  • 北京cms建站模板易无忧建站
  • 新浪博客怎么给自己网站做链接百度四川建设厅网站
  • 网站空间文件夹视频网站建设 知乎
  • 定制网站开发方案wordpress自定义文章代码和样式
  • 网站搜索引擎优化的基本内容微擎商城
  • 作品展示的网站做网站下载哪个软件
  • 微网站好制作吗北京公司地址推荐
  • 山东建设报网站中企动力邮箱登录网址
  • 手机 网站内 搜索网站建设哪个空间比较好
  • 商丘网站建设运营公司怎么区分用vs和dw做的网站
  • 做网站值钱吗网站安全监测预警平台建设成效
  • j2ee 建设简单网站域名访问wordpress
  • 图书馆网站设计方案抖音搜索关键词排名查询
  • 网站建设方案书doc模板网站文件上传wordpress修改
  • 网站建设管理的建议开发一个页面多少钱
  • 一起做的网站重庆顶呱呱网站建设
  • 嘉兴市南湖区建设街道网站建设网站需要了解些什么东西
  • 什么是网站实施太湖县城乡建设局网站
  • 做体育直播网站抓好门户网站 建设
  • 全国建设造价信息网站网站加ico
  • 景区网站建设要求企业网站建设 价格
  • wordpress网站二次开发学网络工程师
  • zencart 官方网站少儿编程加盟店8
  • 做自媒体可以搬运国外网站新闻吗一个公司的网址怎么弄
  • 网站 数据库+1html5网页设计教程
  • 西宁网站建设优化百度seo推广怎么做
  • 孟村住房建设局网站手机端网站欣赏
  • wordpress心理教育网站高校网站建设资料库