网站多久需要维护用服务器建立网站

web/2025/9/25 16:17:33/文章来源:
网站多久需要维护,用服务器建立网站,贵州公明建设投资咨询有限公司官方网站,wordpress安装网站说起map和set#xff0c;想必我们都学过红黑树了吧#xff0c;map和set就是红黑树的一个应用领域。它的底层就是由红黑树来实现的。下面简单说一下map和set的使用吧。 首先#xff0c;有一个栗子是这样的#xff0c;让我们统计出每种水果出现的次数。 我们会想到怎么解决…说起map和set想必我们都学过红黑树了吧map和set就是红黑树的一个应用领域。它的底层就是由红黑树来实现的。下面简单说一下map和set的使用吧。 首先有一个栗子是这样的让我们统计出每种水果出现的次数。 我们会想到怎么解决的。关于map我们知道当你插入同样的key值时它就不会将要插入的key值插入到map中。但是我们还知道map是有俩个参数的一个是插入的key值另一个value可以用来统计key值出现的次数。 关于统计水果次数的问题我们主要有以下几种方法 mapstring,int countMap;string strs[] {苹果,香蕉,橘子,苹果,苹果,香蕉};//1.从头到尾遍历看是否有数组中的值没有则插入有则使secondfor(int i 0; i sizeof(strs)/sizeof(strs[0]); i){mapstring,int::iterator it countMap.find(strs[i]);if(it ! countMap.end()){it-second;}else{countMap.insert(make_pair(strs[i],1));}}mapstring,int::iterator it1 countMap.begin();while(it1 ! countMap.end()){coutit1-first:it1-secondendl;it1;} //2.检测插入的返回值pairmapstring,int::iterator,bool的second是否为false来确定pairmapstring,int::iterator,bool ret;for(int i 0; i sizeof(strs)/sizeof(strs[0]);i){ret countMap.insert(make_pair(strs[i],1));if(ret.second false)ret.first-second;}mapstring,int::iterator it1 countMap.begin();while(it1 ! countMap.end()){coutit1-first:it1-secondendl;it1;} //3.直接使用map重载的[]for(int i 0; i sizeof(strs)/sizeof(strs[0]);i){countMap[strs[i]];}mapstring,int::iterator it1 countMap.begin();while(it1 ! countMap.end()){coutit1-first:it1-secondendl;it1;} 运行结果 这里需要注意的几点是 1.首先使用插入的时候是需要插入一个pair结构体因为map底层的value是一个pair结构体里边成员又有first和second因此需要使用make_pair来构造insert的参数。 2.在使用第三种方法的时候我们使用到map重载的operator[]说一下operator[]的函数: (*((this-insert(make_pair(x,T()))).first)).second 分解一下上边的operator[]的式子 this-insert(make_pair(x,T()))返回值为pairiterator,bool结构体 ((this-insert(make_pair(x,T()))).first)表示pair结构体中的first即指向一个pair结构体的迭代器此pair结构体中有key和value也即所谓的first和second (*((this-insert(make_pair(x,T()))).first)).second表示取迭代器中指向的pair的second 说到map我们还有一个multimap是用来插入冗余的值比如有相同的key值的时候对于map而言它就不会将其插入而对于multimap而言就会插入。典型的例子为字典我们英译汉的时候同一个英语单词代表着不同的意思这时multimap就会将每一个key值对应的不同的value值都会插入并且以排好序的方式显示。 1.比如map来显示字典的时候 typedef mapstring,string Dict;typedef mapstring,string::iterator DictIt;Dict dict;dict.insert(make_pair(left,左边));dict.insert(make_pair(right,右边));dict.insert(make_pair(left,剩余));DictIt it dict.begin();while (it ! dict.end()){coutit-first:it-secondendl;it;} 结果为 2.用multimap来实现字典的时候 typedef multimapstring,string Dict;typedef multimapstring,string::iterator DictIt;Dict dict;dict.insert(make_pair(left,左边));dict.insert(make_pair(right,右边));dict.insert(make_pair(left,剩余));DictIt it dict.begin();while (it ! dict.end()){coutit-first:it-secondendl;it;} 运行结果 综上所述 1map和multimap可以通过key来找value也可通过key排序 2当我们查找某个key值的时候发现有多个相同的key值此时不知道it该指向哪个pair结构体这里要说明的是它将返回中序遍历的第一个key值 验证一下 typedef multimapstring,string Dict;typedef multimapstring,string::iterator DictIt;Dict dict;dict.insert(make_pair(left,左边));dict.insert(make_pair(right,右边));dict.insert(make_pair(left,剩余));DictIt it dict.begin();it dict.find(left);dict.erase(it);it dict.begin();while (it ! dict.end()){coutit-first:it-secondendl;it;} 在这里我们找到一个key值为left的pair此时删除它后再打印一下发现得出的是比它大的value值。 说完map和multimap后与之对应的还有set和multiset。set和multiset是用来判断这个值存在或者不存在。其次也可以用来排序。还有一个特点是过滤去重。 1.检测其存在或者不存在 void TestSet() {typedef setstring MySet;typedef setstring::iterator MySetIt;MySet myset;string strs[] {苹果,香蕉,橘子,西瓜,草莓,樱桃};for(int i 0; i sizeof(strs)/sizeof(strs[0]); i){myset.insert(strs[i]);}MySetIt it myset.begin();if(it myset.find(哈密瓜))cout哈密瓜存在endl;elsecout哈密瓜不存在endl;cout存在的其他水果为endl;it myset.begin();while(it ! myset.end()){cout*itendl;it;} } 运行结果 2.排序和去重 typedef setint MySet;typedef setint::iterator MySetIt;MySet myset;for(int i 10; i 0; i--)myset.insert(i);myset.insert(5);MySetIt it myset.begin();while(it ! myset.end()){cout*itendl;it;} 运行结果 对于过滤来说就是如果有相同的key值它就会去掉相同的key只插入一个到set中。 这里multiset的意义和multimap差不多也是处理冗余的数据。使用方法类似。 对于map和set的底层是怎么实现的呢。它是通过写的一个红黑树。主要的区别是 里边的value_type的意义对于map来说value_type指的是一个pair的结构体结构体成员为key和value而对于set来说value_type指的是key值。 在红黑树中用了枚举来表示颜色。而在源码的红黑树中使用了bool值来代替红黑俩种颜色 我们还知道map和multimapset和multiset也有区别底层是怎么用红黑树的呢。它是插入的时候分别对红黑树的插入分为唯一插入(insert_unique)和相等插入(insert_equal)相等插入就是对冗余数据的考虑。 set的插入 map中value_type: typedef pairconst Key, T value_type; set中value_type: typedef Key value_type; set的插入 typedef pairiterator, bool pair_iterator_bool; pairiterator,bool insert(const value_type x) { pairtypename rep_type::iterator, bool p t.insert_unique(x); return pairiterator, bool(p.first, p.second);} map的插入 pairiterator,bool insert(const value_type x) { return t.insert_unique(x); } multimap的插入 iterator insert(const value_type x) { return t.insert_equal(x); } multiset的插入 iterator insert(const value_type x) { return t.insert_equal(x);} 还可以进行相关的区间的插入删除某个位置的插入删除等操作。 小姿势 lower_bound : 用来找到比key值大的数 upper_bound : 用来找到比key值大的数

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/81708.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

