Какая функция в библиотеке станд. является там к двоичному поиску вектором, и найдите элемент?

var str = 'new Date(0,0,0,11,13,16)';        
var str1 = str.match(/\(.*\)/g)[0];        
str1 = str1.replace('(', '');        
str1 = str1.replace(')', '');        
var dateArr = str1.split(',');        
var updatedDate = new 
Date(dateArr[0],dateArr[1],dateArr[2],dateArr[3],dateArr[4],dateArr[5]);        
console.log(updatedDate);
6
задан mmcdole 15 December 2008 в 18:47
поделиться

3 ответа

std::binary_search() скажет Вам, если значение будет существовать в контейнере.

std::lower_bound()/std::upper_bound() возвратит итератор первому / последнему вхождению значения.

Ваши объекты должны реализовать operator< чтобы эти алгоритмы работали.

21
ответ дан 8 December 2019 в 03:55
поделиться

Да, существует функция, вызванная "binary_search" станд.:: binary_search

Вы даете его сначала, в последний раз и значение или предикат.

Посмотрите здесь для образца

Объединение, что с оператором Martin York == и необходимо быть в порядке (альтернативно можно записать функтор предиката

6
ответ дан 8 December 2019 в 03:55
поделиться

Вместо отсортированного вектора <Узел>
Почему бы не использовать карту. Это - отсортированный контейнер. Так любой поиск, сделанный на этом через станд.:: найдите (), автоматически имеет те же свойства как двоичный поиск.

0
ответ дан 8 December 2019 в 03:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: