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

Leetcode—7.整数反转【中等】

2023每日刷题(十)

Leetcode—7.整数反转

在这里插入图片描述

关于为什么要设long变量

参考自这篇博客
在这里插入图片描述
在这里插入图片描述
long可以表示-2147483648而且只占4个字节,所以能满足题目要求

复杂逻辑版实现代码

int reverse(int x){int arr[32] = {0};long y;int flag = 1;if(x < 0) {flag = -1;y = x;y = -y;} else {y = x;}int ans = 0;if(y == 0) {ans = 0;}int i = 0;while(y) {arr[i++] = y % 10;y /= 10;}int cnt = i;int pos[10] = {2, 1, 4, 7, 4, 8, 3, 6, 4, 7};int flag2 = 0;if(cnt == 10) {int k = 0;int tmp1 = 0;int tmp2 = 0;while(k < 10) {tmp1 *= 10;tmp2 *= 10;if(k == 9) {if(flag == 1 && arr[k] <= pos[k]) {ans = tmp1 + arr[k];break;} else if(flag == -1 && arr[k] <= pos[k] + 1) {if(arr[k] == pos[k] + 1) {ans = tmp1*(-1)-8;} else {ans = tmp1*(-1)-arr[k];}break;} else {ans = 0;break;}}tmp1 += arr[k];tmp2 += pos[k];if(tmp1 < tmp2) {flag2 = 1;break;} else if(tmp1 > tmp2) {ans = 0;break;}k++;}} if(cnt < 10 || flag2 == 1) {int tmp1 = 0;int j = 0;while(j < cnt) {tmp1 *= 10;tmp1 += arr[j++];}ans = tmp1;if(flag == -1) {ans *= -1;}}return ans;
}

运行结果

在这里插入图片描述

简洁版实现代码

int reverse(int x){long ans = 0;// long类型:防止反转过程溢出long y = x;int d, flag;flag = (x < 0 ? -1 : 1);if(x < 0) {y = -y;}while(y != 0) {d = y % 10;y /= 10;ans = ans * 10 + d;}ans = flag * ans;if(ans < INT_MIN || ans > INT_MAX) {return 0;}return ans;
}

运行结果

在这里插入图片描述

更简洁版实现代码

其实也可以不判断符号

int reverse(int x){long ans = 0;// long类型:防止反转过程溢出long y = x;int d;while(y != 0) {d = y % 10;y /= 10;ans = ans * 10 + d;}if(ans < INT_MIN || ans > INT_MAX) {return 0;}return ans;
}

之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!

相关文章:

Leetcode—7.整数反转【中等】

2023每日刷题&#xff08;十&#xff09; Leetcode—7.整数反转 关于为什么要设long变量 参考自这篇博客 long可以表示-2147483648而且只占4个字节&#xff0c;所以能满足题目要求 复杂逻辑版实现代码 int reverse(int x){int arr[32] {0};long y;int flag 1;if(x <…...

lua-web-utils和proxy设置示例

以下是一个使用lua-web-utils和proxy的下载器程序&#xff1a; -- 首先安装lua-web-utils库 local lwu require "lwu" ​ -- 获取服务器 local function get_proxy()local proxy_url "duoipget_proxy"local resp, code, headers, err lwu.fetch(proxy_…...

分享一下在微信小程序里怎么添加储值卡功能

在微信小程序中添加储值卡功能&#xff0c;可以让消费者更加便捷地管理和使用储值卡&#xff0c;同时也能增加商家的销售收入。下面是一篇关于如何在微信小程序中添加储值卡功能的软文。 标题&#xff1a;微信小程序添加储值卡功能&#xff0c;便捷与高效并存 随着科技的不断发…...

2023高频前端面试题-http

1. HTTP有哪些⽅法&#xff1f; HTTP 1.0 标准中&#xff0c;定义了3种请求⽅法&#xff1a;GET、POST、HEAD HTTP 1.1 标准中&#xff0c;新增了请求⽅法&#xff1a;PUT、PATCH、DELETE、OPTIONS、TRACE、CONNECT 2. 各个HTTP方法的具体作用是什么&#xff1f; 方法功能G…...

图像识别在自动驾驶汽车中的多传感器融合技术

摘要&#xff1a; 介绍文章的主要观点和发现。 引言&#xff1a; 自动驾驶汽车的兴起和重要性。多传感器融合技术在自动驾驶中的关键作用。 第一部分&#xff1a;图像识别技术 图像识别的基本原理。图像传感器和摄像头在自动驾驶中的应用。深度学习和卷积神经网络&#xff…...

Kafka To HBase To Hive

