leetcode 回文数

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

示例 1:

输入: 121
输出: true
示例 2:

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

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

1.1 用字符数组完成。

leetcode 回文数_第1张图片里面用到了两个函数:valueOf() 和 toCharArray();

String.valueOf()
String 类别中已经提供了将基本数据型态转换成 String 的 static 方法 ,也就是 String.valueOf() 这个参数多载的方法

有以下几种:
(1)String.valueOf(boolean b) : 将 boolean 变量 b 转换成字符串

(2)String.valueOf(char c) : 将 char 变量 c 转换成字符串

(3)String.valueOf(char[] data) : 将 char 数组 data 转换成字符串

(4)String.valueOf(char[] data, int offset, int count) : 将 char 数组 data 中 由 data[offset] 开始取 count 个元素 转换成字符串

(5)String.valueOf(double d) : 将 double 变量 d 转换成字符串

(6)String.valueOf(float f) : 将 float 变量 f 转换成字符串

(7)String.valueOf(int i) : 将 int 变量 i 转换成字符串

(8)String.valueOf(long l) : 将 long 变量 l 转换成字符串

(9)String.valueOf(Object obj) : 将 obj 对象转换成 字符串, 等于 obj.toString()

用法如下:
  int i = 10;
  String str = String.valueOf(i);
  这时候 str 就会是 "10"

toCharArray() 方法将字符串转换为字符数组。

基本思想:通过把数字转化为字符串数组,然后再通过索引,比较第一个与最后一个,依次比较;x等于0以及小于o令比较。

1.2 利用数学方法

除了小于0的以及等于0的。
其余的用数学方法算出x的相反的数字。比如123相反的为321.比较两者是否相等,来看是不是回文数。代码如下:
leetcode 回文数_第2张图片
leetcode 回文数_第3张图片

你可能感兴趣的:(leetcode)