Ingresa un número
Ejemplos:
Resultado
Número Original
Mitad Invertida
0
Comparación Final
Cómo funciona
Un palíndromo es un número que se lee igual de izquierda a derecha y de derecha a izquierda. Por ejemplo, 121 y 12321 son palíndromos.
Enfoque Matemático
Para determinar si un número es palíndromo sin convertirlo a texto, seguimos estos pasos:
- Primero descartamos casos especiales:
- Números negativos no son palíndromos (por el signo)
- Números que terminan en 0 (excepto el 0 mismo) no son palíndromos
- Invertimos la mitad del número mediante operaciones matemáticas
- Extraemos dígitos del número original con la operación módulo (
%) - Construimos el número invertido multiplicando por 10 y sumando
- Al final, comparamos:
- Para números con cantidad par de dígitos: x == reversed_half
- Para números con cantidad impar de dígitos: x == reversed_half // 10
Complejidad Temporal
O(log n)
Procesamos la mitad de los dígitos del número
Complejidad Espacial
O(1)
Usamos un número constante de variables
Observación: Este enfoque es más eficiente que convertir a string porque:
- Solo procesamos la mitad de los dígitos
- No necesitamos espacio adicional para almacenar la conversión
- Utilizamos operaciones matemáticas nativas que son muy eficientes