C++的map实现采用红黑树,其每个节点的高度是O(logN),查找时需要遍历树高度次数,因此具有对数复杂度。代码示例:
#include <iostream>
#include <map>
using namespace std;
int main() {
map<int, int> myMap;
myMap[1] = 100;
myMap[2] = 200;
myMap[3] = 300;
map<int, int>::iterator it = myMap.find(2);
if (it != myMap.end()) { // 如果找到了
cout << "找到了,值为:" << it->second << endl;
} else { // 如果没找到
cout << "没找到" << endl;
return 0;