¿Qué complejidad tiene su algoritmo?
Enviado por Costa Blanca • 22 de Noviembre de 2018 • Tareas • 461 Palabras (2 Páginas) • 154 Visitas
Título del Control
Nombre Alumno
Nombre Asignatura
Instituto IACC
Ponga la fecha aquí
Desarrollo
Se dice que una palabra es palíndroma cuando se lee de la misma forma hacia adelante y hacia atrás. Por ejemplo: oso, ara, arenera, anilina, radar o reconocer. Cree un algoritmo, en pseudocódigo, que reconozca cuándo una palabra es palíndroma.
Algoritmo.
Proceso palindromas
escribir "ingrese una palabra"
leer palabra
Para i<-Longitud(palabra) Hasta 0 con paso -1 Hacer
palindroma<-palindroma + SubCadena(palabra,i,i)
FinPara
si palabra = palindroma Entonces
escribir "La Palabra ingresa es Palindroma"
SiNo
escribir "LA Palabra ingresada no es Palindroma"
FinSi
FinProceso
a) ¿Qué complejidad tiene su algoritmo? ¿Por qué?
Complejidad Temporal, por que es mas difícil calcular la complejidad espacial.
Bueno este algoritmo tiene una complejidad de algoritmo logarítmica, por que este crece a medida de los elementos que procesa. Este tipo de complejidad termina sus procesos antes que la complejidad lineal, por lo que se utilizara menos recurso en la ejecución del programa.
b) ¿Es posible mejorar su rendimiento? ¿Cómo?
No ya que al ser el algoritmo logaritmica ocupa menos tiempo en la ejecucion del program, la otro forma que podriamos realizar este algoritmo seria exponencial pero este seria mas lento versus a la complejidad logaritmica.
c) ¿Cómo sería un algoritmo exponencial para calcular esto?
Algoritmo Palindromas
Escribir "Escriba una frase o palabra"
Leer FraseOriginal
cont=0 Para i=Longitud(FraseOriginal) Hasta 0 Con Paso -1 Hacer
si Subcadena(FraseOriginal,i,i)<>"
...