Ответ 1
Используйте SortedRange
из std.range
:
Cribbed from http://www.digitalmars.com/d/2.0/phobos/std_range.html#SortedRange:
auto a = [ 1, 2, 3, 42, 52, 64 ];
auto r = assumeSorted(a);
assert(r.canFind(3));
assert(!r.canFind(32));
Это только я, или нет функции бинарного поиска в Фобосе? У меня есть предварительно отсортированный массив, который я хочу выполнить с помощью собственной функции компаратора, но я не могу найти ничего в std.algorithms или std.containers.
Спасибо!
Используйте SortedRange
из std.range
:
Cribbed from http://www.digitalmars.com/d/2.0/phobos/std_range.html#SortedRange:
auto a = [ 1, 2, 3, 42, 52, 64 ];
auto r = assumeSorted(a);
assert(r.canFind(3));
assert(!r.canFind(32));