常用STL: //vector:动态数组,头文件 #include <vector> //定义:vector<type> vec_name; //定义整形vector vector<int> a; //向容器末尾动态添加元素 a.push_back(1); a.push_back(2); //返回元素个数 int n = a.size(); //遍历容器 for(int i=0; i<n; i++) { cout<<a[i]<<endl; } a.clear(); //string:字符串容器 头文件#include <string> //定义 string str, str1 = "cd"; //向末尾添加字符元素 str.push_back('a'); char c = 'b'; str += c; str += str1; //输出与遍历 cout<<str<<endl; int n = str.size(); for(int i=0; i<n; i++) { cout<<str[i]<<endl; } //sub返回str的一个子串, 起始位置为str[_off], 长度为_count string sub = str.substr(_off, _count); str.clear(); //queue:队列 头文件 #include <queue> //queue<type> Q; queue<int> Q; Q.push(1); Q.push(2); int n = Q.size(); while(Q.size() > 0) { cout<<Q.front(); Q.pop(); } //stack:栈 头文件 #include<stack> stack<int> S: S.push(1); S.push(2); while(!S.empty()) { cout<<S.top()<<endl;; S.pop(); } //set:集合 头文件 #include<set> set<int> S; S.insert(1); S.insert(2); S.erase(1); int _count = S.count(2); S.clear(); //map:键值映射容器 头文件:#include <map> map<int, int> M; M[1] = 1; M[2] = 2; cout<<M[1]<<' '<<M[2]<<endl; M.clear(); 库函数: 常用函数库:#include <algorithm> #include<cstdlib> #include <math.h> 常用函数: 排序函数sort: //int a[100]; vector<int> vec; sort(a, a+100); sort(vec.begin(), vec.end()); 二分查找函数: //vector<int> vec //以int型容器为例,idx返回vec中第一个大于等于x的元素的下标 //idx2返回vec中第一个大于x元素的下标 int idx = lower_bound(vec.begin(), vec.end(), x) - vec.begin(); int idx2 = upper_bound(vec.begin(), vec.end(), x) - vec.begin(); 数学函数: pow:幂函数 sqrt:根号函数 abs:绝对值函数 fabs:浮点数绝对值函数
时间: 2024-10-14 11:07:15