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

大型电商网站建设武平县网站建设

大型电商网站建设,武平县网站建设,vps做网站,桃子网站logo题目描述 请你来实现一个myAtoi(string s)函数,使其能将字符串转换成一个32位有符号整数。函数myAtoi(string s)的算法需要按照以下步骤: 读入字符串并丢弃无用的前导空格检查下一个字符是否为正负号,读取该字符(如果有&#xff0…

题目描述

请你来实现一个myAtoi(string s)函数,使其能将字符串转换成一个32位有符号整数。函数myAtoi(string s)的算法需要按照以下步骤:

  1. 读入字符串并丢弃无用的前导空格
  2. 检查下一个字符是否为正负号,读取该字符(如果有)
  3. 读取数字字符,直到遇到非数字字符或到达字符串末尾
  4. 将前面读入的字符转换为整数,如果没有读入数字,则值为0
  5. 如果整数超过32位有符号整数范围[-2^31,2^31 -1],需要截断这个整数

难度:中等

题目链接:8. 字符串转换整数 (atoi) - 力扣(LeetCode)

示例一:

输入:s = "42"
输出:42
解释:
第 1 步:"42"(当前没有读入字符,因为没有前导空格)
第 2 步:"42"(当前没有读入字符,因为这里不存在 '-' 或者 '+')
第 3 步:"42"(读入 "42")

 示例二:

输入:s = "   -42"
输出:-42
解释:
第 1 步:"   -42"(读入前导空格,但忽视掉)
第 2 步:"   -42"(读入 '-' 字符,所以结果应该是负数)
第 3 步:"   -42"(读入 "42")

示例三:
 

输入:s = "4193 with words"
输出:4193
解释:转换截止于数字 '3' ,因为它的下一个字符不为数字

提示

  • 0 <= s.length <= 200
  • s 由英文字母(大写和小写)、数字(0-9)、' '、'+'、'-' 和 '.' 组成

方法:模拟法

 注意点:

  • 状态机思想:
  1. 处理空格状态
  2. 处理符号状态
  3. 处理数字状态
  4. 处理结束状态
  • 边界处理:
  1. 整数范围检查
  2. 符号处理
  3. 非法字符处理
  • 溢出处理
  1. 在加入新的数字前检查是否会溢出
  2. 使用long类型暂存结果

时间复杂度:O(n),其中n是字符串长度。

空间复杂度:O(1)。

public class Solution  //读题得最终转换为一个数字
{public int MyAtoi(string s){int i=0,n=s.Length;while(i<n && s[i]==' ')  i++;  //如果是空格,跳过int sign=1;if(i<n && s[i] == '+' || s[i] =='-'){sign = s[i] =='+' ? 1:-1;//定义加减符号,加号为1,减号为-1i++;}long result = 0;while(i<n && char.IsDigit(s[i])){result = result*10+(s[i]-'0');//考虑了进位10,然后后续加数\\处理溢出if(sign==1 && result >int.MaxValue)   return int.MaxValue;if(sign==-1  && result<int.MinValue)  return int.MinValue;i++;}return (int)(sign*result);}}

http://www.dtcms.com/a/602290.html

相关文章:

  • seo01网站营销推广软件有哪些
  • 建设银行网站信息补充网站建设app端
  • 结合 Leetcode 题探究KMP算法
  • Vue3 VueUse(组合式 API 工具库)
  • seo推广专员工作好做吗绍兴seo管理
  • 嵌入式开发中的 Git CI/CD
  • 【ZeroRange WebRTC】STUN srflx 与 ICE 连通性检查
  • 网站开发公司怎么接单外贸销售怎么找客户
  • vps如何设置网站权限曲阜市古建设计院网站
  • 公司做网站一定要钱吗旅游网站建设
  • 从零到迁移:Docker Desktop + WSL2 完整安装与迁移教程(2025-11-12实测版)
  • 制作网站的程序语言wordpress收不到
  • python Anaconda3 5.3.1(version:4.5.11)下载安装教程
  • 现在网站建设用什么语言最便宜的免费建站
  • ubuntu所有版本镜像下载链接
  • LLMs之Tool:social-analyzer的简介、安装和使用方法、案例应用之详细攻略
  • 力扣面试150题打卡
  • Celery高级配置与队列管理实战
  • 欧地希焊接机械手节气装置
  • Ansible进行Nginx编译安装的详细步骤
  • 做 理财网站有哪些问题php可以做网站
  • 双人小游戏 PVZ植物大战僵尸TV触控版 支持触摸对战手柄完美存档支持安卓低版本2.1~
  • 网站建设进展情况汇报网站文章模板
  • Leetcode 54
  • 东西湖建设局网站做网站都用什么语言
  • sdf内容小结
  • 有哪些网站可以做seo推广中国纪检监察报电子版2021
  • 直播网站开发合同无效的12种情形
  • 好看简单易做的网站手机网站网页开发教程
  • 青海住房和建设厅网站单一本地门户网站源码