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

做网站网站制作网络营销 长沙

做网站网站制作,网络营销 长沙,海外代购,武汉建网公司网站建设一、什么是list? Lists are sequence containers that allow constant time insert and erase operations anywhere within the sequence, and iteration in both directions. 列表是序列容器,允许在序列中的任何位置进行以常量时间插入和擦除操作&…

一、什么是list?

Lists are sequence containers that allow constant time insert and erase operations anywhere within the sequence, and iteration in both directions.

列表是序列容器,允许在序列中的任何位置进行以常量时间插入和擦除操作,以及双向迭代。

简单的来说:list是一个带头双向循环列表

二、list的使用

2.1 list的构造list的默认构造:
 #define _CRT_SECURE_NO_WARNINGS 1
#include <iostream>
using namespace std;
#include <list>
int main()
{list<int> list1;return 0;
}

2.2 、用n的val构造:(其中val的类型是list模版显式实例化的类型)

int main()
{//list<int> list1;list<int> list1(3, 3);list<string> list2(2, "hello");return 0;
}

2.3、 用迭代器区间构造
int main()
{//list<int> list1;//list<int> list1(3, 3);//list<string> list2(2, "hello");int arr[4] = { 3,4,5,6 };list<int> list1(arr, arr + sizeof(arr) / sizeof(int));return 0;
}

2.4、list的拷贝构造
int main()
{//list<int> list1;//list<int> list1(3, 3);//list<string> list2(2, "hello");int arr[4] = { 3,4,5,6 };list<int> list1(arr, arr + sizeof(arr) / sizeof(int));list<int> list2(list1);return 0;
}

拷贝后:

三、list的增删查改

3.1、尾插尾删
int main()
{list<int> list1;list1.push_back(1);list1.push_back(2);list1.push_back(3);list1.push_back(4);list1.push_back(5);list1.pop_back();for (auto e : list1){cout << e << " ";}cout << endl;return 0;
}

3.2 list的头插头删
int main()
{list<int> list1;list1.push_front(1);list1.push_front(2);list1.push_front(3);list1.push_front(4);list1.pop_front();for (auto e : list1){cout << e << " ";}cout << endl;return 0;
}

3.3 list 的任意位置插入

任意位置插入val:

int main()
{list<int> list1;list1.push_front(1);list1.push_front(2);list1.push_front(3);list1.push_front(4);list1.pop_front();for (auto e : list1){cout << e << " ";}cout << endl;list<int>::iterator it = list1.begin();++it;list1.insert(it, 6);for (auto e : list1){cout << e << " ";}return 0;
}

注意:第一个参数为const_iterator,第二个参数为list显式实例化的类型;

        list的iterator是双向迭代器支持++ -- 但不支持+ -;

任意位置插入n个val:

int main()
{list<int> list1;list1.push_back(3);list1.push_back(4);list1.push_back(5);list1.push_back(6);list1.insert(list1.begin(), 3, 8);for (auto e : list1){cout << e << " ";}return 0;
}

3.4list的任意位置删除

任意位置删除:

int main()
{list<int> list1;list1.push_back(3);list1.push_back(4);list1.push_back(5);list1.push_back(6);list<int>::iterator it1 = list1.begin();it1++;it1 = list1.erase(it1);it1++;it1 = list1.erase(it1);for (auto e : list1){cout << e << " ";}cout << endl;//cout << *it1 << " ";//报错return 0;
}

注意:erase返回的是删除的节点下一个节点的迭代器!

四、list的其他成员函数;

4.1 remove函数

作用: 相当于 find + erase ,先查找找到的了就删除,找不到啥事不干;

int main()
{list<int> list1;list1.push_back(3);list1.push_back(4);list1.push_back(5);list1.push_back(6);list1.remove(5);list1.remove(99);for (auto e : list1){cout << e << " ";}return 0;
}

4.2 splice函数

作用: 把一个链表转移到另一个链表的某个节点下;

int main()
{list<int> list1;for (int i = 1; i <= 5; ++i){list1.push_back(i * 10);}for (auto e : list1){cout << e << " ";}cout << endl;list<int> list2;for (int i = 1; i <= 5; ++i){list2.push_back(i);}for (auto e : list2){cout << e << " ";}cout << endl;list<int> ::iterator it = list1.begin();++it;list1.splice(it, list2);for (auto e : list1){cout << e << " ";}cout << endl;return 0;
}

4.3merge函数

作用:归并两个链表


int main()
{list<int> list1;for (int i = 2; i < 6; ++i){list1.push_back(i);}for (auto e : list1){cout << e << " ";}cout << endl;list<int> list2;for (int i = 4; i < 9; ++i){list2.push_back(i);}for (auto e : list2){cout << e << " ";}cout << endl;list1.merge(list2);for (auto e : list1){cout << e << " ";}cout << endl;return 0;
}

注意:默认按升序归并;

以上是list的基本用法,如果对您有所帮助记得点赞收藏+关注哦!!谢谢!!!

咱下期见!!!

http://www.dtcms.com/wzjs/389560.html

相关文章:

  • 做盗版网站引流百度竞价收费标准
  • 深圳网站建设深圳网络推广与优化
  • 广西桂林天气预报15天查询抖音seo公司
  • 网站流量统计怎么做的网站关键词优化报价
  • 主机屋空间安装织梦后台程序后怎么弄成淘宝客网站百度快照关键词推广
  • 西安做网站建设的公司软文营销文章500字
  • 网站绑定微信公众号微信朋友圈推广平台
  • 个人网站做论坛百度怎么发帖子
  • 做代还的人都聚集在哪些网站创建网站教程
  • 技术支持 湖北网站建设万网域名注册查询
  • 龙拓网站建设赣州seo优化
  • 做不好的网站违法吗专注于品牌营销服务
  • 做两个网站 之间超链接搜狗收录提交
  • wordpress本地无法打开济南seo官网优化
  • php网站开发实例源码如何做推广引流赚钱
  • php网站建设原码seo是什么牌子
  • 苏省住房和城乡建设厅网站首页自助建站系统破解版
  • 简述建设网站的步骤6线上it培训机构
  • 网络工程专业是干什么的惠州短视频seo
  • mac xampp wordpress 建立数据库连接时出错上海网络营销seo
  • 做外贸用什么视频网站好百度seo排名优化公司哪家好
  • html5高端网站建设织梦模板下载使用最佳搜索引擎优化工具
  • 深圳做棋牌网站建设哪家公司收费合理关键词有哪几种
  • 夸克建站系统源码下载关键词优化话术
  • 手机网站建设口碑好网络搭建是干什么的
  • 网站制作找云优化邮件营销
  • 武汉老牌网站建设公司百度ai人工智能
  • ps上做网站企业网站模板建站
  • 多备份wordpressseo课程培训班
  • 欢迎访问中国建设银行网站seo知识是什么意思