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

建网站需要什么手续动漫制作专业电脑配置要求

建网站需要什么手续,动漫制作专业电脑配置要求,网站建设 中企动力长沙,深圳网站建设 设计创公司文章目录 listvectormapset性能比较总结 list 列表#xff08;list#xff09;是C STL中的一种容器类型#xff0c;它是一个双向链表#xff0c;可以在任意位置高效地添加、删除、移动元素。 以下是一些常用的列表操作#xff1a; 创建列表 #include list std… 文章目录 listvectormapset性能比较总结 list 列表list是C STL中的一种容器类型它是一个双向链表可以在任意位置高效地添加、删除、移动元素。 以下是一些常用的列表操作 创建列表 #include list std::listint myList;添加元素 myList.push_back(1); // 在列表尾部添加元素 myList.push_front(2); // 在列表头部添加元素 myList.insert(myList.begin(), 3); // 在指定位置插入元素删除元素 myList.pop_back(); // 删除尾部元素 myList.pop_front(); // 删除头部元素 myList.erase(myList.begin()); // 删除指定位置的元素遍历列表 std::listint::iterator it; for(itmyList.begin(); it!myList.end(); it) {std::cout *it ; }获取列表大小 std::cout myList.size() std::endl;判断列表是否为空 if(myList.empty()) {std::cout List is empty std::endl; }清空列表 myList.clear();列表排序 myList.sort(); // 默认从小到大排序 myList.sort(std::greaterint()); // 从大到小排序反转列表 myList.reverse();以上是一些常用的列表操作更多操作可以参考C STL中list的文档。 vector C中的vector是STL标准模板库中的容器之一用于存储动态大小的元素序列。 以下是vector的常见操作 创建一个空的vector vectorint vec; // 创建一个空的vectorintvectorstring strVec; // 创建一个空的vectorstring在vector末尾添加元素 vec.push_back(1); // 在vector末尾添加一个int类型元素1strVec.push_back(hello); // 在vector末尾添加一个string类型元素hello访问vector中的元素 int firstElem vec[0]; // 访问第一个元素string lastElem strVec.back(); // 访问最后一个元素获取vector的大小 int size vec.size(); // 获取vector中元素的个数bool isEmpty strVec.empty(); // 判断vector是否为空删除vector中的元素 vec.pop_back(); // 删除vector末尾的一个元素strVec.erase(strVec.begin() 2); // 删除vector中索引为2的元素清空vector中所有元素 vec.clear(); // 清空vector中所有元素strVec.resize(0); // 将vector的大小设置为0遍历vector中的所有元素 for (int i 0; i vec.size(); i) {cout vec[i] ;}for (auto s : strVec) {cout s ;}第二种方法可以使用C11中的range-based for循环。 map C中的map是STL标准模板库中的关联容器之一用于存储键值对。 以下是map的常见操作 创建一个空的map mapstring, int myMap; // 创建一个空的map键为string类型值为int类型在map中插入键值对 myMap.insert(make_pair(apple, 10)); // 在map中插入键为apple值为10的键值对myMap[banana] 20; // 在map中插入键为banana值为20的键值对访问map中的元素或查找键 int value myMap[apple]; // 访问键为apple的值auto it myMap.find(banana); // 查找键为banana的迭代器if (it ! myMap.end()) {int value it-second; // 获取迭代器指向的值}获取map的大小 int size myMap.size(); // 获取map中键值对的个数bool isEmpty myMap.empty(); // 判断map是否为空删除map中的键值对 myMap.erase(apple); // 删除键为apple的键值对auto it myMap.find(banana);if (it ! myMap.end()) {myMap.erase(it); // 删除迭代器指向的键值对}清空map中的所有键值对 myMap.clear(); // 清空map中的所有键值对遍历map中的所有键值对 for (auto it myMap.begin(); it ! myMap.end(); it) {cout it-first : it-second endl;}for (auto elem : myMap) {cout elem.first : elem.second endl;}第二种方法可以使用C11中的range-based for循环。 set C中的set是STL标准模板库中的关联容器之一用于存储不重复的元素并按照一定顺序进行排序。 以下是set的常见操作 创建一个空的set setint mySet; // 创建一个空的set元素为int类型在set中插入元素 mySet.insert(10); // 在set中插入元素10mySet.insert(20); // 在set中插入元素20mySet.insert(30); // 在set中插入元素30访问set中的元素或查找元素 auto it mySet.find(20); // 查找元素20的迭代器if (it ! mySet.end()) {int value *it; // 获取迭代器指向的值}获取set的大小 int size mySet.size(); // 获取set中元素的个数bool isEmpty mySet.empty(); // 判断set是否为空删除set中的元素 mySet.erase(20); // 删除元素20auto it mySet.find(30);if (it ! mySet.end()) {mySet.erase(it); // 删除迭代器指向的元素}清空set中的所有元素 mySet.clear(); // 清空set中的所有元素遍历set中的所有元素 for (auto it mySet.begin(); it ! mySet.end(); it) {cout *it endl;}for (auto elem : mySet) {cout elem endl;}第二种方法可以使用C11中的range-based for循环。 性能比较 使用相同的算法对vector、list和set进行插入数据和删除数据操作 //insert number to list,increasing sort void insert_l(int arg){listint::iterator iter;for(iter gl.begin();iter!gl.end();iter){//ergodic listif(arg*iter){gl.insert(iter,arg);//insert numberbreak;}}if(iter gl.end()){gl.push_back(arg);//push back number} } //delete number from list void delete_l(){default_random_engine e1(seed);//new random engine with seedwhile(!gl.empty()){uniform_int_distributionunsigned u(0,gl.size()-1);listint::iterator iter gl.begin();//using iteratorfor(int i0;iu(e1);i){iter;}gl.erase(iter);//delete number} }结果 Data SizeVector Time (s)List Time (s)100000.2812570.527096500006.79223.202910000026.824107.94715000060.0688333.013200000106.619807.597 使用set在插入和删除200 000数据总共只用了2.2331秒、而vector用了106.619秒、list用了807.597秒 总结 vector的遍历性能明显比list要快。这是因为vector的元素是存储在一块连续的内存空间中可以直接通过指针进行访问。而list的元素是通过链表相互连接起来的无法直接访问需要遍历整个链表才能访问某个元素因此遍历性能相对较低。 vector和list在不同场景下有不同的优劣势需要根据具体情况选择适合的容器。例如需要随机访问或者高效的遍历操作时可以选择vector需要频繁的插入或者删除操作时可以选择list。 set是基于红黑树实现的红黑树是一种自平衡的二叉查找树它具有快速的插入、删除和查找操作的时间复杂度因此在处理大量数据时set的性能表现会更好。
http://www.dnsts.com.cn/news/26701.html

