у меня вектор вылез вот откуда — есть задача проверить несколько десятков тысяч Integerов на вхождение в списки (это x509/CRL). Списки могут быть длинными, сотни и тысячи элементов. В конечном счете оказалось, что этих сравнений набежало порядка 300 миллионов, и это реально тормозит.
Поэтому если есть другие компактные (Set Integer не очень) структуры с быстрым лукапом, то я поменяю реализацию, просто первое что пришло в голову — вектор и бинарный поиск — самое разумное.