题解 | #牛的回文编号III#
牛的回文编号III
https://www.nowcoder.com/practice/6af8b6e39b004329a48cc2cd823e5b30
题目考察的知识点
考察双指针遍历判断回文字符串
题目解答方法的文字分析
首先调用API将十进制整形转换为二进制整形表示,随后补充前导0到32位,再用双指针分别从前后位置判断对应位置是否一致来判断是否二进制表达是回文数了。
本题解析所用的编程语言
使用Java语言解答
完整且正确的编程代码
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param x int整型 * @return bool布尔型 */ public boolean isPalindromeNumberIII (int x) { // write code here String str = Integer.toBinaryString(x); //转换为二进制表示 while(str.length() < 32){ str = "0"+str; } int left = 0, right = str.length()-1; while(left<right){ if(str.charAt(left)!=str.charAt(right)) return false; left++; right--; } return true; } }