力扣题库刷题笔记8--字符串转换正数(atoi)

news2024/11/17 23:55:44

1、题目如下:

 

 2、个人Python代码实现如下:

        这里可以看到,解答错误很多次,实际上就是对于题目的条件读的不够细,导致很多边界值的用例跑不过。而且个人习惯极其不好,没有输入各种可能的输入进行调试,而是直接提交代码,这样的话,其实在考试的时候很难去发现是哪里出了问题。 

        下图是用于对应代码,和题目中的要求:

 代码如下:

class Solution:

    def myAtoi(self, s: str) -> int:

        temp = s.lstrip()                       #将字符串左方空格去掉

        res_temp = ""                           #临时变量,将字符串中的数字加入该变量,最后赋值给输出

        res = 0                                 #输出变量

        flag = ""                               #记录字符串s是否含有正负符号

        #判断第一个字符是否为正负号,如果是,将第一个字符赋值给flag,并在s中删除第一个字符

        if len(temp) > 1:

            if temp[0] == "+" or temp[0] == "-":   

                flag = temp[0]

                temp = temp[1:]

        for i in temp:                          #遍历字符串s,如果字符为数字,则拼接到res_temp,反之,退出循环

            if i.isdigit():

                res_temp += i

            else:

                break                       

        if res_temp:

            if int(res_temp) >= pow(2, 31):

                if flag == "-":

                    res_temp = str(pow(2, 31))

                else:

                    res_temp = str(pow(2, 31) - 1)

            res = int(flag + res_temp)

                

        return res



 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/682107.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【计算机网络自顶向下】计算机网络期末自测题(一)答案

2019-2020 学年第 2 学期自测题答案及评分标准 (卷 1) 计算机网络 一、 填空题: 参考答案: 1 、 01000101 、11100111 3 、 100Mbps、双绞线、基带、全双工 [10Mbps 要求单位] 4 、 报文 5 、 ICMP 6 、 虚电路 7 、 距离矢量、链路状态 …

考虑充电负荷空间可调度特性的分布式电源与电动汽车充电站联合配置方法(matlab代码)

目录 1 主要内容 目标函数 电动汽车负荷建模 算例系统图 程序亮点 2 部分代码 3 程序结果 ​4 下载链接 1 主要内容 该程序复现博士文章《互动环境下分布式电源与电动汽车充电站的优化配置方法研究》第四章《考虑充电负荷空间可调度特性的分布式电源与电动汽车充电站联…

【抗扰PID控制】干扰抑制PID控制器研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

Excel管理工具简陋但强大 vs 雷军为何说“没有设计是最好的设计

解密:雷军为何说“没有设计是最好的设计” 雷军洗白:没有刻意的设计才是最好的设计! 有的人开发了10个到50个,甚至几百个Excel管理工具。每个工具里面有VBA代码几千行。 还有个高手,趁过年一个月左右时间完成一个公司用…

SAP ABAP DIALOG 表格控件的简单例子<转载>

本文是一个很见到的ALV表格控件例子,但是原文作者写的很详细,所以借过来一用,很适合新手练手用。在这里感谢原文作者大大! 原文链接:https://mp.weixin.qq.com/s/bhP3w5DIADdf9P624C5kpw 表格控件是ABAP编程中最常用的…

0基础学习VR全景平台篇第48篇:高级功能-密码访问

功能位置示意 一、本功能将用在哪里? 密码访问功能,常用于暂未交付的项目,使用密码访问保护作品数据的私密性; 或为满足不同情境下的推广需求使用。 二、如何使用本功能? 1、选择-密码访问功能; 2、输入…

nvm使用大全nvm如何动态切换node版本

注意: nvm use node版本时,要使用管理员权限打开cmd输入命令,否则报错 常用命令 nvm ls :列出所有已安装的 node 版本 nvm list :列出所有已安装的 node 版本 nvm list available :显示所有可下载的版本 …

较旧系统的轻量级的LINUX发行版—FATDOG64

导读我们回顾FatDog64 Linux,这个轻量级的Linux发行版可能不是现代的,但它非常适合于老化的计算机,fatdog64 Linux是一个小而灵活的64位多用户Linux发行版。 有一个Linux发行版几乎每一个都需要,有Linux分布的黑客,天…

