STL 小白学习(7) list
#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的更多相关文章
- STL 小白学习(1) 初步认识
#include <iostream> using namespace std; #include <vector> //动态数组 #include <algorithm ...
- STL 小白学习(10) map
map的构造函数 map<int, string> mapS; 数据的插入:用insert函数插入pair数据,下面举例说明 mapStudent.insert(pair<, &qu ...
- STL 小白学习(9) 对组
void test01() { //构造方法 pair<, ); cout << p1.first << p1.second << endl; pair< ...
- STL 小白学习(8) set 二叉树
#include <iostream> using namespace std; #include <set> void printSet(set<int> s) ...
- STL 小白学习(5) stack栈
#include <iostream> #include <stack> //stack 不遍历 不支持随机访问 必须pop出去 才能进行访问 using namespace ...
- STL 小白学习(6) queue
//queue 一端插入 另一端删除 //不能遍历(不提供迭代器) 不支持随机访问 #include <queue> #include <iostream> using nam ...
- STL 小白学习(4) deque
#include <iostream> #include <deque> //deque容器 双口 using namespace std; void printDeque(d ...
- STL 小白学习(3) vector
#include <iostream> using namespace std; #include <vector> void printVector(vector<in ...
- STL 小白学习(2) string
#include <iostream> using namespace std; #include <string> //初始化操作 void test01() { //初始化 ...
随机推荐
- Unicode,GBK和UTF8
字符集 在介绍他们之间的区别时, 我们先讲下什么是Unicode. 简单来说,Unicode是一个字符集(character set), 和ASCII一样, 其作用是用一系列数字来表示字符(chara ...
- 豆瓣上关于<<一万小时天才理论>>一书的一个评论
原帖地址:http://book.douban.com/review/3707543/ 这本书和其他几本关于一万小时的书一样,都是基于埃里克森和赫伯特.西蒙的“十年法则”的标志性理论,但这本书通过新的 ...
- php 把数组保存为标准的数组格式,存储到文件中
<?php $file='./test.php'; $array=array('color'=> array('blue','red','green'),'size'=> array ...
- KVO的使用二:常用方法及小技巧
(文章及代码接上一篇) options详解: KVO的注册方法中有一个options枚举,用来确定观察者的接收消息方法接收的信息,那么具体有什么关联呢?下面通过一段代码来验证是如何关联的.依次选择op ...
- CMT302 Coursework Assessment Pro-forma
Cardiff School of Computer Science and Informa5csCoursework Assessment Pro-formaModule Code: CMT302 ...
- Android中自定义广播的实现
今天尝试了自定义的广播,说是自定义的广播其实质就是自己编写一个类继承broadcastreceiver类,然后再onreceiver方法中实现某些功能,在这个过程中我们可以自定义我们要发出的广播,可以 ...
- Educational Codeforces Round 48 (Rated for Div. 2)
http://codeforces.com/contest/1016 A. 没想到这个也会TLE,太粗心了 B. 暴力就好了,多情况讨论又出错... 思路跟我一样的解法 为什么我做了那么多讨论,原 ...
- pycharm 序列号/行号 的宽度太宽了如何调整
问题:行号宽度嫌宽: 解决:在settings里面,如下图顺序,取消“show gutter icons”的勾,即可. 调整后如下图:
- 动态生成具有嵌套属性的linq选择(select)
class SelectItem { public string Item { get; set; } } class SelectList { public int ID { get; set; } ...
- pyhon-request之repsonse的常用方法reponse.text和reponse.content的区别
1. requests在python2 和 python3中通用,方法完全一样 2. request简单易用 requests的作用 作用:发送网络请求,返回响应数据 用法 response = re ...