A low-complexity algorithm for shortest Dubins paths with intermediate via points