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

那里有正规网站开发培训学校wordpress cp 部署

那里有正规网站开发培训学校,wordpress cp 部署,网址域名解析,重庆建网站推广一、题目描述请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C 中的 atoi 函数)。函数 myAtoi(string s) 的算法如下:读入字符串并丢弃无用的前导空格检查下一个字符(假设还未…

一、题目描述

请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ 中的 atoi 函数)。

函数 myAtoi(string s) 的算法如下:

读入字符串并丢弃无用的前导空格

检查下一个字符(假设还未到字符末尾)为正还是负号,读取该字符(如果有)。 确定最终结果是负数还是正数。 如果两者都不存在,则假定结果为正。

读入下一个字符,直到到达下一个非数字字符或到达输入的结尾。字符串的其余部分将被忽略。

将前面步骤读入的这些数字转换为整数(即,"123" -> 123, "0032" -> 32)。如果没有读入数字,则整数为 0 。必要时更改符号(从步骤 2 开始)。

如果整数数超过 32 位有符号整数范围 [−231, 231 − 1] ,需要截断这个整数,使其保持在这个范围内。具体来说,小于 −231 的整数应该被固定为 −231 ,大于 231 − 1 的整数应该被固定为 231 − 1 。

返回整数作为最终结果。

注意:

本题中的空白字符只包括空格字符 ' ' 。

除前导空格或数字后的其余字符串外,请勿忽略 任何其他字符。

示例 1:

输入:s = "42"

输出:42

解释:加粗的字符串为已经读入的字符,插入符号是当前读取的字符。

第 1 步:"42"(当前没有读入字符,因为没有前导空格)

^

第 2 步:"42"(当前没有读入字符,因为这里不存在 '-' 或者 '+')

^

第 3 步:"42"(读入 "42")

^

解析得到整数 42 。

由于 "42" 在范围 [-231, 231 - 1] 内,最终结果为 42 。

示例 2:

输入:s = " -42"

输出:-42

解释:

第 1 步:" -42"(读入前导空格,但忽视掉)

^

第 2 步:" -42"(读入 '-' 字符,所以结果应该是负数)

^

第 3 步:" -42"(读入 "42")

^

解析得到整数 -42 。

由于 "-42" 在范围 [-231, 231 - 1] 内,最终结果为 -42 。

示例 3:

输入:s = "4193 with words"

输出:4193

解释:

第 1 步:"4193 with words"(当前没有读入字符,因为没有前导空格)

^

第 2 步:"4193 with words"(当前没有读入字符,因为这里不存在 '-' 或者 '+')

^

第 3 步:"4193 with words"(读入 "4193";由于下一个字符不是一个数字,所以读入停止)

^

解析得到整数 4193 。

由于 "4193" 在范围 [-231, 231 - 1] 内,最终结果为 4193 。

来源:力扣(LeetCode)

链接:https://leetcode.cn/problems/string-to-integer-atoi

著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

二、运行结果

三、解题思路

(1)首选要明确,在第一个数字的前面,只能出现+,-或空格,且+,-号只能出现一次,如果是其他情况,就直接中断退出,返回结果;

(2)在出现第一位数字之后,只要出现非数字字符(包括+,-号),就中断退出,返回结果;

(3)这题只考虑转换为整数的情形,所以出现小数点 . 就退出返回结果,原本代码中已经写了转换为小数点的情况,但发现这里不需要就删掉了;

代码中出现的几个标志变量:flag:表示数字是正数还是负数(true为整数);hadNum:表示是否已经其他情况在代码中均有注释。

四、AC代码

class Solution {public int myAtoi(String s) {long ans = 0L;boolean flag = true; //true表示正数boolean hadNum = false; //false表示还没有出现过数字或for(char c : s.toCharArray()){if(c>='0' && c<='9'){  //数字字符int num = c - '0';ans = ans * 10 + num;hadNum = true;if(-ans < Integer.MIN_VALUE) break;  //超出int的范围}else {  //非数字字符if(hadNum || (c>='A'&&c<='z') || c=='.') break;  //前面已经出现过数字if(c == '-' ) {hadNum = true;flag = false;}else if(c == '+') hadNum = true;  //已经出现过+号}}if(flag) {  //正数if(ans > Integer.MAX_VALUE) return Integer.MAX_VALUE;return  (int)ans;}else {  //负数if(-ans < Integer.MIN_VALUE) return Integer.MIN_VALUE;return -(int)ans;}}
}
http://www.yayakq.cn/news/225447/

相关文章:

  • 旅游门票做的最好的是哪个网站企业网站建站流程
  • 织梦网站更改主页链接contrast wordpress
  • 上海网站设计培训班如何创建游戏网站
  • 做任务赚话费的网站wordpress 极简模版
  • 建设银行兰州分行网站博敏 网站开发
  • 注册top域名做公司网站wordpress 开启链接
  • 做 爱 网站小视频下载网络管理系统的每个节点都包含一组与管理有关的软件
  • 定制网站开发公司排名宝塔重装WordPress
  • 做网站在线支付系统多少钱工信部备案管理系统
  • 服务器租用相关网站工作室创业项目
  • 昆明网站建设c3sales1534939978姐的微信德惠市
  • 工程建设监理网站企业网站的建立费用 作什么科目
  • 宝盈集团直营网站怎么做温州网站建设模板总部
  • 免费网站注册免费创建网站做网络营销推广途径
  • 网站搭建服务器需要什么学网站开发难吗
  • 知名自适应网站建设哪家好ppt模板资源网站
  • 苏州网站设计营销公司建设一个网站价格
  • 怎么在网站挂黑链接wordpress 访问慢
  • 福安 网站设计wordpress问题解决方法
  • wordpress加载视频网站优化比较好的公司
  • php网站开发所需要的软件网站功能框架
  • wordpress怎么给别人建站医药网站怎么做
  • 小语种网站怎么做企业所得税怎么征收几个点
  • 凡建网站电影网站如何优化
  • 文秘写作网站网站开发怎么谈客户
  • 网站建设期末答案网站建设情况检查报告
  • 受欢迎的建网站哪家好申请一个app多少钱
  • 充实网站 廉政建设 板块苏州风险区域最新
  • 网站维护页面 下载扬州做网站的公司哪个好
  • 湖南省金力电力建设有限公司 网站怎样防止别人利用自己的电脑做网站服务器