DioD
offline
Опыт:
45,134Активность: |
[Task] Оптимизация по ДиоДу
Постановка задачиМожно ли оптимизировать этот код, если можно продемонстрируйте. Делайте с кодом что хотите, важен результат.
Код:
Отредактировано ShadoW DaemoN, 07.08.2008 в 00:08. |
09.01.2007, 22:34 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Krol
offline
Опыт:
17,884Активность: |
Цитата:
нельзя! Тута всё оптимизированно! З.Ы я в джассе всего один день:) Krol добавил: Но кажется ДиоД это нам дал неспроста! |
|
09.01.2007, 23:50 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
DioD Я проголосовал "да"
т.к. оптимизация это большей частью алгоритмика, то я бы изменил некоторый порядок действий, и сделал бы так: Код:
фсе... Цитата:
Это то что я думаю? тогда это тоже утечка! . |
|
10.01.2007, 04:03 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
Core = Константа из глобалки, а оптимизировать стоит чтение из кеша. |
10.01.2007, 10:11 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
adic3x
offline
Опыт:
108,439Активность: |
Как вариант:
Код:
и потом: Код:
Короче мы удалили несколько if'оф засчет добавки строки. А что, правда я нуб? |
10.01.2007, 15:17 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
Цитата:
Цитата:
хм... пожалуй... |
||
10.01.2007, 15:19 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
adic3x
offline
Опыт:
108,439Активность: |
Забыл сказать что изначально udg_s = "" |
10.01.2007, 15:22 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
ADOLF ты также забыл упомянуть
что здесь: Код:
компилятор выдаст ошибку и также не сказал.. что вот это такое? т.к. я непонял зачем это? и не вижу сдесь смысла...: Код:
|
10.01.2007, 15:25 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
adic3x
offline
Опыт:
108,439Активность: |
Jon, писал это не в редакторе, вобщем смысл такой:
Массив строк, значения 1 - 10 = "0", остальные = "". Мы когда выводим время пишем строку udg_s[минуты]+I2R(минуты), т.е. если минуты равны трем мы получим строку "0"+"3", а если 18 - ""+"18", ну неисключаю что надел тут ошибок) |
10.01.2007, 15:34 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
Цитата:
неисключено то что ты написал вообще не будет работать и уж темболее не будет работатать так как ты имееш ввиду |
|
10.01.2007, 15:51 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
adic3x
offline
Опыт:
108,439Активность: |
Jon, имхо не я один нуб) фсе прикрасна пашэт (правда я упростил пример и сделал через глобалу, но многих ифоф я избежал):
Код:
Код:
DioD, я помойму понял к чему ты клониш: почему кешь а не глобалы? Ведь в 10 раз быстрее... |
10.01.2007, 16:38 | #11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Кет
offline
Опыт:
111,109Активность: |
NoobKiller, а как надо?
напиши, всем полезно будет. |
10.01.2007, 17:50 | #12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
zibada
offline
Опыт: отключен
|
дурь полная. храни одно число - timestamp (число секунд от какого-то момента), а когда уж надо это куда-то выводить, переводи в строки or whatever... |
10.01.2007, 18:54 | #13
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ArchWorm
Матрица незалежности
offline
Опыт:
4,675Активность: |
многабукф, а толку мало |
10.01.2007, 19:52 | #14
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
nic666
offline
Опыт:
5,612Активность: |
Оптимизировать по скорости или по объему?
А почему вы пренебрегаете вложенными условиями типа: Код:
И с массивом дело предлогают, в инициализации прописать: T[0]="00" T[1]="01" ... T[59]="59" ========= Потом никаких сравнений на 10, а сразу: set Time = " <"+T[Hours]+":"+T[Minutes]+":"+T[Secundes]+"> " И это все не предел, можно еще оптимизировать, но ценой увеличения общего объема кода. Инициализация еще раздуется. |
10.01.2007, 20:43 | #15
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
Цитата:
Код написан более менее криво для того что-бы вы могли подумать. 1) тайм штамп работает хуже (так как заставляет тащить кучу дублирующих вычислений) 2) Здесь в принципе тоже самое, просто всмотритесь в порядок а вернее последовательность чтения\записи чисел. Отредактировано DioD, 11.01.2007 в 10:45. |
|
10.01.2007, 23:16 | #16
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
adic3x
offline
Опыт:
108,439Активность: |
DioD, а обязательно через кешь?
|
10.01.2007, 23:23 | #17
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
блин, оптимизировать надо алгоритм а не кеш.
можете заменить чтение из кеша на глобалки. |
10.01.2007, 23:33 | #18
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
nic666
offline
Опыт:
5,612Активность: |
DioD
Если это конкурс, то: 1) очень не любезно с вашей стороны сообщать об этом в последнюю очередь... 2) Вы так и не поставили задачу, и не ответили на мой вопрос. Цитата:
Если надо по объему, то можно уложиться в 4-5 строк... 3) Вы смешиваете несколько видов ошибок в одном примере. Я например думал, что вам по-зарез нужно писать все это в кэш. Но если бы я делал подобное, то кэшем вообще бы не пользовался. Глобалки работают быстрее, если их не очень много. 4) Как вы собираетесь оценивать ответы? Исходя из ваших личных вкусов или проводить тесты? Если тесты, то огласите правила их проведения. 5) Не заявлено никаких требований к ответам. Достаточно ли указать где ошибки, наметить путь решения или нужен полнофункциональный код? ==================================== Теперь вы говорите: Цитата:
Осмелюсь спросить: 1) ответ на что? Если толком небыло и вопроса... 2) ответ дан где/кем? Jon? ADOLF? Кто-то еще? Короче! Отцотой... конкурса не было... НИЗАЧОТ! |
||
11.01.2007, 10:05 | #19
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
Просто один учаснег удалил все свои посты.
Оптимизируется АЛГОРИТМ Например я придумал сейчасвот такой кодЪ Дано: Код:
Задача: Оптимизировать если возникают вопросы о том как, то вы не рубите фишку. Тему исправил, лишнее удалил. Отредактировано DioD, 11.01.2007 в 10:51. |
11.01.2007, 10:44 | #20
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|