Categorías
Algorithms

LeetCode – Número Palindrome (Java)

Determina si un número entero es un palíndromo. Haga esto sin espacio adicional.

Pensamientos

Los problemas relacionados con los números se resuelven con frecuencia mediante / y%. No se requiere espacio adicional. Este problema es similar al problema del entero inverso.

Nota: aquí no hay espacio adicional significa que no convierta el número entero en una cadena, ya que la cadena será una copia del número entero y ocupará espacio adicional. El espacio ocupado por div, left y right se puede ignorar.

Solución Java

public class Solution {
    public boolean isPalindrome(int x) {
        //negative numbers are not palindrome
		if (x < 0)
			return false;
 
		// initialize how many zeros
		int div = 1;
		while (x / div >= 10) {
			div *= 10;
		}
 
		while (x != 0) {
			int left = x / div;
			int right = x % 10;
 
			if (left != right)
				return false;
 
			x = (x % div) / 10;
			div /= 100;
		}
 
		return true;
    }
}

  LeetCode - Juego de diseño de serpientes (Java)

Por Programación.Click

Más de 20 años programando en diferentes lenguajes de programación. Apasionado del code clean y el terminar lo que se empieza. ¿Programamos de verdad?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *