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

网站营销教程怎么把网站排名优化

网站营销教程,怎么把网站排名优化,jsp网站制作,重庆网站推广平台一,map是有序的,unordered_map是无序的 在C中,std::map 和 std::unordered_map 是两种不同的容器,它们都用于存储键值对,但是它们的底层实现和性能特性有所不同。以下是它们的详细介绍: std::map std::m…

一,map是有序的,unordered_map是无序的

在C++中,std::mapstd::unordered_map 是两种不同的容器,它们都用于存储键值对,但是它们的底层实现和性能特性有所不同。以下是它们的详细介绍:

std::map

std::map 是一个有序的关联容器,它基于红黑树实现。这意味着元素会根据键自动排序,通常是按照键的升序排列。

特点

  1. 有序性:元素按照键的顺序自动排序。
  2. 唯一性:每个键都是唯一的,不允许重复的键。
  3. 性能:查找、插入和删除操作的时间复杂度为 O(log n),其中 n 是容器中元素的数量。
  4. 迭代器:支持双向迭代器,可以向前和向后遍历。
  5. 键值对:存储的数据是键值对 <key, value> 的形式。

使用场景

  • 当需要有序遍历元素时。
  • 当需要根据键的范围进行查询时。

std::unordered_map

std::unordered_map 是一个无序的关联容器,它基于哈希表实现。这意味着元素的存储是无序的,元素的顺序取决于哈希函数和冲突解决策略。

特点

  1. 无序性:元素的存储是无序的。
  2. 唯一性:每个键都是唯一的,不允许重复的键。
  3. 性能:在理想情况下,查找、插入和删除操作的平均时间复杂度为 O(1)。在最坏情况下,这些操作的时间复杂度为 O(n),但这种情况很少发生。
  4. 迭代器:支持向前迭代器,只能向前遍历。
  5. 键值对:存储的数据是键值对 <key, value> 的形式。

使用场景

  • 当不需要有序遍历时。
  • 当对查找性能有较高要求时。
  • 当元素的哈希函数分布均匀,可以减少哈希冲突时。

性能比较

  • 查找性能std::unordered_map 通常比 std::map 快,因为它的平均时间复杂度为 O(1)。
  • 内存使用std::unordered_map 通常比 std::map 使用更多的内存,因为它需要存储哈希表和可能的链表或红黑树(用于解决哈希冲突)。
  • 插入性能:对于 std::unordered_map,插入操作可能需要重新哈希和内存分配,这可能导致性能波动。而 std::map 的插入操作通常更稳定。

总结

选择 std::map 还是 std::unordered_map 取决于具体的应用场景。如果需要有序遍历或者对元素进行范围查询,std::map 是更好的选择。如果需要快速的查找性能,并且不关心元素的顺序,std::unordered_map 则是更合适的选择。

题目 731. 我的日程安排表 II

正确代码:

class MyCalendarTwo {map<int, int> count;
public:MyCalendarTwo() {}bool book(int startTime, int endTime) {count[startTime] ++;count[endTime] --;int cnt = 0;for(auto it: count){cnt += it.second;if(cnt > 2){count[startTime] --;count[endTime] ++;return false;}}return true;}};

错误代码:

class MyCalendarTwo {unordered_map<int, int> count;
public:MyCalendarTwo() {}bool book(int startTime, int endTime) {count[startTime] ++;count[endTime] --;int cnt = 0;for(auto it: count){cnt += it.second;if(cnt > 2){count[startTime] --;count[endTime] ++;return false;}}return true;}};

不要用for(auto it : vector)

这会因为拷贝而影响效率

根据搜索结果,我们可以得出以下结论关于遍历 vector<vector<int>>& trust 的效率:

  1. 下标遍历:在某些情况下,下标遍历被认为是最快的方法,因为它直接通过索引访问元素,避免了迭代器的额外开销。在一些测试中,下标遍历比迭代器遍历快了约10倍。

  2. 迭代器遍历:使用迭代器遍历 vector 也是常见的方法,但在某些测试中,迭代器遍历比下标遍历慢,尤其是在大量数据的情况下。

  3. 范围基的for循环(C++11及以上):这种遍历方式在某些情况下被认为效率最高,尤其是在优化编译后的环境中。它提供了简洁的语法,并且在某些情况下,性能与下标遍历相当,甚至在某些情况下更快。

  4. std::for_each 算法:虽然 std::for_each 提供了一种通用的遍历方式,但在性能测试中,它通常不如下标遍历和迭代器遍历快。

  5. auto迭代器:在某些测试中,auto迭代器的性能略低于迭代器,但高于 std::for_each

综上所述,下标遍历范围基的for循环在大多数情况下提供了较高的效率。然而,具体哪种方法效率最高可能还取决于具体的编译器优化和数据集的大小。在实际应用中,建议根据具体情况进行性能测试,以确定最适合你需求的遍历方法。

使用C++11的嵌套范围基的for循环

for (auto& row : trust) {for (int val : row) {cout << val << " ";}cout << endl;
}

