Сообщение от
BlackSun
Даже если и перебирать все символы, то лучше вначале определить цифра \ буква \ символ, затем разбить на диапазоны, выяснить в каком диапазоне лежит нужный символ и далее уже брутить
Бинарным поиском без определения будет быстрее. Ты только на определение потратишь 2 запроса, на каждый символ.
В случае a-zA-Z-0-9, всего 64 варианта, т.е. в худшем случае, при бинарном поиске без проверки - 6 запросов на символ.
Если ты будешь проверять в какой группе лежит символ, то это:
1) 2 запроса на определение группы (стабильно для каждого символа)
2) Ещё 5 запросов на каждый символ в худшем случае (т.е. если тебе попался диапазон более чем из 16 сиволов).
Вывод - 7 запросов в худшем варианте, вместо 6 в худшем варианте.
З.Ы.
Худший вариант - символ ни разу не попал в середину диапазона, до последней итерации.
__________________
Я отдал бы немало за пару крыльев,
Я отдал бы немало за третий глаз
За руку на которой четырнадцать пальцев
Мне нужен для дыхания другой газ..
Мой блог:
http://qwazar.ru/.