ZeToX2007
offline
Опыт:
7,009Активность: |
if Else
1 вариант.
local integer i = 5 function hz takes integer i return nothing if i == 0 then действия ifelse i == 1 then действия ifelse i == 2 then действия ifelse i == 3 then действия ifelse i == 4 then действия и тд или юзать бинарный поиск ? О_о могу ошибится, сделаю его по проще. function bpoick takes integer i return nothing if i > 2 then if > 1 then функции номер 2 return endif функции номер 1 return endif else if == 4 then функции номер 4 return endif функции номер 3 return endif При больших количества эллементов, структура будет менятся |
31.08.2009, 22:18 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
FREEZE_ball
Cataclysm => жара
offline
Опыт:
15,247Активность: |
Не понимаю, к чему эта тема, но ifelse меняй на elseif. Или можно и так и так? о_О Впервые слышу.
|
31.08.2009, 22:23 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
что за ifelse? |
31.08.2009, 22:26 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
Цитата:
ой, elseif ) ZeToX2007 добавил: так что? 2 вариант будет быстрее ? |
|
31.08.2009, 22:33 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
это кстати на деревья смахивает :)
ScorpioT1000 добавил: тока я так и не понял, у тебя во втором вобще фигня какаято |
31.08.2009, 22:39 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
Цитата:
в cJass можно и так )) (если кое что сделать) Цитата:
Да фигня) но впринцыпе ты меня понял ? |
||
31.08.2009, 22:47 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
я думал, что бы будешь делать ветвления, подобные бинарным деревьям, но ошибся т.е. не понял :) |
31.08.2009, 23:14 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
ScorpioT1000, Смотри, у нас есть 16 функций и integer, если integer = 10 запускается 10 функция )
смотри, сначало i проверяется, больше ли она 8, если да, проверяется больше она 12, если нет, проверяется меньше она 10, если нет запускается 10-ая функция) http://ru.wikipedia.org/wiki/%D0%91%D0%B8%D0%BD%D0%B0%D1%80%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D0%B8%D1%81%D0%BA |
31.08.2009, 23:27 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
сам то понял, что написал?)
ScorpioT1000 добавил: в любом случае, для ~250 элементов это не имеет значения |
31.08.2009, 23:29 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
ScorpioT1000, Не совсем ) подредоктировал )
Цитата:
256 допустим О_о обычным методом у нас будет около 128 проверок за 1 раз(В СРЕДНЕМ) этим ровно 8. |
|
31.08.2009, 23:32 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
ну это для интежер, а если у тебя стринг? то придется либо по gethandleid, либо хранить для них всех интовые ключи |
31.08.2009, 23:35 | #11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
Стринги медленны.... да и причём тут это
и если бы vJass компилировался также, то был бы он быстрей) |
31.08.2009, 23:53 | #12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Van Damm
wait... what?
offline
Опыт:
22,268Активность: |
Офк при большом количестве и приблизительно равной вероятности элементов бинарный поиск будет быстрее простого перебора. Иначе надо смотреть на вероятности выбора различных значений и более вероятные ставить раньше. |
01.09.2009, 00:13 | #13
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
Цитата:
и или или ? о_О |
|
01.09.2009, 10:53 | #14
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
adic3x
offline
Опыт:
108,439Активность: |
жалко в жасс нельзя делать jump таблицы |
01.09.2009, 10:57 | #15
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|