Немного счета:
0-9 - 10 символов
A-Za-z - 52 символа
А-Яа-я - 64 символа
./:;?@=№,!+*()- - 16 символов
Итого: 10 + 52 + 64 + 16 = 142 символа.
Предположим слово состоит из одного символа "-" сколько понадобится функции итераций для просмотра? Правильно, 142!
Представим слово в 6 символов. Вероятность выподения каждого символа одинакова, то есть около 6*(142/2) ~ 426 итераций в среднем на одно слово.
Предложение содержит около 5-9 слов, (5+9)/2 * 426 ~ 2982 итерации.
Мощно и не рационально, лучше искать те символы, которых быть не должно, их всего то остается около 15 ;)
Пересчитаю на всякий случай
:
6*(15/2) ~ 45 итераций на слово.
(5+9)/2*45 ~ 315 итераций на предложение.
Выигрышь: 1 - 315/2982 ~
90%
Математику в народ!
Changed: Артур (02.02.2010 / 02:00)