《算竞(紫书)》笔记1 STL入门
16340040
SDCS
目录
1.某些抢开头的废话
作为一个有基础的小白(在有基础行列中比较小白了),在高中学C++的时候,完全没有接触过STL(是不是很小白!)。毕竟,没有学过STL的C++学习之路是不完美的,甚至还有人偏激说不学STL你学C++干啥子啊!(hhhha这可不是我说的啊)所以,为了在小白面前更大神,为了在大神面前不那么小白,我觉得学学STL啦hhhhhhha。
《算法竞赛入门经典(第二版)》(封面紫白色,故人称紫书)是刘汝佳编著的一本算法入门经典之作,也进行ACM比赛的一本竞赛入门书籍。在我询问算法入门的书籍时,很多大神都推荐这本,所以我以这本书籍作为学习STL的阅读资料。(当然,我可不是在安利哦hhhhhha)
2 STL
什么是STL?STL,Standard Template Library,标准模板库。STL是早期惠普实验室为了简化程序员在处理数据结构等问题时候的工作而开发的模板库,早期版本很多,后来被加入C++标准1,成为C++重要的一部分。
2.1 排序
STL在头文件algorithm里提供了函数sort(arr_begin,arr_end),用于进行数组排序,arr_begin是数组第一个元素的地址,arr_end是数组最后一个元素的地址。
下面,输入两行数,第一行输入数n,第二行输入n个数,将这n个数进行从小到大排序,并输出排序后的结果。
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
int n;
cin >> n;
int num[n];
for (int i = 0; i < n; i++)
cin >> num[i];
sort(num, num + n);
cout << num[0];
for (int i = 1; i<n; i++)
cout << ' ' <<num[i];
cout << endl;
return 0;
}