1 题目

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

2 解法

2.1 初版

2.1.1 思路

由于题目不允许把数直接转化为字符串, 所以想到了把数的每一位转换为双向数组, 然后对头尾一点一点比较

2.1.2 代码

    bool isPalindrome(int x) {if (x < 0) {return false;}deque<int> tDeque;while (x) {tDeque.push_back(x % 10);x /= 10;}while (tDeque.size() > 1) {int front = tDeque.front();int back  = tDeque.back();if (front  == back) {tDeque.pop_front();tDeque.pop_back();} else {return false;}}return true;}

2.1.3 结果

性能属实不咋地:

2.2 第二版

2.2.1 思路

pop出来是不是费性能, 所以直接用vector, 不pop了

2.2.2 代码

    bool isPalindrome(int x) {if (x < 0) {return false;}vector<int> tVec;while (x) {tVec.push_back(x % 10);x /= 10;}int left = 0;int right = tVec.size() - 1;while (left < right) {if (tVec[left]  == tVec[right]) {left ++;right --;} else {return false;}}return true;}

2.2.3 结果

这还不如之前的呢......

2.3 答案解法

2.3.1 思路

只翻转一半, 也就是说如果后一半翻转之后与剩下的前一半看看是否相等.

2.3.2 代码

    bool isPalindrome(int x) {if (x < 0 || (x > 0 && x % 10 == 0)) {return false;}int reverseNumber = 0;while (reverseNumber < x) {reverseNumber = reverseNumber * 10 + x % 10;x /= 10;}if (reverseNumber > x) {reverseNumber /= 10;}return (reverseNumber == x);}

2.3.3 性能

也不咋地

leetcode 9 --- 回文数相关推荐

  1. [模拟|数位] leetcode 9 回文数

    [模拟|数位] leetcode 9 回文数 1.题目 题目链接 判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1: 输入: 121 输出: true ...

  2. 【LeetCode】回文数

    个人博客:https://jacob.org.cn package leetcode.editor.cn;//判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. ...

  3. LeetCode 9. 回文数

    文章目录 1. 题目信息 2. 解题 1. 题目信息 判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1:输入: 121 输出: true 示例 2:输 ...

  4. leetcode isPalindrome (回文数判断)

    回文很简单,就是正着读和反着读一样,要判断一个数是否为回文数只需要判断正反两个是不是相等即可. 再往深了想一下,只需要判断从中间分开的两个数一个正读,一个反读相等即可. 代码: class Solut ...

  5. 20200119:(leetcode)回文数(3种解法)

    回文数 题目 基本思路 代码实现 题目 判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1: 输入: 121 输出: true 示例 2: 输入: -1 ...

  6. Leetcode 9. 回文数(Palindrome Number)

    判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向 ...

  7. leetcode记录-回文数

    判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向 ...

  8. LeetCode - 9. 回文数

    9. 回文数 class Solution {public boolean isPalindrome(int x) {String s = String.valueOf(x);char[] chars ...

  9. LeetCode 9. 回文数 Palindrome Number

    判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向 ...

最新文章

  1. 序列多重比对工具:MUSCLE
  2. Oracle 被 4000 多名女性员工集体诉讼:因薪资比男性每年少 1.3 万美元
  3. 线上故障排查全套路盘点,运维大哥请自查!
  4. 阿里雷卷:Reactive 基金会的成立将对开发方式带来哪些影响?
  5. wxWidgets:wxDataObjectComposite类用法
  6. 前端学习(2135):ES模块化的导出和导入
  7. c语言能选无,【提问】求助,一个C语言选择执行题怎么都不能完美运行
  8. Python爬虫从入门到放弃(二十三)之 Scrapy的中间件Downloader Middleware实现User-Agent随机切换...
  9. Mac声音太小?那你不能错过这款神器Boom 2
  10. javaaop模式供其他项目调用_结构性模型-静态代理模式
  11. 月光博客:我的知识管理工具列表(强烈推荐收藏)
  12. Java迷你英雄联盟_Java策略模式:一个关于英雄联盟的例子
  13. 抖音很火的小程序表白html,最近抖音很火的表白小程序写法C#版
  14. WebView重定向和回退栈的问题,goBack不会回退的问题
  15. 【天光学术】演讲稿:微笑面对生活
  16. 关于HTML网页生成网站
  17. 最大池化层mp:3*3_您所说的话:电池寿命最大化提示
  18. 端到端机器学习”中的“端到端”应如何理解
  19. 微积分位于基础数学的核心部分
  20. Android中微信抢红包助手的实现

热门文章

  1. 咸阳高考成绩查询2021,2021咸阳市地区高考成绩排名查询,咸阳市高考各高中成绩喜报榜单...
  2. c语言改变doss窗口的颜色,C语言第三次模拟练习题部分解答
  3. python---aiohttp库
  4. 大数据常见问题:数据倾斜
  5. 鬼才!用Python计算圆周率 π
  6. Effective Java~9. try-with-resource 优先于 try-catch
  7. 软件系统架构~视点和视图
  8. 网络系统服务器子系统,网管系统中服务器及网络设备监控子系统的设计与实现...
  9. Php如何过360拦截,PHP常见漏洞修复文件-360漏洞修复插件
  10. 怎样打开mysql进程数_mysql查看最大打开进程数