标签: c++ list
list<Person> lp; ... lp.sort(PersonNameLess()); Person newPerson; ... lp.insert(upper_bound(lp.begin(), lp.end(), newPerson, PersonNameLess()), newPerson);
在有效的c ++第3版,第198页,第45项中,它说如下:
查找需要线性时间,但它只执行对数 比较数
问题:为什么它只执行对数的比较?
答案 0 :(得分:4)
为什么它只执行对数的比较?
因为列表已排序且upper_bound执行binary search。