История изменений
Исправление den73, (текущая версия) :
Не знаю, но, наверное, в исходниках компиляторов можно. На самом-то деле даже при наличии коллизии количество сравнений может уменьшиться. Простейшая хеш-функция - это отбрасывание верхних разрядов неотрицательного числа - получается взятие по модулю 2^n. С помощью прибавления к исходному числу константы можно подогнать под нужный диапазон. А дальше совпавшие метки складываем в «ведро» и там уже действуем перебором.
И ещё вот это: http://www.cyberforum.ru/blogs/18334/blog91.html
Обратите внимание, что switch - это не структурное программирование вообще, т.к. метка может быть внутри if или цикла, вложенного в switch.
Исходная версия den73, :
Не знаю, но, наверное, в исходниках компиляторов можно. На самом-то деле даже при наличии коллизии количество сравнений уменьшится.
И ещё вот это: http://www.cyberforum.ru/blogs/18334/blog91.html
Обратите внимание, что switch - это не структурное программирование вообще, т.к. метка может быть внутри if или цикла, вложенного в switch.