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

网站优化怎样的九江seo优化

网站优化怎样的,九江seo优化,怎么自己做一个公众号,龙海网络推广一、了解 set 是 C 标准模板库(STL)中提供的有序关联容器之一。基于红黑树(Red-Black Tree)实现,用于存储一组唯一的元素,并按照元素的值进行排序。 set的特性 唯一性 键是唯一的。无重复。 有序性 按升序…

一、了解

set 是 C++ 标准模板库(STL)中提供的有序关联容器之一。基于红黑树(Red-Black Tree)实现,用于存储一组唯一的元素,并按照元素的值进行排序。

  • set的特性
    • 唯一性
      • 键是唯一的。无重复。
    • 有序性
      • 升序排列,因为红黑树的平衡性质。可以自定义排序规则
    • 插入元素
      • 如果元素已存在,就不会进行了
    • 不可修改键值
      • 键值都是const的。如果要修改,先删除要修改的元素,再插入要修改后的值。
  • set的头文件
#include<set>

二、初始化

set<typename>name
set<typename,自定义排序规则>name
  • 例子
std::set<int> s1;                   // 默认升序:{1, 2, 3}
std::set<int, std::greater<int>> s2; // 降序:{3, 2, 1}
  • 自定义排序
struct Person {std::string name;int age;
};// 定义比较仿函数(按年龄升序)
struct CompareAge {bool operator()(const Person& a, const Person& b) const {return a.age < b.age;}
};std::set<Person, CompareAge> peopleSet;
peopleSet.insert({"Alice", 25});
peopleSet.insert({"Bob", 30});

三、常用函数

1、总结

在这里插入图片描述

2、例子

  • 首先是这里用到的头文件
#include <iostream>
#include<set>
using namespace std;

2.1、插入操作

  • insert(x)
    • 插入某一个常数或变量
int main(){set<int>set1={1,2,3,4};set1.insert(3);for(auto i: set1){cout<<i<<" "<<endl;}
/*
1
2
3
4 */
}
  • insert( other_set_first, other_set_end)
    • 插入另一个set的范围
int main(){set<int>set1={1,2,3,4};set<int>set2={7,6,5};set1.insert(set2.begin(),set2.end());for(auto i: set1){cout<<i<<" ";}
/*
1 2 3 4 5 6 7*/
}
  • insert(pos , x)
    • 在当前set的pos处,插入x
int main(){set<int>set1={1,2,3,4};set<int>set2={7,6,5};set1.insert(set1.begin(),2);for(auto i: set1){cout<<i<<" ";}
/*
1 2 3 4*/
}

2.2、删除操作

  • erase(pos)
    • 删除某一个迭代器位置
int main(){set<int>set1={1,2,3,4};set1.erase(set1.begin());for(auto i: set1){cout<<i<<" ";}
/*
2 3 4*/
}
  • erase(key)
    • 删除特定键值
int main(){set<int>set1={1,2,3,4};set1.erase(2);for(auto i: set1){cout<<i<<" ";}
/*
1 3 4*/
}
  • erase(first , end)
    • 删除当前set的范围
int main(){set<int>set1={1,2,3,4};set1.erase(set1.begin(),++set1.begin());for(auto i: set1){cout<<i<<" ";}
/*
2 3 4*/
}

2.3、访问操作

  • 迭代器访问
    • begin:指向set第一个位置的指针
    • end:指向最后一个元素之后的位置
int main(){set<int>set1={1,2,3,4};auto i =set1.begin();set<int>::iterator it=set1.end();cout<<*i<<endl;//1cout<<*it<<endl;//4
}

2.4、交换操作

  • swap(other_set)
    • 交换2个set
int main(){set<int>set1={1,2,3,4};set<int>set2={3,4};set1.swap(set2);for(auto i: set1){cout<<i<<" ";//3 4}}

2.5、查找操作

  • count(key)
    • 返回key值的个数
int main(){set<int>set1={1,2,3,4};auto i =set1.count(1);cout<<i<<endl;//1}
  • find(key)
    • 返回key位置的迭代器
int main(){set<int>set1={1,2,3,4};auto i =set1.find(1);cout<<*i<<endl;//1}

2.6、容量操作

  • size()
    • 返回元素个数
int main(){set<int>set1={1,2,3,4};auto i =set1.size();cout<<i<<endl;//4}
  • empty()
    • 检查容器是否为空
int main(){set<int>set1={1,2,3,4};if(set1.empty()==0){cout<<"set1有元素"<<endl;//set1有元素}else{cout<<"无元素"<<endl;}
}

2.7、清空操作

  • clear
    • 清空所有元素
int main(){set<int>set1={1,2,3,4};set1.clear();for(auto i: set1){cout<<i<<" ";}}

2.8、lower_bound和upper_bound

  • lower_bound(key)
    • 返回第一个不小于(>=) key 的迭代器
int main(){set<int>set1={1,2,3,4};auto i = set1.lower_bound(2);cout<<*i<<endl;//2
}
  • upper_bound(key)
    • 返回第一个大于 key 的迭代器
int main(){set<int>set1={1,2,3,4};auto i = set1.upper_bound(2);cout<<*i<<endl;//3
}

四、set和map的区别

  • 存储内存
    • set只存储键值
    • map存储键值对
  • 唯一性
    • set的键是唯一的,无重复
    • map键值对,键也是唯一的,但是值可以重复
  • 访问方式
    • set通过迭代器遍历或查找键find(key),并且不能修改键值
    • map通过键直接访问值(m[key] 或 m.at(key))
http://www.dtcms.com/wzjs/152933.html

相关文章:

  • 虚拟主机网站建设晚上偷偷看b站软件推荐
  • 网站被抓取网站建设深圳公司
  • wordpress设计主题网络优化器免费
  • 百度做网站哪里可以学专业做网站官网
  • 权威数据统计网站网站建设报价明细表
  • 邢台信息港房产频道trinseo公司
  • 坂田网站建设公司旺道seo优化软件
  • 大红门做网站宁波网站推广方式
  • 天津关键词自动排名唐山百度seo公司
  • 网站编程工具小程序制作一个需要多少钱
  • 青岛做视频的网站seo技术中心
  • 企业侧备案系统办理网站seo引擎优化方案
  • 做静态网站的软件最新的国际新闻
  • 广东大唐建设网站品牌推广平台
  • 微网站开发技术app推广代理平台
  • 营销型网站建设需要多少钱专业郑州企业网站建设
  • 泰州做网站多少钱关键词排名优化教程
  • 重庆专业网站建设公司网络整合营销推广
  • 免费的动态ppt网站全国十大跨境电商公司排名
  • 好看的网站模板seo精灵
  • wordpress多站点 文章导入百度搜索推广的定义
  • 做第三方网站注意什么免费网站分析seo报告是坑吗
  • 如何用vs2010做网站搭建自己的网站
  • 深圳vi设计内容seo排名工具有哪些
  • 建设执业资格管理中心网站优化系统的软件
  • 国外公司做中国网站正规网站优化推广
  • 简单的企业网站的主页免费收录链接网
  • 网站建设 6万元查询网官网
  • visual studio 网站开发seo需要培训才能找到工作吗
  • 澄海网站建设手机网站建设案例