【NLP】Word2vec概念和演进史

一、说明 “万物都有一种模式,它是我们宇宙的一部分。它具有对称、优雅和优雅——这些品质你总能在真正的艺术家捕捉到的作品中找到。” ~ 沙丘 (1965) 对于word2vec,它不是一个或一种算法,而是一系列思想和算法的综合。本文通过有限篇幅&…

信创优选,国产开源,Solon v2.3.6 发布

Solon 是什么开源项目? 一个,Java 新的生态型应用开发框架。它从零开始构建,有自己的标准规范与开放生态(历时五年,已有全球第二级别的生态)。与其他框架相比,它解决了两个重要的痛点&#xff…

uniapp中小程序的生命周期

一、uni-app应用生命周期 函数名说明onLuaunch当uni-app 初始化完成时触发(全局只触发一次)onShow当 uni-app 启动,或从后台进入前台显示onHide当 uni-app 从前台进入后台onError当 uni-app 报错时触发onUniNViewMessage对 nvue 页面发送的数…

linux下查看某进程内有多少个线程的方法(ps、top、Htop)

文章目录 1 确认进程号2 方式一:ps(查看指定进程内的线程情况)3 方式2:使用top(实时显示指定线程内各个线程情况)4 方式3:使用htop5 传递signal给指定PID:kill -signal PID 1 确认进…

MySQL调优---文件排序(FileSort)详解

目录 产生 分类对比 产生情况 进行优化 产生 如果索引不能用于满足ORDER BY子句,MySQL将执行filesort读取表行并对它们进行排序的操作用Explain语句可以看到最后一列显示using filesortEXPLAIN展示的执行计划的Extra这个字段中的“Using filesort”表示的就是需…

DEV中TextEdit的keydown事件与click事件

DEV中TextEdit的keydown事件与click事件 gridview中加了一列textedit,并给其加了keydown事件,里面调用了另一个gridview1。 现在想给click事件也加上相同的功能,但是不管是复制相同的代码还是直接调用keydown事件,gridview1都调不…

django线上兼职平台系统-计算机毕设 附源码83320

django线上兼职平台系统 摘 要 信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为难以攻克的课题。针对线上兼职等问题&am…

Steam客户端现在可以让你在Linux上启用硬件加速了

导读Valve最近发布了一个新的稳定的Steam客户端更新,大多数Linux玩家已经等待了很久,因为它最终让你在你的系统上启用硬件加速。 新的稳定的Steam客户端更新是一个重要的更新,带来了一个具有现代设计元素(对话框、菜单、字体和颜色…

脉冲雷达和相干检测

脉冲雷达的基本工作过程如下图所示 ​对于脉冲雷达来讲,只对信号的存在进行判断,得出的结果很简单:是否接收到回波信号,附带延时。 本文将重点讲解虚线框中的部分,也就是雷达信号的接收和检测,x(t)为接收端…

前端Vue自定义地址展示地址选择地址管理组件

前端Vue自定义地址展示地址选择地址管理组件&#xff0c; 下载完整代码请访问uni-app插件市场地址&#xff1a;https://ext.dcloud.net.cn/plugin?id13181 效果图如下&#xff1a; # cc-addressBox #### 使用方法 使用方法 <!-- addressItem&#xff1a;地址条目数据 c…

阿里云 搭建网站步骤

目录 1. 登录阿里云网站2. 购买服务器3. 获取服务器实例4.开放服务器端口(重点)5.传输项目到服务器(重点)6.更新apt工具和安装nginx(重点)7.配置nginx以及启动(重点) 1. 登录阿里云网站 阿里云网站 2. 购买服务器 3. 获取服务器实例 4.开放服务器端口(重点) 因为阿里云默认会…

java版 工程管理系统源码之Spring Cloud 工程项目各模块及其功能点清单

高效的工程项目管理软件不仅能够提高效率还应可以帮你节省成本提升利润 在工程行业中&#xff0c;管理不畅以及不良的项目执行&#xff0c;往往会导致项目延期、成本上升、回款拖后&#xff0c;最终导致项目整体盈利下降。企企管理云业财一体化的项目管理系统&#xff0c;确保…