目录 1.在HBase中创建表 2.写入API 2.1普通模式写入hbase&#xff08;逐条写入&#xff09; 2.2普通模式写入hbase&#xff08;buffer写入&#xff09; 2.3设计模式写入hbase&#xff08;buffer写入&#xff09; 3.HBase表映射至Hive中 1.在HBase中创建表 hbase(main):00…...

python pandas.DataFrame 直接写入Clickhouse

import pandas as pd import sqlalchemy from clickhouse_sqlalchemy import Table, engines from sqlalchemy import create_engine, MetaData, Column import urllib.parsehost 1.1.1.1 user default password default db test port 8123 # http连接端口 engine create…...

德语中第二虚拟式在主动态的形式,柯桥哪里可以学德语

德语中第二虚拟式在主动态的形式 1. 对于大多数的动词&#xff0c;一般使用这样的一般现在时时态&#xff1a; wrde 动词原形 例句&#xff1a;Wenn es nicht so viel kosten wrde, wrde ich mir ein Haus am Meer kaufen. 如果不花这么多钱&#xff0c;我会在海边买一栋房…...

[Python进阶] 消息框、弹窗:tkinter库

6.16 消息框、弹窗&#xff1a;tkinter 6.16.1 前言 应用程序中的提示信息处理程序是非常重要的部分&#xff0c;用户要知道他输入的资料到底正不正确&#xff0c;或者是应用程序有一些提示信息要告诉用户&#xff0c;都必须通过提示信息处理程序来显示适当的信息&#xff0c…...

(免费领源码)java#Springboot#mysql装修选购网站99192-计算机毕业设计项目选题推荐

摘 要 随着科学技术&#xff0c;计算机迅速的发展。在如今的社会中&#xff0c;市场上涌现出越来越多的新型的产品&#xff0c;人们有了不同种类的选择拥有产品的方式&#xff0c;而电子商务就是随着人们的需求和网络的发展涌动出的产物&#xff0c;电子商务网站是建立在企业与…...

生活废品回收系统 JAVA语言设计和实现

目录 一、系统介绍 二、系统下载 三、系统截图 一、系统介绍 基于VueSpringBootMySQL的生活废品回收系统包含资源类型模块、资源品类模块、回收机构模块、回收机构模块、资源销售单模块、资源交易单模块、资源交易单模块&#xff0c;还包含系统自带的用户管理、部门管理、角…...

redhat/centos 配置本地yum源

- 详细步骤(首先需要将iso文件上传到服务器)&#xff1a; 1. mkdir /media/cdrom #新建镜像文件挂载目录2. cd /usr/local/src #进入系统镜像文件存放目录3. ls #列出目录文件&#xff0c;可以看到刚刚上传的系统镜像文件4. mount -t iso9660 -o loop /usr/local/src/rhel-s…...

FLStudio2024汉化破解版在哪可以下载?

水果音乐制作软件FLStudio是一款功能强大的音乐创作软件,全名:Fruity Loops Studio。水果音乐制作软件FLStudio内含教程、软件、素材,是一个完整的软件音乐制作环境或数字音频工作站... FL Studio21简称FL 21&#xff0c;全称 Fruity Loops Studio 21&#xff0c;因此国人习惯叫…...

Java 音频处理,音频流转音频文件,获取音频播放时长

1.背景 最近对接了一款智能手表&#xff0c;手环&#xff0c;可以应用与老人与儿童监控&#xff0c;环卫工人监控&#xff0c;农场畜牧业监控&#xff0c;宠物监控等&#xff0c;其中用到了音频传输&#xff0c;通过平台下发语音包&#xff0c;发送远程命令录制当前设备音频并…...

Spring Boot发送邮件

在现代的互联网应用中&#xff0c;发送电子邮件是一项常见的功能需求。Spring Boot提供了简单且强大的邮件发送功能&#xff0c;使得在应用中集成邮件发送变得非常容易。本文将介绍如何在Spring Boot中发送电子邮件&#xff0c;并提供一个完整的示例。 1. 准备工作 在开始之前…...

智慧矿山:AI算法助力!刮板机监测,生产效率和安全性提升!

工作面刮板机在煤矿等采矿场景中起着重要作用。为了提高其生产效率和安全性&#xff0c;研究人员开发了一种基于 AI 算法的刮板机监测技术。 在传统的刮板机监测中&#xff0c;通常需要人工观察和判断刮板机的状态。这种方法存在许多问题&#xff0c;如主观性、耗时和易出错等。…...

Qt跨平台(统信UOS)各种坑解决办法

记录Qt跨平台的坑&#xff0c;方便日后翻阅。 一、环境安装 本人用的是qt 5.14.2.直接在官网下载即可。地址&#xff1a;Index of /archive/qt/5.14/5.14.2 下载linux版本。 下载之后 添加可执行权限。 chmod 777 qt-opensource-linux-x64-5.14.2.run 然后执行。 出现坑1…...

