|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Michael Ryazanov 2:5030/1006.64 19 Nov 2001 21:20:00 To : Egor Alexeev Subject : Re: Case -------------------------------------------------------------------------------- EA>>> действия. Из того, что я придумал - два варианта. 1)Сделать просто с EA>>> помощью оператора Case. Hо, так как параметров выбора достаточно EA>>> много(256), то по скорости он меня не очень устраивает. MR>> А чем вы, простите, компилируетесь? EA> TMT pascal/BP. А в ассемблер он компилировать умеет? MR>> Hормальные компиляторы реализуют это в виде дерева, т.е. порядка _ld N_ MR>> сравнений и переходов EA> Двоичный логарифм надо думать? Да. EA> Это такое его обозначение, или опечатка? Стандартное, по-моему, обозначение (что-то типа logarithm dualis). MR>> что для N = 256 не так уж медленно. EA> Hу как сказать... Это 8. А если учесть, что на выполнение содержимого EA> case уходит всего несколько тактов, потери в скорости довольно ощутимые. К чему тогда было говорить, что вариантов выбора достаточно много? Если 8 проверок действительно серьёзно тормозят, делайте, как уже все посоветовали, переход по таблице. |V|uxau/\ --- -- - ъ * Origin: Ф И З Ф А К - Ч Е М П И О H ! (2:5030/1006.64) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/45633bf96ad3.html, оценка из 5, голосов 10
|