相关文章:

  • 网站的元素电子政务网站建设公司排行榜
  • 网站 wordpress梅州专业网站建设教程
  • 纪实摄影网站推荐wordpress xiu 5.2
  • 国外案例网站做ic芯片的要去哪个网站
  • 上海做产地证在哪个网站录入大渡口发布
  • 网站空间速度快宣讲家网站李慎明两学一做
  • 门户网站整改情况报告有哪些网站可以兼职做笔译
  • 个人网站能放什么内容品牌建设的目的
  • 网站锚文本链接怎么做网站关键词优化服务
  • 做网站包括图片设计吗多个wordpress共用一个数据库前缀
  • 违禁网站用什么浏览器宝山网站建设服务
  • 电商网站建设需要多少钱优秀旅游网站设计
  • 兰州seo整站优化服务商建立网站 数据分析
  • 长业建设网站台州网站建设团队
  • 马蜂窝网站建设大学科技园网站建设
  • 网站 制作 中心最近免费中文在线电影
  • 网站开发用盗版犯法网站内容建设运维服务
  • 株洲做网站多少钱wordpress文字排版
  • 网站快速排名优化方法深圳有几个区哪个区最繁华
  • 网站建设和空间seo推广有哪些
  • 网页网站建设软件制作视频特效
  • 佛山做网站那家好电子平台网站
  • 济南网站建设服务上海开本建设工程有限公司
  • 网站建设的学习百度注册公司网站
  • 利用网上菜谱做网站项目管理软件开源
  • 沙元浦做网站的公司自己编程制作app软件
  • 网站做蜘蛛池有用吗wordpress新建会员主页
  • 严什么的烟 网站建设做食品的网站设计要注意
  • 移动端网站怎么做外链河北seo推广平台
  • 建设银行的网站是多少西安市建设工程信息网诚信信息平台诚信承诺书在哪儿下载