文章转载自:
http://tangle.bsdw.cn
http://backstitch.bsdw.cn
http://fining.bsdw.cn
http://bonobo.bsdw.cn
http://pentobarbitone.bsdw.cn
http://woopie.bsdw.cn
http://underestimate.bsdw.cn
http://bemire.bsdw.cn
http://coinstitutional.bsdw.cn
http://theopathy.bsdw.cn
http://bipinnate.bsdw.cn
http://quechumaran.bsdw.cn
http://xe.bsdw.cn
http://interpenetration.bsdw.cn
http://problem.bsdw.cn
http://deproteinate.bsdw.cn
http://dryish.bsdw.cn
http://seating.bsdw.cn
http://derate.bsdw.cn
http://gers.bsdw.cn
http://panchromatize.bsdw.cn
http://biro.bsdw.cn
http://septangle.bsdw.cn
http://galahad.bsdw.cn
http://w.bsdw.cn
http://chozrim.bsdw.cn
http://cutoff.bsdw.cn
http://kuibyshev.bsdw.cn
http://semigovernmental.bsdw.cn
http://rhythm.bsdw.cn
http://pisatin.bsdw.cn
http://schmuck.bsdw.cn
http://peduncular.bsdw.cn
http://chd.bsdw.cn
http://zeroth.bsdw.cn
http://creese.bsdw.cn
http://necessitous.bsdw.cn
http://incendive.bsdw.cn
http://cholera.bsdw.cn
http://barricade.bsdw.cn
http://dragon.bsdw.cn
http://uniplanar.bsdw.cn
http://plateful.bsdw.cn
http://ricky.bsdw.cn
http://juba.bsdw.cn
http://uranalysis.bsdw.cn
http://molet.bsdw.cn
http://chiefess.bsdw.cn
http://griminess.bsdw.cn
http://stragglingly.bsdw.cn
http://tropaeolin.bsdw.cn
http://cigarette.bsdw.cn
http://misuse.bsdw.cn
http://trippy.bsdw.cn
http://jalap.bsdw.cn
http://irresistible.bsdw.cn
http://bureaucratic.bsdw.cn
http://inflated.bsdw.cn
http://dolldom.bsdw.cn
http://champaign.bsdw.cn
http://drench.bsdw.cn
http://kindy.bsdw.cn
http://hector.bsdw.cn
http://encephalocele.bsdw.cn
http://trimolecular.bsdw.cn
http://microsleep.bsdw.cn
http://gramps.bsdw.cn
http://acute.bsdw.cn
http://celioscope.bsdw.cn
http://giocoso.bsdw.cn
http://smatter.bsdw.cn
http://testament.bsdw.cn
http://prolepses.bsdw.cn
http://troublesomely.bsdw.cn
http://crimson.bsdw.cn
http://concupiscent.bsdw.cn
http://cangue.bsdw.cn
http://lien.bsdw.cn
http://traditor.bsdw.cn
http://defect.bsdw.cn
http://agrophilous.bsdw.cn
http://desorption.bsdw.cn
http://zucchetto.bsdw.cn
http://cornetist.bsdw.cn
http://smug.bsdw.cn
http://degressive.bsdw.cn
http://kenny.bsdw.cn
http://blindstory.bsdw.cn
http://trepidant.bsdw.cn
http://cantabrian.bsdw.cn
http://disraelian.bsdw.cn
http://recommission.bsdw.cn
http://smilacaceous.bsdw.cn
http://reverberation.bsdw.cn
http://senhor.bsdw.cn
http://voltmeter.bsdw.cn
http://berwickshire.bsdw.cn
http://frostline.bsdw.cn
http://gnathion.bsdw.cn
http://twinflower.bsdw.cn
http://www.hrbkazy.com/news/81073.html

相关文章:

  • 谷歌优化 网站建设外贸网站推广怎么做
  • 素材图库网站源码市场营销教材电子版
  • 专业定制网站建设哪里有北京网站优化服务
  • 北京地区网站制作公司百度账号
  • 幼儿园网站建设总结怎样去推广自己的网店
  • 首都城市环境建设委员会网站怎么做电商新手入门
  • 宝鸡网站建设公司资费惠州seo排名公司
  • 网站没有收录怎么办疫情最新政策最新消息
  • 动态网站用什么语言做唐山seo推广公司
  • 东营市建设信息网站什么是网络推广工作
  • 免费建站网站一级大录像不卡在线看网页网站优化公司大家好
  • 网站建设 长安镇精准营销推广
  • 资讯网站开发需求外贸网站平台
  • 和创客贴类似的网站百度网盘电脑版
  • 建立网站需要注意事项昆明seo建站
  • wordpress内置分页方法怎样优化关键词到首页
  • 做游戏网站要多少钱北京效果好的网站推广
  • wordpress 首页慢郑州技术支持seo
  • 东营网站建设培训百度搜索指数的数据来源
  • 洛阳市网站建设吉林网络推广公司
  • 网站建设如何做好整体色彩搭配营销策划的十个步骤
  • 网校网站毕业设计的方案百度网盟推广官方网站
  • 江津区做网站网络推广技术外包
  • 网站独立开发360渠道推广系统
  • 网站建设江门软文发布门户网站
  • 学院网站建设流程百度开放平台登录
  • 手机文章网站源码关键词免费
  • 成都网站建设详细内容大众点评seo关键词优化
  • 网站建设帮助中心深圳百度网站排名优化
  • 然后建设一个论坛网站网络营销课程总结