ORB-SLAM3算法1之Ubuntu18.04+ROS-melodic安装ORB-SLAM3及各种问题解决

文章目录 0 引言1 安装依赖1.1 opencv安装1.2 Eigen3安装1.3 Pangolin安装1.4 其他2 编译安装ORB-SLAM32.1 build.sh2.2 build_ros.sh0 引言 ORB-SLAM3,在之前ORB-SLAM和ORB-SLAM2的基础上,新增了IMU多传感器融合SLAM,这是第一个能够使用针孔和鱼眼镜头模型通过单目、立体和…...

git学习笔记之用命令行解决冲突

背景 一般来说&#xff0c;当使用git检测到源分支和目标分支发生冲突时&#xff0c;我们习惯用IDE在本地进行冲突的解决&#xff0c;再合并、push。 但如果冲突文件不多&#xff0c;我们大可以直接用命令行去解决冲突。 方法 第一种方法&#xff1a; 找到所有的>>>…...

C语言中的内联汇编是什么?如何使用内联汇编进行底层编程?

C语言中的内联汇编是一种高级编程技术&#xff0c;允许开发者在C代码中嵌入汇编代码&#xff0c;以实现对特定处理器指令的直接控制和优化。内联汇编通常用于底层编程&#xff0c;例如操作系统开发、嵌入式系统编程和性能关键的应用程序。本文将详细介绍内联汇编的概念、语法和…...

日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻

在如今就业市场竞争日益激烈的背景下&#xff0c;越来越多的求职者将目光投向了日本及中日双语岗位。但是&#xff0c;一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧&#xff1f;面对生疏的日语交流环境&#xff0c;即便提前恶补了…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局&#xff1a;PCB行业的时代之问 在数字经济蓬勃发展的浪潮中&#xff0c;PCB&#xff08;印制电路板&#xff09;作为 “电子产品之母”&#xff0c;其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透&#xff0c;PCB行业面临着前所未有的挑战与机遇。产品迭代…...

Spring Boot 实现流式响应(兼容 2.7.x)

在实际开发中&#xff0c;我们可能会遇到一些流式数据处理的场景&#xff0c;比如接收来自上游接口的 Server-Sent Events&#xff08;SSE&#xff09; 或 流式 JSON 内容&#xff0c;并将其原样中转给前端页面或客户端。这种情况下&#xff0c;传统的 RestTemplate 缓存机制会…...

1688商品列表API与其他数据源的对接思路

将1688商品列表API与其他数据源对接时&#xff0c;需结合业务场景设计数据流转链路&#xff0c;重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点&#xff1a; 一、核心对接场景与目标 商品数据同步 场景&#xff1a;将1688商品信息…...

最新SpringBoot+SpringCloud+Nacos微服务框架分享

文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的&#xff0c;根据Excel列的需求预估的工时直接打骨折&#xff0c;不要问我为什么&#xff0c;主要…...

服务器--宝塔命令

一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行&#xff01; sudo su - 1. CentOS 系统&#xff1a; yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...

蓝桥杯 冶炼金属

原题目链接 &#x1f527; 冶炼金属转换率推测题解 &#x1f4dc; 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V&#xff0c;是一个正整数&#xff0c;表示每 V V V 个普通金属 O O O 可以冶炼出 …...

LRU 缓存机制详解与实现(Java版) + 力扣解决

&#x1f4cc; LRU 缓存机制详解与实现&#xff08;Java版&#xff09; 一、&#x1f4d6; 问题背景 在日常开发中&#xff0c;我们经常会使用 缓存&#xff08;Cache&#xff09; 来提升性能。但由于内存有限&#xff0c;缓存不可能无限增长&#xff0c;于是需要策略决定&am…...

MinIO Docker 部署:仅开放一个端口

MinIO Docker 部署:仅开放一个端口 在实际的服务器部署中,出于安全和管理的考虑,我们可能只能开放一个端口。MinIO 是一个高性能的对象存储服务,支持 Docker 部署,但默认情况下它需要两个端口:一个是 API 端口(用于存储和访问数据),另一个是控制台端口(用于管理界面…...

探索Selenium:自动化测试的神奇钥匙

目录 一、Selenium 是什么1.1 定义与概念1.2 发展历程1.3 功能概述 二、Selenium 工作原理剖析2.1 架构组成2.2 工作流程2.3 通信机制 三、Selenium 的优势3.1 跨浏览器与平台支持3.2 丰富的语言支持3.3 强大的社区支持 四、Selenium 的应用场景4.1 Web 应用自动化测试4.2 数据…...