Se podría hacer algo con trigonometría, pero casi te daría lo mismo en coste de cálculo.
Si el contexto donde te mueves es pequeño (es más o menos reducido la distancia máxima) podrías calcular las distancias precalculando los cuadrados de la suma de diferencias, y de esa manera te ahorras un sqrt(). Incluso yo he visto para videojuegos precalcular distancias basadas en la diferencia de coordenadas en las dos dimensiones.
En módulos, tienes unos cuántos que te realizan esta tarea. Por ejemplo,
Cad::Calc tienes la función dist2d() para el cálculo de esta distancia. Según el código, es la de siempre: raíz de la suma de cuadrados de las diferencias.