Двоичный поиск в D 2.0 (Фобос)? Это только я, или нет функции бинарного поиска в Фобосе? У меня есть предварительно отсортированный массив, который я хочу выполнить с помощью собственной функции компаратора, но я не могу найти ничего в std.algorithms или std.containers. Спасибо! Ответ 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));
Ответ 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));