专栏首页江涛的博客leetcode-回文数

leetcode-回文数

回文数

题意

判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

示例

示例 1:

输入: 121
输出: true

示例 2:

输入: -121
输出: false
解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。

示例 3:

输入: 10
输出: false
解释: 从右向左读, 为 01 。因此它不是一个回文数。

进阶

你能不将整数转为字符串来解决这个问题吗?

出处

链接:https://leetcode-cn.com/problems/palindrome-number

思路

正如题中的进阶提升所言,把它转成字符串是较为巧妙和方便的,当然啦,常规的做法就是将输入的数字对 10 取其余数放到一个临时数组,然后将输入的数字整除于 10 的值赋值给输入的数字,依次类推,直到输入为 0,然后将其反转做对比。

代码

/**
 * @param {number} x
 * @return {boolean}
 */
const isPalindrome = function (x) {
  const left = x.toString();
  const right = left.split('').reverse().join('');
  return left === right;
};

export default isPalindrome;

测试

import isPalindrome from '../../code/leetcode/9';

describe('test function isPalindrome:', () => {
  test('test case x = 121', () => {
    const res = isPalindrome(121);
    expect(res).toBe(true);
  });

  test('test case x = -121', () => {
    const res = isPalindrome(-123);
    expect(res).toBe(false);
  });

  test('test case x = 10', () => {
    const res = isPalindrome(10);
    expect(res).toBe(false);
  });
});

思考

  • 请有兴趣的读者补充完整用数字的解法,欢迎在评论下方留言

说明

本文首发于 GitHub 仓库https://github.com/ataola/coding,线上阅读地址:https://zhengjiangtao.cn/coding/,转载请注明出处,谢谢!

本文分享自微信公众号 - 前端路桥(ataola),作者:丰臣正一

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2021-01-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【LeetCode】回文数

    Jacob丶
  • LeetCode - 回文数

    原题地址:https://leetcode-cn.com/problems/palindrome-number/

    晓痴
  • 【一天一道Leetcode】回文数判断

    潘永斌
  • Leetcode 9. 回文数

    判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

    zhipingChen
  • LeetCode 9. 回文数

    判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

    freesan44
  • Leetcode PHP 回文数

    判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

    Meng小羽
  • LeetCode-9 回文数

    今天我们学习第9题回文数,这是一个关于数学的简单题,这个题目比较简单,最好能手写出该题。下面我们看看这道题的题目描述。

    用户3470542
  • 【刷穿 LeetCode】9. 回文数(简单)

    判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

    宫水三叶的刷题日记
  • Leetcode No.9 回文数

    判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

    week
  • leetcode 9 Palindrome Number 回文数

    Determine whether an integer is a palindrome. Do this without extra space.

    流川疯
  • LeetCode-9. Palindrome Number | 回文数

    Given an integer x, return true if x is palindrome integer.

    Zoctopus
  • 【leetcode刷题】T185-回文数

    https://leetcode-cn.com/problems/palindrome-number

    木又AI帮
  • leetcode 9 | 回文数 (两种不同的解决方式)

    判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

    ACM算法日常
  • 009. 回文数 | Leetcode题解

    判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

    苏南
  • Leetcode打卡 | No.009 回文数

    欢迎和小詹一起定期刷leetcode,每周一和周五更新一题,每一题都吃透,欢迎一题多解,寻找最优解!这个记录帖哪怕只有一个读者,小詹也会坚持刷下去的!

    小小詹同学
  • LeetCode Weekly 92:867. 回文素数

    我当时做的时候是先写了一个生成器找素数,然后判断是不是回文数,素数生成器是这样的:

    杜逸先
  • 【leetcode刷题】T216-回文素数

    https://leetcode-cn.com/problems/prime-palindrome

    木又AI帮
  • 【leetcode算法-判断回文数】

    用户5640963
  • LeetCode 266. 回文排列(计数)

    Michael阿明

扫码关注云+社区

领取腾讯云代金券