STL---List
表(List容器类)
List(#include<list>)又叫链表,是一种双线性列表,只能顺序访问(从前向后或者从后向前),它不支持随机访问。要访问表中某个下标处的项需要从表头或表尾处(接近该下标的一端)开始循环。而且缺少下标预算符:operator[]。同时,list仍然包涵了erase(),begin(),end(),insert(),push_back(),push_front()这些基本函数,下面我们来演示一下list的其他函数功能。merge():合并两个排序列表;splice():拼接两个列表;sort():列表的排序。
#include <iostream>
#include <string>
#include <list>
using namespace std;
void PrintIt(list<string> n)
{
for(list<string>::iterator iter=n.begin(); iter!=n.end(); ++iter)
cout<<*iter<<" ";
cout<<endl;
}
int main()
{
list<string> listn1,listn2;
listn1.push_back("qwe");
listn1.push_back("asd");
listn1.push_back("akl");
listn1.push_back("lp");
PrintIt(listn1);
listn2.push_back("ouq");
listn2.push_back("uwi");
PrintIt(listn2);
listn1.sort();//默认是升序排序
PrintIt(listn1);
listn1.sort(greater<string>()); //这是降序排序
listn2.sort(greater<string>());
PrintIt(listn1);
PrintIt(listn2);
listn1.merge(listn2,greater<string>()); //注意如果要降序merge需要先把vec1和vec2降序排序
PrintIt(listn1);
// listn1.merge(listn2,greater<string>());
// PrintIt(listn1);
return 0;
}
相关文章
- 在 Go 里用 CGO?这 7 个问题你要关注!
- 9款优秀的去中心化通讯软件 Matrix 的客户端
- 求职数据分析,项目经验该怎么写
- 在OKR中,我看到了数据驱动业务的未来
- 火山引擎云原生大数据在金融行业的实践
- OpenHarmony富设备移植指南(二)—从postmarketOS获取移植资源
- 《数据成熟度指数》报告:64%的企业领袖认为大多数员工“不懂数据”
- OpenHarmony 小型系统兼容性测试指南
- 肯睿中国(Cloudera):2023年企业数字战略三大趋势预测
- 适用于 Linux 的十大命令行游戏
- GNOME 截图工具的新旧截图方式
- System76 即将推出的 COSMIC 桌面正在酝酿大变化
- 2GB 内存 8GB 存储即可流畅运行,Windows 11 极致精简版系统 Tiny11 发布
- 迎接 ecode:一个即将推出的具有全新图形用户界面框架的现代、轻量级代码编辑器
- loongarch架构介绍(三)—地址翻译
- Go 语言怎么解决编译器错误“err is shadowed during return”?
- 敏捷:可能被开发人员遗忘的部分
- Denodo预测2023年数据管理和分析的未来
- 利用数据推动可持续发展
- 在 Vue3 中实现 React 原生 Hooks(useState、useEffect),深入理解 React Hooks 的