Cando nos enfrontamos a problemas de optimización, a intuición enseguida nos di que atopar a mellor solución posible -mellor, no sentido de máis barata, máis curta ou máis rápida- adoita ser unha tarefa titánica, debido ao colosal tamaño de opcións que implican. Abonda con pensar en exemplos coma o coñecido problema do viaxeiro: o número de rutas posibles medra de maneira explosiva, até facerse inabordable mesmo para os ordenadores máis potentes. Neste contexto, resulta especialmente interesante o algoritmo de Dijkstra, que aborda con eficiencia un problema que, a priori, semella complexo: atopar o camiño máis curto entre dous puntos nunha rede.