вообще есть одно правило и оно логичное, меньше времени занимают только те операции, которые выполняют конкретное действие. Будь то функция или некая конструкция, все подчиняется этому правилу, хочешь получить оптимальный код, следуй ему. А те функции что по мимо нашей задачи, проверяют еще что то, не оптимальные, вот и весь секрет оптимизации кода.