禅城区建网站公司,站长之家查询网,乐清建设网站,html网站开发目标目录 问题描述
代码解决以及思想
解法#xff08;一#xff09;
知识点
解法#xff08;二#xff09; 问题描述 代码解决以及思想
解法#xff08;一#xff09;
class Solution {
public:bool isPalindrome(int x) {string arr to_string(x); // 将整数转换为…目录 问题描述
代码解决以及思想
解法一
知识点
解法二 问题描述 代码解决以及思想
解法一
class Solution {
public:bool isPalindrome(int x) {string arr to_string(x); // 将整数转换为字符串string brr; // 用于存储逆序的字符串// 逆序构建字符串 brrfor (int i arr.size() - 1; i 0; i--) {brr arr[i];}// 比较正序字符串 arr 和逆序字符串 brr 是否相等return arr brr;}
};知识点
在C中你可以使用标准库提供的函数来将整数转换为字符串。
使用 std::to_string() 函数
#include iostream
#include stringint main() {int num 123;std::string str std::to_string(num);std::cout Converted string: str std::endl;return 0;
}解法二
class Solution {
public:bool isPalindrome(int x) {if (x 0) {return false; // 负数不可能是回文数}int original x;int reversed 0;while (x 0) {int digit x % 10; // 获取最低位的数字// 检查是否会溢出if (reversed INT_MAX / 10 || (reversed INT_MAX / 10 digit INT_MAX % 10)) {return false;}reversed reversed * 10 digit; // 构建逆序数字x / 10; // 去掉最低位}return original reversed; // 比较原始数字和逆序数字是否相等}
};