MaHBe
offline
Опыт:
5,910Активность: |
условия
Небольшой вопрос-если в ф-ции очень много условий, как лучше всего их записать? Если что, при неверности всех условий- ф-ция вернет фалс.
MaHBe добавил:
52 проверки MaHBe добавил: Сравнение интежера с числами(абсолютно разными) |
23.09.2010, 21:35 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Elf_Stratigo
offline
Опыт:
4,699Активность: |
дак дай нам посмотреть можно наверно что-нибудь в дерево превратить... |
23.09.2010, 22:08 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
bee
vjass.optimizer
offline
Опыт:
16,615Активность: |
Цитата:
bee добавил: Если идет сравнение не по функциям, то проблем нету, а если есть функции, например: GetSpellAbilityId() == 'A000' or GetSpellAbilityId() == 'Aacb' or GetSpellAbilityId() == 'Axxx' и т.д., то надо заносить часто используемые функции в локалку. С числами же все в порядке. Еще одно решение - заносить более важные проверки в начало. То есть если допустим ты проверяешь юнита на типы классов, а потом оказываеться, что он мертв, а тебе нужен в фильтре живой, то ты делал фактически бесполезные проверки. Вывод: заносить проверку на живучисть в начало if'a. |
|
24.09.2010, 01:57 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
MaHBe
offline
Опыт:
5,910Активность: |
Все проверки одинаковы. А случайно древо делать не надо?
MaHBe добавил: У меня была мысль сравнивать поочереди,что инт больше самого большого и так далее. |
24.09.2010, 06:55 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Elf_Stratigo
offline
Опыт:
4,699Активность: |
MaHBe:
тебе же для оптимизации? сделай так, чтобы число операций в лучшем случае ~ в худшем, если всё имеет одинаковую вероятность если есть наиболее вероятные проверки, вынеси их вперёд |
24.09.2010, 07:31 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
выложи числа, с которыми ты сравниваешь. древо имеет ассоциативный алгоритм построения и его нельзя построить, не имея данных ) |
24.09.2010, 08:04 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
MaHBe
offline
Опыт:
5,910Активность: |
Ок,буду дома-выложу. |
24.09.2010, 08:18 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|