【LeetCode】9. Palindrome Number

1.题目

Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward.

Example 1:

Input: 121
Output: true

Example 2:

Input: -121
Output: false
Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome.

Example 3:

Input: 10
Output: false
Explanation: Reads 01 from right to left. Therefore it is not a palindrome.

2.分析

读完题目,主要涉及到将一个整数反转成一个新的整数,如果新的整数与之前的整数相等就满足题目要求。当然,你可能会考虑会不会出现反转后的数字越界,当然,越界后两个数字就不同了,越界后的数字就不属于int类型了,那么肯定也不会与之前的数字相等,也就是说不会是回文数字了。

3.编程实现

public class PalindromeNumber {
    public boolean isPalindrome(int x) {
        if (x < 0) return false;
        int palind = x;    // 留出到最后进行比较
        int rev = 0;
        while (x > 0){
            rev = rev*10 + x % 10;
            x /= 10;
        }
        return palind == rev; // 返回比较结果
    }
}

4.结果分析

由于其遍历的次数为数字的位数,则其时间复杂度为$O(n)$,在空间复杂度上,空间复杂度为$O(1)$

5.个人订阅号

第一个订阅号侧重于:使用c/c++/java去实现一些经典算法,以及javaEE开发,Linux服务器操作等。第二个订阅号主要侧重于机器学习,深度学习,数学,自然语言处理等方面的知识。







 上一篇
使用爬虫进行个人签名设计 使用爬虫进行个人签名设计
前言过年前到现在再沉浸在过年的愉悦与忙碌中。但是,每当亲戚谈论家庭时,不禁鸭梨山大,开始学习了。这里就使用一个小小的爬虫,去进行个性签名设计。 环境准备系统:win10 python版本:3.6 所需安装工具包:requests,lxml
2019-02-08
下一篇 
【LeetCode】8. String to Integer (atoi) 【LeetCode】8. String to Integer (atoi)
1.题目Implement atoi which converts a string to an integer. The function first discards as many whitespace characters as n
2019-01-30
  目录