STL容器
表达式
1.前缀表达式(波兰表达式)
2.中缀表达式
3.后缀表达式(逆波兰表达式)
中缀转后缀
82+3∗(20−8)/282+3*(20-8)/2 82+3∗(20−8)/2
根据运算优先级对中缀表达式加括号
(82+((3∗(20−8))/2))(82+((3*(20-8))/2)) (82+((3∗(20−8))/2))
将运算符移到对应的括号后面
(82((3(20空8)−)∗2)/)+(82((3(20空8)-)*2)/)+ (82((3(20空8)−)∗2)/)+
去掉所有括号
82空3空20空8−∗2/+82空3空20空8 - *2/ + 82空3空20空8−∗2/+
VECTOR
STL-standard template libarary
vector是一个能够自动调节大小的动态数组,可以在运行是动态地增加或减少其大小
迭代器
定义
类型 ::iterator 变量名
begin():第一个元素
end():尾部元素的下一个位置
++:将指示器指向下一个位置
*:获取迭代器指向的元素
SET
自动升序&不重复
交集∩:重合部分
并集∪:总和
集合set遍历
size():数据个数
insert(x):插入x
erase(x):删除值为x的所有元素
find(x):存在x返回该元素迭代器,否则返回end()
empty():是否为空数据
count(x):1在0不在
s.lower_bound(s.begin(),s.end(),x);
MAP
size():数据个数
erase(x):删除值为x的所有元素
find(x):存在x返回该元素迭代器,否则返回end()
empty():是否为空数据
if(mp.end(x)!=mp.end())//查找到了
mutimap/mutiset(可重)