9.18 判断一个数是否是回文数

题目】:

  定义回文数的概念如下:

  1、如果一个非负数左右完全对应,则该数是回文数,例如:121,22等

  2、如果一个负数的绝对值左右完全对应,也是回文数,例如:-121,-22等

  给定一个32位整数num,判断num是否是回文数

题目来源:左程云老师《程序员代码面试指南》

原文地址:https://www.cnblogs.com/latup/p/10204849.html

时间: 2024-10-07 15:02:25

9.18 判断一个数是否是回文数的相关文章

判断一个数是否为回文数或者打印特定范围的回文数。

回文数:设n是一任意自然数.若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数. 1 public class PracticeDemo { 2 /** 3 *@Function: isPalindrome 4 *@Description:判断1个数是否为回文数(一个数正着读和反着读一样). 5 *@Input:一个整型数 6 *@Return_Type: boolean 7 *@Return:判断是否为回文花数(true和false) 8 *@Other:利用字符串知识点来解决

判断一个数是否为回文数,字符串是否为回文字符串

使用C语言编写程序 判断一个数是否为回文数.(ps:回文数也是一个数字,数字的特点是正反序是同一个数字,如12321,3443就是回文数). 要判断该数字是否为回文数,可以通过模除得到该数的反序数字,进行比较是否相等来判读. 具体实现如下: void Practice() { int num, value, flag, var; value = 0; flag = 1; scanf("%d", &num); var = num; while(num) {//value存储num

判断一个数中最大回文数的长度

判断一个数中最大回文数的长度 :例如12332112345654321中最大的回文数是12345654321,长度为11 public static void palindrome(String str) { int len = str.length(); int max = 1; for(int i = 1; i < len; i++){ int low = i-1; //偶数情况 int high = i; while(low >= 0 && high < len &

判断一个数是否为回文数

#include <stdio.h> int is_palindromic(int num) {  char _old = num;  char _new = 0;  while (num)  {   _new = _new * 10 + (num % 10);   num = num / 10;  }  if (_new == _old)  {   return 1;  }  else  {   return 0;  } } int main() {  int num = 0;  scanf

C实例--判断一个字符串是否是回文数

回文是指顺读和反读内容均相同的字符串,例如"121","ABBA","X"等.本实例将编写函数判断字符串是否是回文. 引入两个指针变量,开始时,两个指针分别指向字符串的首末字符,当两个指针所指字符相等时,两个指针分别向后和向前移动一个字符位置,并继续比较,直到两个指针相遇,说明该字符串是回文,如果比较过程中发现两个指针指向的字符不相等,则判断该字符串不是回文. 下面是代码的实现部分: #include <stdio.h> #inclu

leetcode_判断一个整数是否是回文数C++

小弟不才,有错误之处,麻烦指出.谢谢. 判断一个数是否是回文数. 方法一:主要思路是把原本的数字(x)拆分开,组成一个数字(y),然后判断x==y. class Solution { public: bool isPalindrome(int x) { int i=0; int j=0; int k=0; if (x < 0) {//判断负数 return false; } if(x>=0&&x<10){//2,3,5,等都是回文数 return true; } else

【C语言】判断一个数是否为回文字符串

//判断一个数是否为回文字符串 #include <stdio.h> int fun(char *str) { int len=strlen(str); int i; for(i=0;i<len;i++) { if(str[i]==(str[len-1])) len--; else return -1; } return 1; } int main () { char p[]="abcwecba"; puts(p); printf("%d\n",f

判断一个数字是否为回文数

Determine whether an integer is a palindrome. Do this without extra space.(source) 判断一个数字是否为回文数,并且不使用额外的存储空间. "回文"是指正读反读都能读通的句子,那么回文数,就很容易理解,就是指一个数正反读的值是相同的.还有一个要求是不要使用额外的存储空间. Hints: 要将一个数的最高位与最低位比较,取出一个数的最低位容易(x%10),但要得到高位却很难. Solution 1: 首先得知

判断一个整数是否为回文数 Check if a number is palindrome

一种方法是先翻转当前数,然后把它和原数比较(略) 另一种是递归方法,借用一个复制数,对原数递归,使之翻转,然后配合复制数比较 package recursion; public class Check_if_a_number_is_palindrome { public static void main(String[] args) { int num = 121321; System.out.println(check(num)); num = 12321; System.out.printl