当前位置: 首页 > news >正文

【LeetCode】7. 整数反转

题目链接


在这里插入图片描述
在这里插入图片描述

Python3

官方解法 ⟮ O ( ∣ x ∣ ) 、 O ( 1 ) ⟯ \lgroup O(|x|)、O(1)\rgroup O(x)O(1)⟯

class Solution:def reverse(self, x: int) -> int:INT_MIN, INT_MAX = -2**31, 2**31 - 1rev = 0while x != 0:if rev < INT_MIN // 10 + 1 or rev > INT_MAX // 10:return 0 digit = x % 10 if x < 0 and digit > 0:digit -= 10  # Python3 的取模运算在 x 为负数时也会返回 [0, 9) 以内的结果,因此这里需要进行特殊判断x = (x - digit) // 10rev = rev * 10 + digit return rev 

在这里插入图片描述

写法2

class Solution:def reverse(self, x: int) -> int:flag = 1if x < 0:flag = -1x = - xres = int(str(x)[::-1])#return 0 if (res > 2**31 - 1 or -res < -2**31) else res * flag return res * flag if -2**31<= res <= 2**31 - 1  else 0 
class Solution:def reverse(self, x: int) -> int:flag = 1if x < 0:flag = -1x = - xs = str(x)res = ''for i in range(len(s)-1, -1, -1):res += s[i]res = int(''.join(res))return 0 if (res > 2**31 - 1 or -res < -2**31) else res * flag     

写法3

class Solution:def reverse(self, x: int) -> int:flag = 1if x < 0:flag = -1x = - xres = 0while x > 0:x, tmp = divmod(x, 10)res = res * 10 + tmp res *= flag if -2**31 <= res <= 2**31 - 1:return reselse:return 0

C++

官方解法 ⟮ O ( ∣ x ∣ ) 、 O ( 1 ) ⟯ \lgroup O(|x|)、O(1)\rgroup O(x)O(1)⟯

class Solution {
public:int reverse(int x) {int res = 0;//int INT_MAX = 2**31-1; INT_MIN = -2**31; // C++ 自带while (x != 0){if (res < INT_MIN / 10 || res > INT_MAX / 10){// 注意写法return 0;}int digit = x % 10;x /= 10;res = res * 10 + digit;}return res;}
};
http://www.lryc.cn/news/209320.html

相关文章:

  • 防止请求重复提交:注解+拦截器的实现方案
  • C#使用mysql-connector-net驱动连接mariadb报错
  • SpringBoot 定时任务:@EnableScheduling @Scheduled
  • Jquery 如何获取子元素。如何找到所有 HTML select 标签的选中项。jQuery 里的 ID 选择器和 class 选择器有何不同
  • Python Selenium 之数据驱动测试的实现!
  • 【Proteus仿真】【STM32单片机】智能语音家居陪护机器人
  • C#上位机序列10: 批量读写+点对点更新+数据类型处理
  • MySQL 概述 数据库表操作 数据增删改
  • 存储器概述
  • Fabric.js 使用自定义字体
  • 【C++项目】高并发内存池第七讲性能分析
  • 【JavaScript】快速学习JS
  • 控制输入流,从控制台打印到文件中,更改输出的位置
  • 计算线阵相机 到 拍摄产品之间 摆放距离?(隐含条件:保证图像不变形)
  • 【网络】详解http协议
  • 1819_ChibiOS的互斥信号与条件变量
  • CSDN学院 < 华为战略方法论进阶课 > 正式上线!
  • 电商接口api数据比价接口推荐
  • 读取Excel的工具类——ExcelKit
  • vscode连接服务器一直retry
  • Spring Cloud Sentinel整合Nacos实现配置持久化
  • STM32F4VGT6-DISCOVERY:uart1驱动
  • C语言之 结构体,枚举,联合
  • 红米电脑硬盘剪切
  • 微信小程序在线预览PDF文件
  • Android 工厂模式增加Type-A功能测试
  • Web攻防06_sqlmap的使用
  • C++模拟实现-----日期计算器(超详细解析,小白一看就会!)
  • Oracle实现把B表某一字段更新到A表
  • CUMCM历年赛题汇总