c++笔记 STL list容器_反转和排序
//将容器中的元素反转,以及将容器中的数据进行排序
//函数原型:
//reverse(); //反转链表
//sort(); //链表排序
#include<iostream>
#include<list>
using namespace std;
void printList(const list<int>& d) {for (list<int>::const_iterator it = d.begin(); it != d.end(); it++) {cout << *it << " ";}cout << endl;
}
bool myCompare(int v1, int v2) {//降序:让第一个数 > 第二个数return v1 > v2;
}
void test01() {//反转list<int>L1;L1.push_back(50);L1.push_back(30);L1.push_back(60);L1.push_back(20);L1.push_back(40);cout << "反转前: " << endl;printList(L1);L1.reverse();cout << "反转后: " << endl;printList(L1);
}
//排序
void test02() {list<int>L1;L1.push_back(50);L1.push_back(30);L1.push_back(60);L1.push_back(20);L1.push_back(40);cout << "排序前: " << endl;printList(L1); //下一行会报错:所以不支持随机访问迭代器的容器,不可以使用标准算法,即下一行algorithm中的sort//不支持随机访问迭代器的容器,内部会提供一些算法(即list头文件,list类的成员函数)//下一行的sort不是list的成员函数,是全局函数//sort(L1.begin(), L1.end());//这个函数的转到定义以后再看吧 已知,该函数会随着容器大小的不同,选择不同的最佳排序算法 (很复杂)L1.sort(); //升序cout << "排序后: " << endl;printList(L1);//降序cout << "降序排序后: " << endl;L1.sort(myCompare);printList(L1);
}
//bool myCompare()函数要先于调用被读取 !!!
int main() {test01();test02();
}
c++笔记 STL list容器_反转和排序相关推荐
- 菜鸟学习笔记:Java提升篇3(容器3——泛型、排序)
菜鸟学习笔记:Java容器3--泛型.排序 泛型 泛型类 泛型接口 泛型方法 泛型继承 通配符"?" 泛型知识点补充 容器排序 Comparable接口与compareTo方法 C ...
- 极客班C++ STL(容器)第二周笔记
为什么80%的码农都做不了架构师?>>> 极客班 C++ STL (容器算法)第二周笔记 标签(空格分隔): C++ 1. 容器(下) 1.1 Stack a. 概述 Stac ...
- 【读书笔记】【Effective STL】容器
第 1 条:慎重选择容器类型. C++ 中不同的容器分类如下:[标准 or 非标准][STL or 非 STL][序列 or 关联] 标准 STL 序列容器:vector.string.deque.l ...
- python慕课笔记_MOOC python笔记(三) 序列容器:字符串、列表、元组
Python Python开发 Python语言 MOOC python笔记(三) 序列容器:字符串.列表.元组 容器概念 容器是Python中的重要概念,分为有序与无序. 有序容器也称为序列类型容器 ...
- 《C++标准库》笔记--STL 2
<C++标准库>笔记--STL 2 关联容器,根据元素的值或是元素的键值,来自动排列他的元素.关联容器是以二叉树形式组织起来的.这几种关联容器之间的区别在于元素的种类,以及处理副本的方式. ...
- C++练习笔记STL模板库之常用算法1
STL算法组成 STL算法主要是由头文件 组成 是所有STL头文件中最大的一个,范围涉及到比较.交换.查找.遍历.复制.修改等 体积很小,只包括几个在序列上面进行简单数学运算的模板函数 定义了一些模板 ...
- C++STL 顺序容器操作总结(超级详细)
文章目录 vector vector的构造函数 vector元素访问 vector容量相关 vector修改元素 deque deque构造函数 deque元素访问 deque容量相关 deque的修 ...
- 黑马程序员C++笔记——STL泛型编程VS2019
目录 1 函数模板 1.1 函数模板基本语法 1.2 函数模板注意事项 1.3 函数模板案例-数组排序 1.4 普通函数与函数模板的区别 1.5 普通函数与函数模板调用规则 1.6 模板的局限性 2 ...
- Go学习笔记06-内建容器
Go学习笔记06-内建容器 Go语言 数组 *切片(Slice) #F44336 Slice的操作 Map map示例 字符处理 数组 定义数组: //这样定义数组编译器自动初始化每个元素为0 var ...
最新文章
- Python爬虫QQ说说并分析朋友状况
- 在当今移动互联网时代_谁在提供当今最好的电子邮件体验?
- 这本书强烈推荐看看!
- UVA 10453—— Make Palindrome
- 计算机系统如何禁止删除文件,电脑禁止安装删除文件 禁止复制电脑文件的方法...
- 虚拟机VM10装Mac OS X 10.9.3
- 如何删除win7Windows.old文件
- 8款受欢迎的代码编辑器,你值得拥有!
- win10系统下第三方软件字体大小调整
- miRNA数据库篇——RNAcentral
- asp中的session使用方法详解
- GPUImage详细解析- 实时美颜滤镜
- 数据走进宫崎骏的动画世界
- 如何避免前人挖坑,后人填坑
- 3dmax常见的八十个问题汇总
- 【sv】局部数据存储: 自动存储vs静态存储
- Linux--基础知识点--4.1--vim寄存器
- Java使用Jco连接sap详解
- 添加列、删除列的sql
- 024_《Delphi 高级辅助工具精解》