Hola que tal, me daba una vuelta por aqui y recorde que no hace mucho me encargaron diseñar un algoritmo de potencia(xy) de orden logaritmico(nada complicado la verda ), y que si era posible, lo rebajase a orden constante. ¿Es posible esto ultimo?,porque a mi la verdad no se me ocurre la manera de que dicho algoritmo pueda ser constante(una formula). Agradecere cualquier sugerencia, gracias!
#2 crack xD, k es eso de ADA(analisis y diseño de algoritmos), la primera vez que lo oigo en mi vida o_O.
nada hombre tengo que buscar, y me parecia un buen foro (es que no se me ocurre na).
ADA = Análisis y diseño de algoritmos. Es una asignatura de la universida de sevilla en la que han pedio hace nada exactamente lo mismo que tu pides, y como eres de sevilla, pos... es lógico que se piense que estás en ada
por cierto, lo del orden constante, ni idea de como hacerlo
func potencia (entero:base, entero:exp) dev (enteroLargo:resultado)
/>si exp < 0 :
| resultado = 0;
\>fsi
/>si exp = 1 :
|
| resultado = base;
|
|>si exp = 0 :
|
| resultado = 1;
|
|>sino :
|
| result = potencia(base, Lexp/2┘);
|
| />si exp es par :
| |
| | resultado = result*result;
| |
| |>sino :
| | resultado = result*result*base;
| |
| \>fsi
|
\>fsi
resultado = resultado; //bueno esto no hace falta, aqui va return resultado;
fin
resultado recursivo aunk tb es de t(n)=log(n)*k