Не заготовка, можно сказать экспромт, но с использованием опыта
решения похожих задач. Дебютная идея - сравниваем x0,x1 а потом
находим место для x2 - больше, меньше или между x0,x1. Начал писать
через if, на половине дороги сообразил что через тернарный оператор
будет компактнее и эффектнее :)) В среднем 2.5 сравнений (2 или 3).
На скорость исполнения тут больше всего влияет количество условных переходов, потому что они сбивают процесс выборки команд.
Но на stackoverflow есть вариант с двумя if, на современных процессорах типа x86 или старших ARM он скорее всего будет самым быстрым, к тому же прочие вычисления в том алгоритме неплохо параллелятся.