У меня есть вектор объектов, которые реализуют operator<
и operator==
. C++ предлагает std :: sort для эффективного сортировки этого вектора.C++ предлагает std :: sort, но также предлагает что-то для эффективного поиска?
Есть ли функция в std для эффективного поиска вектора повторно?
У меня будет много поисков по этому отсортированному вектору, поэтому std :: find не кажется хорошим вариантом, так как он просто просматривает итератор, пока не найдет совпадение.
Есть ли причина, по которой вы храните его в векторе, а не в наборе/мультимножестве? – lorro
'std :: lower_bound' или' std :: binary_search' может помочь. – Jarod42
@lorro: ... или их неупорядоченные _... аналоги. – DevSolar