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

网站服务器维护费用网页游戏排行榜前十平台

网站服务器维护费用,网页游戏排行榜前十平台,电脑网页翻译,网站首页快速收录一#xff0c;map是有序的#xff0c;unordered_map是无序的 在C中#xff0c;std::map 和 std::unordered_map 是两种不同的容器#xff0c;它们都用于存储键值对#xff0c;但是它们的底层实现和性能特性有所不同。以下是它们的详细介绍#xff1a; std::map std::m…一map是有序的unordered_map是无序的 在C中std::map 和 std::unordered_map 是两种不同的容器它们都用于存储键值对但是它们的底层实现和性能特性有所不同。以下是它们的详细介绍 std::map std::map 是一个有序的关联容器它基于红黑树实现。这意味着元素会根据键自动排序通常是按照键的升序排列。 特点 有序性元素按照键的顺序自动排序。唯一性每个键都是唯一的不允许重复的键。性能查找、插入和删除操作的时间复杂度为 O(log n)其中 n 是容器中元素的数量。迭代器支持双向迭代器可以向前和向后遍历。键值对存储的数据是键值对 key, value 的形式。 使用场景 当需要有序遍历元素时。当需要根据键的范围进行查询时。 std::unordered_map std::unordered_map 是一个无序的关联容器它基于哈希表实现。这意味着元素的存储是无序的元素的顺序取决于哈希函数和冲突解决策略。 特点 无序性元素的存储是无序的。唯一性每个键都是唯一的不允许重复的键。性能在理想情况下查找、插入和删除操作的平均时间复杂度为 O(1)。在最坏情况下这些操作的时间复杂度为 O(n)但这种情况很少发生。迭代器支持向前迭代器只能向前遍历。键值对存储的数据是键值对 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 {mapint, 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_mapint, 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) 这会因为拷贝而影响效率 根据搜索结果我们可以得出以下结论关于遍历 vectorvectorint trust 的效率 下标遍历在某些情况下下标遍历被认为是最快的方法因为它直接通过索引访问元素避免了迭代器的额外开销。在一些测试中下标遍历比迭代器遍历快了约10倍。 迭代器遍历使用迭代器遍历 vector 也是常见的方法但在某些测试中迭代器遍历比下标遍历慢尤其是在大量数据的情况下。 范围基的for循环C11及以上这种遍历方式在某些情况下被认为效率最高尤其是在优化编译后的环境中。它提供了简洁的语法并且在某些情况下性能与下标遍历相当甚至在某些情况下更快。 std::for_each 算法虽然 std::for_each 提供了一种通用的遍历方式但在性能测试中它通常不如下标遍历和迭代器遍历快。 auto迭代器在某些测试中auto迭代器的性能略低于迭代器但高于 std::for_each。 综上所述下标遍历和范围基的for循环在大多数情况下提供了较高的效率。然而具体哪种方法效率最高可能还取决于具体的编译器优化和数据集的大小。在实际应用中建议根据具体情况进行性能测试以确定最适合你需求的遍历方法。 使用C11的嵌套范围基的for循环 for (auto row : trust) {for (int val : row) {cout val ;}cout endl; }
http://www.dnsts.com.cn/news/269795.html

相关文章:

  • 网站服务器管理系统编程培训机构哪里好
  • 个人网站方案建设书怎么做网络棋牌网站
  • wordpress首页标签页seo站长工具下载
  • 百度资讯天津seo
  • 做网站的目标智趣游戏型网站开发
  • 公司手机网站开发wordpress 主题 数据
  • 佛山提供网站设计方案公司长沙建站公司网站
  • 怎么免费做带音乐的网站电商平台设计电商网站建设
  • 做平面什么网站的素材不侵权中山排名推广
  • 网站建设的机构人力外包项目发布平台
  • 团购商城网站建设方案wordpress删除自定义分类
  • 昆明网站制作工具专业做室内设计的网站有哪些内容
  • 上海正规网站制作价格网站导航栏垂直
  • 响应式网站做优化好吗什么网站可以做会计题目
  • 建筑培训网站有哪些上海网易
  • 微小店网站建设比较好0点开服的网页游戏
  • 作风建设方面的网站wordpress主题 免费 自媒体
  • 长沙企业网站建设报价wordpress 刷单
  • 浙江做网站公司有哪些网站主视觉
  • 无锡网站制作无锡做网站网站程序建设
  • 商务网站建设调研网站建设骗子公司
  • 网站建设如何跑业务tiktok官网版下载
  • 东莞seo整站优化北京建筑人才招聘网
  • 电子商务网站的设计工具wordpress忘记密码如何重新安装
  • 网站地图是怎么做的便宜建网站
  • 免费网站建设方案运动服饰网站建设项目规划书
  • 网络项目资源网seo网络推广优化教程
  • 网站赚钱方法wordpress 主题设置
  • 适用于手机的网站怎么建设哪个网站可以做司考题
  • 做渲染的网站莱芜网站建设费用