#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. EDK II代码实例之Variable

    EFI_STATUS Status = EFI_SUCCESS; EFI_GUID OemOSTypeGuid = {0xd06a0bc7, 0x9feb, 0x4cbb, 0xbd, 0x78, 0 ...

  2. hiberate 映射关系 详解

    在我们平时所学的关系型数据库中,我们会大量处理表与表之间的关系,如果表比较多的话处理起来就比较繁琐了,但是hibernate给我们提供了很大的便利,这些便利让我们处理起来方便.我们所讲的源码地址:ht ...

  3. c语言#define用法

    01 作用域 预编译作用域限本文全局,如: a.c中定义:#define TEST 1 b.c中定义:#define TEST 2 两者编译不交叉,互不影响. 若需#define TEST作用于a.c ...

  4. 读Vue源码二 (响应式对象)

    vue在init的时候会执行observer方法,如果value是对象就直接返回,如果对象上没有定义过_ob_这个属性,就 new Observer实例 export function observe ...

  5. 登录获取session

  6. Bootstrap3基础 栅格系统 1行最多12列

      内容 参数   OS   Windows 10 x64   browser   Firefox 65.0.2   framework     Bootstrap 3.3.7   editor    ...

  7. JS(JavaScript)的进一步了解4(更新中···)

    基类Object的子类有 Function  Array  Number  Boolean  String  Date  Math  RegExp 函数 数组 数字 布尔 字符串 日期 算数 正则 都 ...

  8. Catalog of Patterns of Enterprise Application Architecture

    Catalog of Patterns of Enterprise Application Architecture Last Significant Update: January 2003 A s ...

  9. 快速签发 Let's Encrypt 证书指南

    本文仅记录给自己的网站添加"小绿锁"的动手操作过程,不涉及 HTTPS 工作原理等内容的讲解,感兴趣的同学可以参考篇尾的文章自行了解. 简单了解下我的实验环境: 云服务器:Cent ...

  10. Android 简单记事本

    写在前面 课程作业需要,于是忙活好几天抄了一个简单的记事本,使用已学内容包括Android UI布局,Activity的跳转,SQLite数据库. 开发环境:Android Studio 参考:htt ...