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

绍兴网站建设郑州网站seo优化

绍兴网站建设,郑州网站seo优化,wordpress插件使用Python,新开三端互通传奇网站哈希表一般哈希表都是用来快速判断一个元素是否出现在集合里。哈希函数哈希碰撞--解决方法:拉链法和线性探测法。拉链法:冲突的元素都被存储在链表中线性探测法:一定要保证tableSize大于dataSize,利用哈希表中的空位解决碰撞问题。…

哈希表

一般哈希表都是用来快速判断一个元素是否出现在集合里。

哈希函数

哈希碰撞--解决方法:拉链法和线性探测法。

拉链法:冲突的元素都被存储在链表中

线性探测法:一定要保证tableSize大于dataSize,利用哈希表中的空位解决碰撞问题。

三种哈希结构

数组、set(集合)、map(映射)

set与map的共同点:

set、map都是C++的关联容器,只是通过它提供的接口对里面的元素进行访问,底层都是采用红黑树实现。

set与map的不同点:

set:用来判断一个元素是否在一个组里。

map:映射,相当于字典,把一个值映射成另一个值,可以创建字典。

set

map

小结

当要用集合来解决哈希问题时,优先使用unordered_set,因为它的查询和增删效率是最优的,如果需要集合有序,就用set,要有重复数据,就用multiset。


1.为什么要成倍的扩容,而不是一次增加一个固定大小的容量?

保证常数的时间复杂度。

2.为什么以两倍方式扩容?

考虑可能产生的堆空间浪费,所以增长倍数不能太大。

3.为什么insert后,以前保存的iterator不会失效?

因为map和set储存的是节点,不需要内存拷贝和内存移动。但是vector在插入数据时如果内存不够,会重新开辟一块内存。map和set的iterator指向的是节点的指针,vector指向的是内存的某个位置。

4.为什么map和set的插入删除效率比其他序列容器高?

因为map和set底层实现为红黑树,插入和删除的时间复杂度为O(logn)。


例题:

  1. 有效的字母异位词(小写字母,用数组!)

  1. 赎金信(与有效的字母异位词类似)

  1. 两个数组的交集(输出结果是去重的,无序的,用unordered_set)

  1. 两个数组的交集II(哈希映射,有重复元素)

  1. 字母异位词分组(字符串排序的效果、通过设计哈希表中的键值进行归类)

  1. 快乐数(各个位上数的提取、判断是否有重复的数字出现,是否出现了死循环或者出现了1)

  1. 两数之和(经典,利用哈希查询效率高)

  1. 四数相加II(四个数组,两两分组)

//9、10使用双指针

  1. 三数之和(双指针法,对三个元素的去重)

  1. 四数之和(与三数之和类似,在一级剪枝时,判断条件要注意,nums[i]>0且target>0,对各个元素进行去重

http://www.hengruixuexiao.com/news/23874.html

相关文章:

  • 企业网站建设的核心全球十大搜索引擎排名及网址
  • 怎么做网站demo百度推广引流
  • 做网站公司哪个好营销软件培训
  • wordpress 加速插件宁波网站seo公司
  • 做网站开发需要学什么软件绍兴seo公司
  • 携程电子商务网站建设上海网络推广营销策划方案
  • 响应式模板网站建设网站流量查询网站统计查询
  • 如何建设网站的管理平台做网站推广一般多少钱
  • 工信部备案网站查询宁波网站建设公司
  • 驰业网站建设中国教育培训网
  • wordpress新建网站seo企业站收录
  • 类似开发次元世界seo是什么意思电商
  • 站酷设计网站首页win10优化大师怎么样
  • 主流网站类型广告公司联系方式
  • 做消费信贷网站价格网上推销产品的软件
  • 宣城网站优化网页设计友情链接怎么做
  • 比较好的做外贸网站seo排名工具
  • 网站开发业务需求分析列举五种网络营销模式
  • 长沙的互联网公司广西seo关键词怎么优化
  • 重庆网站建设微信seo
  • 丹江口网站建设谷歌seo优化技巧
  • 株洲定制网站建设网络营销首先要做什么
  • 网站建设方案设计谷歌浏览器官网下载安装
  • 北京国贸网站建设营销型网站定制
  • 网站续费能自己续费吗网站关键词排名怎么优化
  • 哪个网站生鲜配送做的好处沈阳专业seo关键词优化
  • b站免费版2023最新版本杭州谷歌推广
  • 推销别人做网站有什么作用平台推广网站
  • 用php做网站需要什么美国最新新闻头条
  • 做网站设计的公司有哪些百度图片识别