判断是否为回文结构的三种方法
第一种(变换类型)
我们把用户输入的int类型数据转换成String字符串,再通过逆序,进行比较。
pubic static boolean isCircle(int x){String revX = (new StringBuilder(x + ””).reverse().toString();return (x + “”).equals(revx);
}
至于为什么要使用x + ‘’’’,int类型的数据+‘’‘’可以转换为String类型的数据,记住就习惯了
第二种(先获取用户输入值的位数,找到最左值和最右值,比较两者是否相同,如果都相同了,为回文结构)
public static boolean isCircle(int x){// 如果输入的值小于0,肯定不为回文结构if(x < 0){return false;}int div = 1;//统计位数while(x/div >= 10){div *= 10;}//逐个对比左右两值while(x > 0){int left = x /div;int right = x % 10;if(left != right){return false;}x = (x % div)/10;div /= 100;}return true;}
}
第三种(manacher算法,该算法就是如果是回文结构,肯定存在后半部分和前半部分相同)
public static boolean isCircle(int x){//rex为后半部分新生成的数据int rex = 0;//div用来位数变换int div = 10;//这里体会一下,如果末尾数字是0,肯定不会是回文结构的(开头第一个数字怎么可能是0?if(x == 0 || x%10 == 0 && x != 0 ){return false;}//x之所以要大于rex,是因为如果是单数长度的数字,要把中间的数留给x才会比对成功。while(x > rex){rex = res*10 + x%div;div *= 10;}//x == rex/10,就是因为x可能比rex少一位return x == rex || x == rex/10;
}
如果还有什么想法,可以留言评论~
判断是否为回文结构的三种方法相关推荐
- python打开文件不存在-Python判断文件是否存在的三种方法
原标题:Python判断文件是否存在的三种方法 通常在读写文件之前,需要判断文件或目录是否存在,不然某些处理方法可能会使程序出错.所以最好在做任何操作之前,先判断文件是否存在. 这里将介绍三种判断文件 ...
- python中none算变量吗_在python中对变量判断是否为None的三种方法总结
三种主要的写法有: 第一种:if X is None; 第二种:if not X: 当X为None, False, 空字符串"", 0, 空列表[], 空字典{}, 空元组()这 ...
- python判断回文数字,Python判断回文数的三种方法实例
需求: 从控制台输入一个五位数,如果是回文数就打印"是回文数",否则打印"不是回文数",例如:11111 12321 12221 "回文"是 ...
- 判断回文数的三种方法
法一:主要用于判断数字回文,不能用于字符串回文. #include<stdio.h> void fun(long num) {long r=0,temp=num;//记录判断数值while ...
- python3 判断文件是否存在_Python判断文件是否存在的三种方法
正文 通常在读写文件之前,需要判断文件或目录是否存在,不然某些处理方法可能会使程序出错.所以最好在做任何操作之前,先判断文件是否存在. 这里将介绍三种判断文件或文件夹是否存在的方法,分别使用os模块. ...
- python文件是否存在_Python判断文件是否存在的三种方法
通常在读写文件之前,需要判断文件或目录是否存在,不然某些处理方法可能会使程序出错.所以最好在做任何操作之前,先判断文件是否存在. 这里将介绍三种判断文件或文件夹是否存在的方法,分别使用os模块.Try ...
- 判断对象是否为空 三种方法
第一种 for-in function(obj){for(var it in obj){return console.log(obj.it)}return console.log('空对象')} 第二 ...
- ios 检测是否联网_iOS 判断当前网络状态的三种方法
在项目中,为了好的用户体验,有些场景必须线判断网络状态,然后才能决定改干嘛.比如视频播放,需要线判断是Wifi还是4G,Wifi直接播放,4G先提示用户.获取网络状态的方法大概有三种: 1. Reac ...
- 用Python判断是否是闰年的三种方法
''' 满足以下两个条件的整数才可以称为闰年: (1)普通闰年:能被4整除但不能被100整除(如2004年就是普通闰年): (2)世纪闰年:能被400整除(如2000年是世纪闰年,1900年不是世纪闰 ...
最新文章
- mysql for mac 使用_MySQL for Mac 安装和基本操作
- 启动MySQL出错: Starting MySQL….. ERROR! The server quit with
- 微服务测试之性能测试
- VTK:图表之MinimumSpanningTree
- php日期的怎么判断同一天,php如何判断两个时间戳是一天
- 临界区、互斥量、信号量、事件的区别
- UVA	11549 Calculator Conundrum
- chattr 改变文件的扩展属性
- 京东回应「被薅 7000 万、项目组全体开除」;微信朋友圈屏蔽支付宝集五福;MySQL 8.0.19 发布 | 极客头条...
- JavaWeb在线聊天系统开发
- Java 10 大装 B 写法,装逼常用代码
- 【马仔创业感悟】什么是初创公司
- activity劫持学习与复现
- 给Android手机设置的壁纸应该是多大尺寸
- 2012,三星势必问鼎中原
- C++指针详解2_typedef函数声明类型、sizeof特性简介与数组指针间关系说明
- AutoSAR系列讲解(入门篇)5.1-方法论概述
- SaaSBase:什么是金山文档?
- java语言实现的时间片轮转调度算法和动态优先级调度算法
- python代码转exe