课程培训网站建设百度推广一年多少钱

这个月 Go 语言就将迎来它的10岁生日了,于是我们特地列出了10条让你可以开心使用 Go 语言的理由。 作者:4bytes 这个月 Go 语言就将迎来它的10岁生日了,于是我们特地列出了10条让你可以开心使用 Go 语言的理由。 Map 集合/映射默认使用0值 …

汽车网站国外中文网站排行榜单

中国教育在线讯 辞职创业,还是维持现在稳定的工作?这个是很多上班族都纠结过的问题,一边是稳定的工作和收入,一边是创业当老板的诱惑,真是很难选择。 其实,如果安排合理是可以“鱼与熊掌”兼得的,沈阳市古…

上海企业网站建设价格深圳建站公司是国企吗

专栏简介:本专栏作为Rust语言的入门级的文章,目的是为了分享关于Rust语言的编程技巧和知识。对于Rust语言,虽然历史没有C、和python历史悠远,但是它的优点可以说是非常的多,既继承了C运行速度,还拥有了Java…

网站制作网站设计jsp网站开发标准

目录 一、启动程序的入口 二、初始化硬件浮点单元fpu 三、全局指针 四、设置系统栈 五、设置内存 六、设置Cache 七、配置协处理器 八、初始化TLB 一、启动程序的入口 FRAME(_start, sp, 0, ra):这一行是一个汇编宏,用于创建一个函数框架。_star…

嘉兴建设工程造价信息网站wordpress怎么ftp建站

邮件营销效果好的莫过于QQ邮件营销,QQ邮件收件会自动弹窗提示,邮件的阅读率是所有目前邮箱中最高的,而QQ邮件规则使用的叶贝思反垃圾邮件算法会有效防止一般的群发邮件,一米智能QQ邮件营销系统针对性的解决了这个难题。另外我们对…

以下区域不属于官方网站网页设计岗位职责

项目说明本项目是我2019年7月份的实习工作的**展示与记录**:把倾斜的表格旋转水平;制作5000张表格数据集,需要标注每一个单元格,并实现单元格检测第一项比较简单,仿射变换、透视变换已经很成熟了,关键是第二…

摄影网站制作软件中国做视频网站有哪些

