Бинарный поиск

Gllory

Client
Регистрация
19.06.2017
Сообщения
44
Благодарностей
10
Баллы
8
Есть таблица с десятками тысяч строк, из которой нужно как можно быстрее достать строку с определенными данными
Для ускорения парсинга решил попробовать реализовать бинарный поиск

Логика будет такая:
1. Берем 1ую букву из текста, который нужно найти
2. Получаем индекс этой буквы в таблице ASCII
3. Берем 1ую букву текста, находящегося в середине таблицы
4. Получаем индекс этой буквы в таблице ASCII
4. Сравниваем индексы, если индекс нужной буквы меньше индекса буквы из середины таблицы, значит вся верхняя часть отрезается и парсинг продолжается с нижней частью, и все начинается с 1го пункта, соответственно если индекс больше, тогда отрезается нижняя часть

В зено есть встроенный метод, которым можно получить индекс определенного символа в таблице ASCII?
Если нет, тогда придется вручную добавить ASCII таблицу в шаблон
Кто нибудь пытался реализовать такой поиск, получится ли заметно ускорить парсинг или в этом нет смысла?
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)