这是我看到的解决方案:
package com.philippemoisan;
public class Main {
public static void main(String[] args) {
System.out.println(isPalindrome(-212));
}
public static boolean isPalindrome(int number) {
int reverse = 0;
int initNumber = number;
while (number != 0) {
int lastDigit = number % 10;
reverse = reverse * 10;
reverse +=lastDigit;
number/=10;
}
if (initNumber == reverse) {
return true;
}
return false;
}
}
我知道有回文解决方案here,但我不是在我的Java远场呢。所以,我只是想知道,如果我这里贴的解决方案是有效的,或者将它好了很多,从我提供的线索链接使用的解决方案。
对链接答案的解决方案更有效,因为如果这个词是不是回文,它不会通过整个数字/字迭代。
该解决方案您完成整个数字/字提供环路即使第一步可以检测到第一个和最后一个数字/字符是不相同的。
,美提供的链接是字符串回文和u已经发布程序是许多回文。回文概念是相同的,这就是相似结束。
字符串回文的时间和空间复杂度是从整数回文完全不同。
希望helps.best希望乌拉圭回合在Java中的旅程