Вверх ↑
Этот топик читают: Гость
Ответов: 16884
Рейтинг: 1239
#31: 2010-04-21 13:11:22 ЛС | профиль | цитата
В последнем вроде все нормально - по всем параметрам в меньшую сторону и позицию определяет вроде тоже верно.
Потестить нужно более скурпулёзно.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26170
Рейтинг: 2127
#32: 2010-04-21 13:13:47 ЛС | профиль | цитата
Tad писал(а):
Потестить нужно более скурпулёзно

Еще ускорил, сейчас прогоню и выложу
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#33: 2010-04-21 13:21:02 ЛС | профиль | цитата
Tad писал(а):
Потестить нужно более скурпулёзно.
не, по времени чуть-чуть проигрывает.
Давай свежак.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26170
Рейтинг: 2127
#34: 2010-04-21 13:27:20 ЛС | профиль | цитата
Tad писал(а):
не, по времени чуть-чуть проигрывает

Увеличь длину поисковой строки. Этот код хорошо ищет длинные строки, на коротких поисковых строках, он немного уступает
карма: 22

0
Разработчик
Ответов: 4698
Рейтинг: 426
#35: 2010-04-21 14:01:18 ЛС | профиль | цитата
[offtop]Вот блин, nesco, я тебе завидую, ты не программист, а такие коды бацаешь [/offtop]
nesco писал(а):
Еще ускорил, сейчас прогоню и выложу

Давай свежатинку, а то что-то на данный момент у меня твой код уступает даже стандартному PosEx порядка 200ms
карма: 10
0
Ответов: 16884
Рейтинг: 1239
#36: 2010-04-21 14:14:48 ЛС | профиль | цитата
Assasin, а чё шопотом завидуешь ?
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26170
Рейтинг: 2127
#37: 2010-04-21 14:16:05 ЛС | профиль | цитата
Assasin писал(а):
у меня твой код уступает даже стандартному PosEx порядка 200ms

Возьми текст побольше и строку подлиннее, а не три-четыре символа и ищи где-то в середине или в конце.

А свежатинка стухла, не успев народиться. Надо пробовать применить турбирование этого метода. Пока, турбирование программно удачно решить не получается. Пойду, развеюсь, поработую на благо семьи , а то закопали меня уже эти коды
карма: 22

0
Ответов: 8930
Рейтинг: 823
#38: 2010-04-21 14:17:25 ЛС | профиль | цитата
Assasin, [offtop]вОвремя и правильно обозначить задачу - тоже талант нужен! [/offtop]
nesco, ещё один шаг - переход внутри IC на ассемблер и парсирование строк, как набор байтов, и 10-Мб строки щёлкаются, как орешки
карма: 19

0
Разработчик
Ответов: 26170
Рейтинг: 2127
#39: 2010-04-21 14:19:05 ЛС | профиль | цитата
Леонид писал(а):
и парсирование строк, как набор байтов, и 10-Мб строки щёлкаются, как орешки

Алгоритм бинарного поиска
Леонид писал(а):
переход внутри IC на ассемблер

Ага, я бы в нем еще шарил как Галков или Кладов, разговор был бы другой. Но, написанный на языке высокого уровня код не привязан к ассемблеру конкретной машины, и может быть скомпилирован где угодно
карма: 22

0
Разработчик
Ответов: 4698
Рейтинг: 426
#40: 2010-04-21 14:21:16 ЛС | профиль | цитата
[offtop]
Леонид писал(а):
вОвремя и правильно обозначить задачу - тоже талант нужен!

Ага, я вот вОвремя задал задачу по улучшению PosEx, ты про это? [/offtop]
[offtop]
Tad писал(а):
Assasin, а чё шопотом завидуешь ?

Так у меня же не злая зависть, а добрая [/offtop]
Леонид писал(а):
nesco, ещё один шаг - переход внутри IC на ассемблер

Ага, спасибо, Леонид, я и так только что допер в чем смысл кода и как он работает, так теперь вообще ничего понимать не стану
карма: 10
0
Разработчик
Ответов: 26170
Рейтинг: 2127
#41: 2010-04-21 14:24:05 ЛС | профиль | цитата
Assasin писал(а):
я и так только что допер в чем смысл кода

Похвально, ты почитал описание этого алгоритма или сам разобрался с табличным смещением (самое медленное место кода, кстати -- составление таблицы смещения) Ладно, временно вас покидаю
карма: 22

0
Разработчик
Ответов: 4698
Рейтинг: 426
#42: 2010-04-21 14:30:55 ЛС | профиль | цитата
nesco писал(а):
Похвально, ты почитал описание этого алгоритма или сам разобрался с табличным смещением (самое медленное место кода, кстати -- составление таблицы смещения)

Не поверишь, я сначала прочитал (вчера еще) описание с википедии и ничего не понял (какие то сдвиги текста, колокол-ы какие то ), а сейчас посмотрел твое решение на Паскале, там сначала тоже ничего не понял (не понял особенно зачем ord и зачем в первом цикле надо это BMT[i] := lp;), а потом до меня доперло, что во втором цикле обозначаются сдвиги при несовпадении поисковой буквы, а дальше все как по маслу и "код помазался для меня в зеленый цвет"
------------ Дoбавленo в 14.30:
Моя подпись писал(а):
Самое главное -- понять код, а не тупо списать из источника

карма: 10
0
Ответов: 8930
Рейтинг: 823
#43: 2010-04-21 14:31:55 ЛС | профиль | цитата
nesco, IBM связана по рукам и ногам совместимостью кодов от 86 до последних чипов, прочие производители не смогут реализовать свою продукцию, не совместимую с ними, так что о "других" машинах можно не беспокоится
карма: 19

0
Разработчик
Ответов: 4698
Рейтинг: 426
#44: 2010-04-21 14:37:21 ЛС | профиль | цитата
[offtop]Хм... а почему я не могу увидеть в окне редактирования то, что написано после слов [quote=Моя подпись] при редактировании своего поста выше? [/offtop]
карма: 10
0
Ответов: 1328
Рейтинг: 69
#45: 2010-04-21 14:51:16 ЛС | профиль | цитата
[offtop]Assasin, У меня так же[/offtop]
карма: 2

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)