把<string,T>(T为任意类型)关联起来,是很常见的需求.如笔者最近要做一个贝叶斯算法的垃圾邮件过滤器,就需要把每个单词与频率对应起来,做成一个表.而当单词很多时,对于每个单词做一遍O(N)的枚举,效率实在不尽人意.而下文讲到的一些关联容器或函数,都可以吧时间复杂度降至O(log2n)或更低. 本文对比4种方法,以实验的方法得到数据,四种方法分别是:map,unordered_map,二分查找(递归),二分查找(非递归). 实验的源码可在下面的地址下载(Code::Blocks工程类型)…