Этот вариант мне сократил на полминуты. А вообще, время могло увеличиться из-за некоторых изменений в алгоритме. Сейчас нет времени проверить досконально, позже проверю и поищу! Спасибо!
Это всё-равно что чесать затылок пяткой :) Зачем 4 лишние операции и лишняя строчка? Ведь изначальный вариант выглядел так:
И особенно забавно, что топикстартер выбрал для тестирования именно ваш вариант из всех предложенных ))
Я протестировал все предложенные варианты, и оказалось, что самый быстрый этот: if (A || B || C || D) Action();
Для сокращения времени поступился условиями, нужными очень редко, но в другом блоке, а в этом даже добавил ещё одно, но без bool'ей, которые прибавляли время. Продолжаю перелопачивать всё возможное, ищу оправданные упрощения, пока на демо работает стабильно и без ошибок. Ветка открыта, обязательно поделюсь чем-нибудь интересным или непонятным. Спасибо всем!
Интересно, как он мог оказаться быстрее этого: if (A) Action(); else if (B) Action(); else if (C) Action(); else if (D) Action();
Извините, Алексей, только что вернулся домой! Этот вариант не подходит, т.к., как я уже объяснял выше, Асtion(); это не просто функция исполнения, а вмещает в себе ещё несколько условий, общих для предыдущих, но различных по направлению, и, соответственно, в различной порядке исполняемых функций необходимых действий. Как понимаете, я не мог этим вариантом ещё более утяжелить код. А в принципе я с Вами согласен, что Ваш вариант мог быть быстрее, если бы Action(); просто было бы вызовом одной функции, не более. Спасибо Вам большое за оказанную помощь в моих поисках оптимальных решений! Доброй ночи Вам!
borilunad: Извините, Алексей, только что вернулся домой! Этот вариант не подходит, т.к., как я уже объяснял выше, Асtion(); это не просто функция исполнения, а вмещает в себе ещё несколько условий, общих для предыдущих, но различных по направлению, и, соответственно, в различной порядке исполняемых функций необходимых действий. Как понимаете, я не мог этим вариантом ещё более утяжелить код. А в принципе я с Вами согласен, что Ваш вариант мог быть быстрее, если бы Action(); просто было бы вызовом одной функции, не более. Спасибо Вам большое за оказанную помощь в моих поисках оптимальных решений! Доброй ночи Вам!
Результат, как и стоило ожидать, из разряда: "Шампунь стал ещё более антиперхотистее!!!" :)))
TarasBY: Результат, как и стоило ожидать, из разряда: "Шампунь стал ещё более антиперхотистее!!!" :)))
Если Вам перхоть в волосах ассоциируется с багами в коде, тогда, конечно, стоит свеч ожидать, надеяться, добиваться, искать интересных решений, но не штамповать!
borilunad: Если Вам перхоть в волосах ассоциируется с багами в коде, тогда, конечно, стоит свеч ожидать, надеяться, добиваться, искать интересных решений, но не штамповать!
И Вы этот процесс (на 9-ть страниц) называете "поиском интересных решений"!? :)))
На 1-ой странице - это была помощь на "помогите", а после 2-ой страницы возник интерес - "а как же быстрее". НО ответ на этот вопрос предполагает содержать цифры (я уже не заикаюсь "про чистоту эксперимента" - это условия, обеспечивающие адекватность полученных результатов)... иначе - про "шампунь"! :)))
И вы этот процесс (на 9-ть страниц) называете "поиском интересных решений"!? :)))
На 1-ой странице - это была помощь на "помогите", а после 2-ой страницы возник интерес - "а как же быстрее". НО ответ на этот вопрос предполагает содержать цифры (я уже не заикаюсь "про чистоту эксперимента" - это условия, обеспечивающие адекватность полученных результатов)... :)))
Этот вопрос о скорости меня и подвинул к обращению к уважаемым форумчанам, "как избегнуть много "или"...", т.к. полагал, что это вызывает потерю во времени. А если некоторых двигает вступать в полемику из-за своих амбиций или настойчивой рекламы своих разработок, то это остаётся их личным делом, и никак ко мне не относится. В любом случае благодарен всем откликнувшимся! И всем же желаю успехов!
Спасибо! Сейчас попробую эти скобочки!
Только проверять надо все предложенные варианты. Иначе можно ошибиться
Чтобы предупреждения не мозолили глаза используйте: {}
Это всё-равно что чесать затылок пяткой :) Зачем 4 лишние операции и лишняя строчка? Ведь изначальный вариант выглядел так:
if (A || B || C || D) Action();И особенно забавно, что топикстартер выбрал для тестирования именно ваш вариант из всех предложенных ))
И особенно забавно, что топикстартер выбрал для тестирования именно ваш вариант из всех предложенных ))Это всё-равно что чесать затылок пяткой :) Зачем 4 лишние операции и лишняя строчка? Ведь изначальный вариант выглядел так:
Я протестировал все предложенные варианты, и оказалось, что самый быстрый этот: if (A || B || C || D) Action();
Для сокращения времени поступился условиями, нужными очень редко, но в другом блоке, а в этом даже добавил ещё одно, но без bool'ей, которые прибавляли время. Продолжаю перелопачивать всё возможное, ищу оправданные упрощения, пока на демо работает стабильно и без ошибок. Ветка открыта, обязательно поделюсь чем-нибудь интересным или непонятным. Спасибо всем!
Я протестировал все предложенные варианты, и оказалось, что самый быстрый этот: if (A || B || C || D) Action();
Интересно, как он мог оказаться быстрее этого: if (A) Action(); else if (B) Action(); else if (C) Action(); else if (D) Action();
Интересно, как он мог оказаться быстрее этого: if (A) Action(); else if (B) Action(); else if (C) Action(); else if (D) Action();
Извините, Алексей, только что вернулся домой! Этот вариант не подходит, т.к., как я уже объяснял выше, Асtion(); это не просто функция исполнения, а вмещает в себе ещё несколько условий, общих для предыдущих, но различных по направлению, и, соответственно, в различной порядке исполняемых функций необходимых действий. Как понимаете, я не мог этим вариантом ещё более утяжелить код. А в принципе я с Вами согласен, что Ваш вариант мог быть быстрее, если бы Action(); просто было бы вызовом одной функции, не более. Спасибо Вам большое за оказанную помощь в моих поисках оптимальных решений! Доброй ночи Вам!
Результат, как и стоило ожидать, из разряда: "Шампунь стал ещё более антиперхотистее!!!" :)))
Если Вам перхоть в волосах ассоциируется с багами в коде, тогда, конечно, стоит свеч ожидать, надеяться, добиваться, искать интересных решений, но не штамповать!
И Вы этот процесс (на 9-ть страниц) называете "поиском интересных решений"!? :)))
На 1-ой странице - это была помощь на "помогите", а после 2-ой страницы возник интерес - "а как же быстрее". НО ответ на этот вопрос предполагает содержать цифры (я уже не заикаюсь "про чистоту эксперимента" - это условия, обеспечивающие адекватность полученных результатов)... иначе - про "шампунь"! :)))
И вы этот процесс (на 9-ть страниц) называете "поиском интересных решений"!? :)))
На 1-ой странице - это была помощь на "помогите", а после 2-ой страницы возник интерес - "а как же быстрее". НО ответ на этот вопрос предполагает содержать цифры (я уже не заикаюсь "про чистоту эксперимента" - это условия, обеспечивающие адекватность полученных результатов)... :)))