容器,对于C++来说,是一个模板类,但对于JAVA来说,是一个类,JDK可以解析<>这对字符,不是模板类。
C++的容器:顺序容器和关联容器
顺序容器: vector list deque 还有顺序容器的适配器 stack queue
对于顺序容器来说:
插入操作: push_back(), push_front()使用去deque list,insert(p, e);
删除:pop_back(), pop_front()用去deque lis, erase(p); clear()
大小: empty() , size(),
访问: front(), back(), c.at(n)适用于deque vector
迭代器:iterator , begin(), end() ,迭代器范围.
容器适配器:默认基于deque, STACK 所关联的容器可以是任何一种容器, queue只能list。Stack的操作:empty() , size(), pop(), top()返回顶元素, push().
Deque: empty() , size(), pop(), front()返回首元素, push().,back()返回未元素
对于关联容器:集合set(可以排序)和 map
Map : insert(e) , e的类型是pair make_pair(); 返回的类型时一个pair类型,第一关是迭代器,第二个是 bool 是否插入成功。Pair.first pair.second 。
访问:如果键值不在,就插入.. 用键值表示访问.
Count (k) 0, 1, find(k )
Erase(k) k为键值,返回删除个数。
Set: insert(), count(), find(), erase()
JAVA容器:
List set add() clear(), contains(), iterator(),
Map : set keySet(), get(key),put()
Iteratro: hasnext(), next(),