小菜鸡对map的理解
小菜鸡对map的理解
map是key-value的对应关系。
平时用的话,假如k-v都是int型,那么map<int,int> tmp
即可。
map是自动有序的,是根据key递增的顺序进行排序的。
内部实现的简单化理解
可以把map想象成两部分:
第一部分-pair<int,int> buf
这一部分是key-value;
第二部分-搜索二叉树,节点为pair类型。
假设现在有<3,4>,<4,10>,<7,6>,<6,4>,<4,2>
最开始搜索树是空的,建立根节点<3,4>;
下一个<4,10>的key=4>3,所以<4,10>为根节点<3,4>的右子树;
同理,<7,6>为<4,10>的右子树;
而6<7,所以<6,4>为<7,6>的左子树。
4出现在<4,10>的节点上,所以用2替换10;