红黑树
map,key不能添加相同的key,如果添加不会报错,但是添加不进去
#include <iostream> #include <map> #include <set> using namespace std; int main(int argc, char const *argv[]) { map<int,int> a ; a.insert(make_pair(1,1)); a.insert(make_pair(1,2)); for (const auto& [key, value] : a) { cout << "Key: " << key << ", Value: " << value << endl; } }
输出结果为 Key: 1, Value: 1
map中at取没有的key会编译通过运行时抛出异常,map[]没有值不会抛出异常会返回一个值0
迭代器 ++
因为上图中的平衡二叉树的实现是中序遍历(左根右)
1.如果是8下一个节点是10
2.如果是5下一个节点就是6
3.如果是7下一个节点就是8
散列表