C++机试快速准备
头文件
#include
using namespace std;
输入输出
int 整数
double 浮点数 四舍五入
scanf &n,
printf %d,%.2f,%s,%c,%g
cin>> cout<<endl;
数据结构
数组
int *p = new int[n];
字符
char c = ‘A’;
字符串
string s = “abc”; 最后一个字符是‘\0’;
向量vector
(1)头文件#include.
(2)创建vector对象,vector vec;
(3)尾部插入数字:vec.push_back(a);
(4)使用下标访问元素,cout<<vec[0]<<endl;记住下标是从0开始的。
(5)使用迭代器访问元素.
vector::iterator it;
for(it=vec.begin();it!=vec.end();it++)
cout<<*it<<endl;
(6)插入元素:vec.insert(vec.begin()+i,a); 在第i+1个元素前面插入a;
(7)删除元素:vec.erase(vec.begin()+2) ; 删除第3个元素
vec.erase(vec.begin()+i,vec.begin()+j); 删除区间[ i,j-1] 区间从0开始
(8)向量大小: vec.size();
(9)清空: vec.clear();
链表list
与vector相似
栈stack
top():返回一个栈顶元素的引用,类型为 T&。如果栈为空,返回值未定义。
push(const T& obj):可以将对象副本压入栈顶。
push(T&& obj):以移动对象的方式将对象压入栈顶。
pop():弹出栈顶元素。
size():返回栈中元素的个数。
empty():在栈中没有元素的情况下返回 true。
队列queue
front():返回 queue 中第一个元素的引用。
back():返回 queue 中最后一个元素的引用。
push(const T& obj):在 queue 的尾部添加一个元素的副本。
push(T&& obj):以移动的方式在 queue 的尾部添加元素。
pop():删除 queue 中的第一个元素。
size():返回 queue 中元素的个数。
empty():如果 queue 中没有元素的话,返回 true。
集合(排好序)set
insert(key_value); 将key_value插入到set中
erase(key_value),删除键值key_value的值
erase(iterator) ,删除定位器iterator指向的值
find() ,返回给定值值得定位器,如果没找到则返回end()。
映射 map
(1)map 最基本的构造函数;std::map<int , std::string> mapPerson;
(2) map 添加数据
mapPerson.insert(pair < int,string > (1,“Jim”));
mapPerson.insert(std::map < int, std::string > ::value_type (2, “Tom”));
mapPerson[3] = “Jerry”;
数对 pair
pair<int, string> p1;
p1.first = 4; p1.second = “abc”;
算法
(后续再补充)
运算
加、减、乘、除、余、次方
排序
冒泡(最简单)
归并排序、快速排序、堆排序
排序函数sort
#include
sort(first, last) 对容器或普通数组中[first, last)范围内的元素进行排序,默认进行升序排序。