当前位置: 首页> 科技> 互联网 > 阿里巴巴采购网官网_大连市工程建设信息网_六盘水seo_宁波seo关键词排名

阿里巴巴采购网官网_大连市工程建设信息网_六盘水seo_宁波seo关键词排名

时间:2025/7/11 18:30:17来源:https://blog.csdn.net/DoKiDoK/article/details/145496747 浏览次数:0次
阿里巴巴采购网官网_大连市工程建设信息网_六盘水seo_宁波seo关键词排名

题目7

思路:

使用 digit=x % 10 获取最后一位数字。

使用 x /= 10 去掉最后一位数字。

将结果 更新为 result * 10 + digit

class Solution {
public:int reverse(int x) {int result = 0;while (x != 0) {int digit = x % 10; // 取最后一位x /= 10; // 去掉最后一位// 检查是否溢出if (result > INT_MAX / 10 || (result == INT_MAX / 10 && digit > 7)) {return 0;}if (result < INT_MIN / 10 || (result == INT_MIN / 10 && digit < -8)) {return 0;}result = result * 10 + digit; // 更新结果}return result;}
};

题目8

这个题真的太恶心了,分支结构要用好几个,用C++写的话代码太长而且晕了,这里参考一个别人写的python代码

class Solution:def myAtoi(self, s: str) -> int:return max(min((lambda v1=s.lstrip(): (lambda v2=(v1[1:] if v1 and v1[0] in "+-" else v1), sign=(-1 if v1[0] in "-" else 1): ((lambda v3=[c if c in "0123456789" else "" for c in v2]: (lambda v4=(v3[: v3.index("")] if "" in v3 else v3): (lambda v5="".join(v4): (int(v5) if v5.isnumeric() else 0))())()* sign)()))() if v1 else 0)(),2**31 - 1,),-(2**31),)

官方给的题解

class Automaton {string state = "start";unordered_map<string, vector<string>> table = {{"start", {"start", "signed", "in_number", "end"}},{"signed", {"end", "end", "in_number", "end"}},{"in_number", {"end", "end", "in_number", "end"}},{"end", {"end", "end", "end", "end"}}};int get_col(char c) {if (isspace(c)) return 0;if (c == '+' or c == '-') return 1;if (isdigit(c)) return 2;return 3;}
public:int sign = 1;long long ans = 0;void get(char c) {state = table[state][get_col(c)];if (state == "in_number") {ans = ans * 10 + c - '0';ans = sign == 1 ? min(ans, (long long)INT_MAX) : min(ans, -(long long)INT_MIN);}else if (state == "signed")sign = c == '+' ? 1 : -1;}
};class Solution {
public:int myAtoi(string str) {Automaton automaton;for (char c : str)automaton.get(c);return automaton.sign * automaton.ans;}
};作者:力扣官方题解
链接:https://leetcode.cn/problems/string-to-integer-atoi/solutions/183164/zi-fu-chuan-zhuan-huan-zheng-shu-atoi-by-leetcode-/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

题目9

#include <iostream>class Solution {
public:bool isPalindrome(int x) {// 负数和以 0 结尾的非零数不是回文数if (x < 0 || (x % 10 == 0 && x != 0)) {return false;}int reversed = 0;while (x > reversed) {reversed = reversed * 10 + x % 10;x /= 10;}// 当数字长度为奇数时,通过 reversed/10 去除中间的数字return x == reversed || x == reversed / 10;}
};
关键字:阿里巴巴采购网官网_大连市工程建设信息网_六盘水seo_宁波seo关键词排名

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: