Descripción [title]
Da un entero de 32 bits, lo que necesita este número entero en cada invertida.
Ejemplo 1:
Entrada: 123
de salida: 321
Ejemplo 2:
Entrada: -123
salida: -321
Ejemplo 3:
Entrada: 120
Salida: 21
Nota:
Supongamos que tenemos un entorno sólo puede almacenar un número entero con signo de 32 bits, entonces el rango de valores de [-231 231 a -1]. Por favor De acuerdo con esta hipótesis, si desbordamiento de entero después de revertir devuelve 0.
[Explicaciones]
Revertir el positivo y negativo que hay un nuevo número, el número original de los últimos años comenzó a acumularse en el nuevo
Es decir, + = x% 10
Después de procesar el primer número, después de la segunda a procesar, es decir, x% 100, si el ciclo de la adición, se establecen las condiciones de ciclo:
x / 10
Por número entero re vuelto cada vez en un nuevo número, el número original dejó a uno, es decir:
re * 10
Para el juez derramado mi idea desde el principio era desbordamiento int directamente, después del desbordamiento re invierte los valores positivos y negativos, entonces sólo necesitamos determinar los diferentes valores positivos y negativos de la X original y puede ser re
Pero leetcode error! ! ! No me deja desbordamiento natural! ! !
Bien me inclino a la plataforma
El siguiente paso está dispuesto para volver a long int es mayor que 2 ^ determina 31--1 o inferior a -2 ^ 31 + 1
1 int inversa ( int x) { 2 largo int re = 0 ; 3 para (; x; x / = 10 ) 4 = re re * 10 + x% 10 ; 5 si (re> 2147483647 || re <- 2147483648 ) 6 retorno 0 ; 7 persona 8 de retorno re; 9 }
Como Código
Yo era un programador novato, poco a poco me parto de la más simple de las preguntas sencillas, aunque es simple, pero tengo que hacerlo lo mejor posible cada