Java是否为回文_java语言判断一个数字是否为回文数字
判斷一個整數是否是回文數。回文數是指正序(從左向右)和倒序(從右向左)讀都是一樣的整數。
示例 1:
輸入: 121
輸出: true
示例?2:
輸入: -121
輸出: false
解釋: 從左向右讀, 為 -121 。 從右向左讀, 為 121- 。因此它不是一個回文數。
示例 3:
輸入: 10
輸出: false
解釋: 從右向左讀, 為 01 。因此它不是一個回文數。
進階:
你能不將整數轉為字符串來解決這個問題嗎?
解法一:使用字符串反轉,比較反轉前后的字符串是否相等
class Solution {
public boolean isPalindrome(int x) {
String str = String.valueOf(x);
final StringBuilder builder = new StringBuilder(str);
if(builder.reverse().toString().equals(str)){
return true;
}
return false;
}
}
解法二:不使用字符串,采用list存儲int各個位置上的變量置,然后從list兩端向中間比較數值是否相等
class Solution {
public boolean isPalindrome(int x) {
if(x<0) return false;
List list=new ArrayList();
while(x/10!=0){
list.add(x%10);
x=x/10;
}
list.add(x);
for(int i=0;i
{
if(list.get(i)!=list.get(list.size()-i-1)) return false;
}
return true;
}
}
兩種方法的耗時相近~
來源:https://www.cnblogs.com/raychou1995/p/10380944.html
總結
以上是生活随笔為你收集整理的Java是否为回文_java语言判断一个数字是否为回文数字的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: redis将散裂中某个值自增_Redis
- 下一篇: ubuntu 12.04 mysql_u