#include <iostream>
using namespace std;
#include <list> void printList(list<int>& mlist) { for (list<int>::iterator it = mlist.begin(); it != mlist.end(); it++) {
cout << *it << " ";
}
cout << endl; }
//初始化
void test01() {
list<int> myList;
list<int> myList2(, );//有参构造
list<int> list3(myList2);
//有参构造
list<int>mlist4(myList2.begin(), myList2.end()); //打印
for (list<int>::iterator it = list3.begin(); it != list3.end(); it++) {
cout << *it << " ";
}
cout << endl;
} //list 插入删除
void test02() {
list<int> mlist;
mlist.push_back();
mlist.push_front();
//插入
mlist.insert(mlist.begin(), );
//在指定位置插入
list<int>::iterator it = mlist.begin();
it++;
mlist.insert(it, );
//在尾部插入
mlist.insert(mlist.end(), );
//删除
mlist.pop_back();
mlist.pop_front();
//删除区间
mlist.erase(mlist.begin(), mlist.end());
mlist.clear(); //.remove 删除
mlist.push_front();
mlist.push_back();
mlist.push_front();
mlist.remove();//删掉所有匹配的元素
printList(mlist); } // size empty略 //赋值操作
void test03() {
list<int> mlist;
mlist.assign(, ); list<int> mlist2;
mlist2 = mlist; mlist2.swap(mlist);
} //排序反转
void test04() {
list<int> mlist = { ,,,,,,, };
mlist.reverse();
printList(mlist);
} bool myCompare(int a, int b) {
return a > b;
}
//排序
void test05() {
list<int> mlist = { ,,,,,,, };
mlist.sort();//基础数据类型 默认排序 从小到大
printList(mlist);
mlist.sort(myCompare);//自己写回调函数 从大到小排序
printList(mlist); //算法 sort 支持可随机访问容量 } int main() {
test05();
}

STL 小白学习(7) list的更多相关文章

  1. STL 小白学习(1) 初步认识

    #include <iostream> using namespace std; #include <vector> //动态数组 #include <algorithm ...

  2. STL 小白学习(10) map

    map的构造函数 map<int, string> mapS; 数据的插入:用insert函数插入pair数据,下面举例说明 mapStudent.insert(pair<, &qu ...

  3. STL 小白学习(9) 对组

    void test01() { //构造方法 pair<, ); cout << p1.first << p1.second << endl; pair< ...

  4. STL 小白学习(8) set 二叉树

    #include <iostream> using namespace std; #include <set> void printSet(set<int> s) ...

  5. STL 小白学习(5) stack栈

    #include <iostream> #include <stack> //stack 不遍历 不支持随机访问 必须pop出去 才能进行访问 using namespace ...

  6. STL 小白学习(6) queue

    //queue 一端插入 另一端删除 //不能遍历(不提供迭代器) 不支持随机访问 #include <queue> #include <iostream> using nam ...

  7. STL 小白学习(4) deque

    #include <iostream> #include <deque> //deque容器 双口 using namespace std; void printDeque(d ...

  8. STL 小白学习(3) vector

    #include <iostream> using namespace std; #include <vector> void printVector(vector<in ...

  9. STL 小白学习(2) string

    #include <iostream> using namespace std; #include <string> //初始化操作 void test01() { //初始化 ...

随机推荐

  1. C博客作业02--循环结构

    1. 本章学习总结 1.1 思维导图 1.2 本章学习体会及代码量学习体会 1.2.1 学习体会 这两周学习了循环结构,加上之前就有学的for循环,一共三种循环,都有各自适用的情况.do while适 ...

  2. [转载]Oracle日期周详解IW

    1 ORACLE中周相关知识描述 1.1           日期格式化函数 TO_CHAR(X [,FORMAT]):将X按FORMAT格式转换成字符串.X是一个日期,FORMAT是一个规定了X采用 ...

  3. 关于linux系统CPU篇--->CPU使用率升高

    1.CPU使用率为单位时间内CPU使用情况的统计,以百分比的方式展示. LINUX作为一个多任务操作系统,将每个CPU的时间划分为很短的时间片,再通过调度器轮流分配给各个任务使用,因此造成多任务同时运 ...

  4. docker tmpfs 的测试结果

    创建 2G 内存的 Container 使用tmpfs挂载到 /tmp docker run --rm -it --memory 2g --mount type=tmpfs,destination=/ ...

  5. dataframe的进行json数据的压平、增加一列的id自增列

    {"name":"Michael", "age":25,"myScore":[{"score1":1 ...

  6. c# 将CSV文件转成list集合

    //定义CSV文件所对应的实体类 public class example { public int t1; public string t2; public string t3; public st ...

  7. Path Analyzer Pro出现raw socket问题

    使用windows7,8以及10平台运行一个traceroute liketools软件,名为Path Analyzer Pro 2.7,遇到raw socket问题,如图: 原因是raw socke ...

  8. Android中在不同activity中进行自定义广播的解析

    相信有不少人和我一样曾经尝试过在同一个项目中的两个activity进行广播,发现怎么都实现不了.我也是困惑了好久才发现,这么搞本来就是不行的.首先在同一个项目下不同的activity之间广播没有意义, ...

  9. Android ANR(应用无响应)解决分析【转】

    本文转载自:https://blog.csdn.net/u014630142/article/details/81709459 来自: http://blog.csdn.net/tjy1985/art ...

  10. Manjaro 安装svn客户端,以及checkout使用命令

    安装svn sudo pacman -S svn checkout操作指令 svn co http://xxxxxxx /home/xx update 更新版本 svn up [文件/目录] 直接使用 ...