文章目录 Deque 介绍Deque 使用双端队列普通队列栈 总结 在 Java 中,Deque 接口是一个双端队列(double-ended queue)的数据结构,它支持在两端插入和移除元素。Deque 是 “Double Ended Queue” 的缩写,而且它可以同时充…

网站负责人核验照片o2o好网站

修剪二叉搜索树 给定一个二叉搜索树,同时给定最小边界L 和最大边界 R。通过修剪二叉搜索树,使得所有节点的值在[L, R]中 (R>L) 。你可能需要改变树的根节点,所以结果应当返回修剪好的二叉搜索树的新的根节点。 ​ 最直接的想法&#xff0…

外贸建站深圳网站关键词怎么优化排名

今日主要内容 while循环:判断条件是否成立。 如果成立执行循环体。然后再次判断条件,。。。。。直到条件不成立的时候跳出循环 语法: while 条件:   循环体 else:   当条件不成立的时候执行这里 和break没关系 break 终止当前循环 continue 停止当前…

相城网站建设商务定制网站

目录 一、资源池 pool 管理 1.创建一个 Pool 资源池 2.查看集群 Pool 信息 3.查看资源池副本的数量 4.查看 PG 和 PGP 数量 5.修改 pg_num 和 pgp_num 的数量为 128 6.修改 Pool 副本数量为 2 7.修改默认副本数为 2 8.删除 Pool 资源池 8.1修改配置文件 8.2推送 ceph…

网站建设实训教程珠海制作企业网站

一、Linux命令基础 1、ls、ll命令——展示数据 ①ls命令——平铺展示数据 其中ls命令以平铺的方式展现数据 ②ll命令——列表展示数据 ll命令以列表的方式展现数据 -a选项,表示:all的意思,即列出全部文件(包含隐藏的文件/文件夹…

c 手机网站开发工具discuz 门户网站模板

client-go是由k8s发布且维护的专门用于开发者和kubernetes交互的客户端库。它支持对k8s资源的CRUD操作(create、read、update、delete),事件监听和处理,访问kubernetes集群的上下文和配置。 client go是独立于kubernetes集群之外…

摄影师个人网站模板网站上线如何做公司名字

2024第六届环境科学与可再生能源国际会议 能源 (ESRE 2024) 即将举行 2024 年 6 月 28 日至 30 日在德国法兰克福举行。ESRE 2024 年 旨在为研究人员、从业人员和专业人士提供一个论坛 从工业界、学术界和政府到研究和 发展,环境科学领域的专…

优化网站内容3 建设营销型网站流程图

准备工作 1. 注册 npm 账号 还没有 npm 账号?去官网注册: https://www.npmjs.com 需要记住用户名、密码、邮箱,后面需要用到。 2. 查看本地 npm 镜像,如果不是默认的,需要改回来 npm config get registry重置镜像路…

58同城枣庄网站建设企业网站建设方案书模板

Docker概述 ​ —— Notes from WAX through KuangShen 准确来说,这是一篇学习笔记!!! Docker为什么出现 一款产品:开发—上线 两套环境!应用环境如何铜鼓? 开发 – 运维。避免“在我的电脑…

装修行业网站建设wordpress free cdn

目录 一、基础插件二、AI三、Rust插件 一、基础插件 Chinese (Simplified) (简体中文) 此中文(简体)语言包为 VS Code 提供本地化界面。 Native Debug 本地VSCode调试器。 CodeLLDB 一个由LLDB提供支持的本地调试器。调试c, Rust等编译语言…

广告传媒公司经营范围有哪些seo怎么做整站排名

学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您: 想系统/深入学习某技术知识点… 一个人摸索学习很难坚持,想组团高效学习… 想写博客但无从下手,急需…

受欢迎的模板网站建设南宁seo站内关键词优化

银行卡快捷支付的应用范围非常广泛,几乎涵盖了现代生活中的各种支付场景。以下是银行卡快捷支付的主要应用范围: 1. 线上购物 在电子商务平台、在线商城或移动应用上,用户可以使用银行卡快捷支付进行在线购物支付。通过选择预先绑定的银行卡…

网站开发 兼职布吉网站建设技术托管

来源:机器之心摘要:外媒最近频传的「华为同意卖5G基带给苹果」,让科技界的人们浮想联翩。刚刚,华为终于有了较为官方的回应:华为总裁任正非在接受CNBC的时候表示,华为对于出售5G芯片给苹果用于iPhone「持开…

建站平台哪家好人才招聘网最新招聘2022

&#xff08;1&#xff09;快速入门 SpringBoot形式创建 Maven形式创建&#xff1a; 加入依赖&#xff1a; 创建启动类&#xff1a; 设置头文件 就想Jsp的<%Page %>一样 &#xff0c;Thymeleaf的也要引入标签规范。不加这个虽然不影响程序运行&#xff0c;但是你的idea…