题目

题链:剑指 Offer 67. 把字符串转换成整数

题解

K神大佬详细题解:面试题67. 把字符串转换成整数(数字越界处理,清晰图解)
题目怎么说呢、难度在于很麻烦,要仔细。
大概步骤:

  1. 先去除两边空格、转化为字符数组
  2. 再判断字符数组是否为0、为0直接返回0
  3. 再设置一个变量sign表示正负
  4. 判断第一是否为正负字符、为﹣就将sign改为-1、且将开始遍历的索引改为1
  5. 然后开始遍历、先判断是否为数字、不是直接返回0
  6. 再判读是否超过最大值、超过根据符号±直接返回
  7. 都不满足5、6条件就是进行拼接了
  8. 最后遍历完成直接返回res*sign
class Solution {public int strToInt(String str) {char[] chars = str.trim().toCharArray();if (chars.length == 0){return 0;}int sign = 1, i = 0;int res = 0,maxOrMin = Integer.MAX_VALUE / 10;if (chars[i] == '-'){sign = -1;i = 1;}else if (chars[i] == '+'){i = 1;}for (int j = i; j < chars.length; j++) {if (chars[j] < '0' || chars[j] > '9'){break;}if (res > maxOrMin || (res == maxOrMin && chars[j] > '7')){return sign == 1 ? Integer.MAX_VALUE:Integer.MIN_VALUE;}res = res*10 + (chars[j] - '0');}return res*sign;}
}

(day 51 - 字符转化为数字 ) 剑指 Offer 67. 把字符串转换成整数相关推荐

  1. 【LeetCode】剑指 Offer 67. 把字符串转换成整数

    [LeetCode]剑指 Offer 67. 把字符串转换成整数 文章目录 [LeetCode]剑指 Offer 67. 把字符串转换成整数 package offer;public class So ...

  2. [[EVD]] - 剑指 Offer 67. 把字符串转换成整数

    题目分析:[[EVD]] - 剑指 Offer 67. 把字符串转换成整数https://leetcode-cn.com/problems/ba-zi-fu-chuan-zhuan-huan-chen ...

  3. 在要求输入数字处找到非数字字符_剑指 Offer 67. 把字符串转换成整数 leetcode 剑指offer系列...

    点击专辑上方"蓝字"关注我吧 题目难度: 中等 原题链接[1] 今天继续更新剑指 offer 系列, 老样子晚上 6 点 45 分准时更新公众号 每日精选算法题, 大家记得关注哦~ ...

  4. 【Java】 剑指offer(67) 把字符串转换成整数

      本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集   题目 请你写一个函数StrToInt,实现把字符串转换成整数这个功能 ...

  5. 【算法】剑指 Offer 67. 把字符串转换成整数

    1.概述 写一个函数 StrToInt,实现把字符串转换成整数这个功能.不能使用 atoi 或者其他类似的库函数. 首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止. 当 ...

  6. 2021-08-30剑指 Offer 67. 把字符串转换成整数

    要考虑到的问题有: 1.如何删去前置空格? isspace()函数 + while循环解决 2.是否为有效的转化? 1)是否存在数字? 如果遇到不是数字就直接返回,这个直接利用char类型的比较方式就 ...

  7. 【LeetCode笔记】剑指 Offer 67. 把字符串转换成整数 (Java、字符串)

    文章目录 题目描述 思路 && 代码 二刷 题目描述 老阅读题了,感觉这道题有点类似写业务接口. 思路 && 代码 首先,把情况划分一下: 非正常值,直接给 0(这个实 ...

  8. 剑指offer:把字符串转换成整数

    题目描述 将一个字符串转换成一个整数(实现Integer.valueOf(string)的功能,但是string不符合数字要求时返回0),要求不能使用字符串转换整数的库函数. 数值为0或者字符串不是一 ...

  9. 判断字符为空_49. 把字符串转换成整数(剑指offer)

    49. 把字符串转换成整数 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数. 数值为0或者字符串不是一个合法的数值则返回0. 输入描述: 输入一个字符串,包括数字字母符号,可以为空 输 ...

  10. Day5.牛客网剑指offer 67题之43-54题(java代码)

    文章目录 Day5.牛客网剑指offer 67题之43-54题 43.左旋转字符串 44.翻转单词顺序列 45.扑克牌顺序 46.孩子们的游戏 47.求1+2+...+n 48.不用加减乘除做加法 4 ...

最新文章

  1. 修正Android基于ZXing的二维码扫描——横竖屏自由切换
  2. push failed in WebIDE
  3. mysql 指定路径_如何为单个MySQL数据库设置特定的目录位置?
  4. mavros 使用记录
  5. Java使用iText实现对PDF文件的操作
  6. php 添加透明水印,php加水印的代码(支持半透明透明打水印,支持png透明背景)
  7. SSE3指令集系列----数据加载与算术运算指令
  8. android view分析工具栏,如何在Android工具栏中使用SearchView
  9. 虚拟ip(VIP)实现原理
  10. 中国锂电设备行业营状况分析及未来发展动向预测报告2022-2028年版
  11. Tableau实战 Tableau官网各版块访问情况(一)总访问量树状图
  12. 报表工具不可或缺的数据填报功能
  13. Ubuntu 使用 ffmpeg 将 webm 转换为 mp4 (批量)
  14. arcade 物理系统_RetroPie和X-Arcade Tankstick-完美的Retro Arcade(加上键绑定,配置和操作方法)
  15. LearnGL - 05 - Texture
  16. word在使用Endnote时变得非常卡解决办法
  17. x265-1.8版本-encoder/dpb.cpp注释
  18. 侯捷C++学习记录-面向对象高级编程上
  19. Matlab:向图中添加注释
  20. 记录webp图像转gif(python webp格式转换)

热门文章

  1. Vim自动补全插件-NeoComplCache
  2. Hibernate级联删除时:Cannot delete or update a parent row: a foreign key constraint fails异常...
  3. Hibernate深入浅出(六)事务2——锁locking
  4. 开源框架Struts:FormBean滴那些事儿
  5. 面向实时嵌入式系统的图形用户界面支持系统――MiniGUI 背景,发展及优势
  6. 绝对经典的滑轮新闻显示(javascript+css)
  7. 34.卷1(套接字联网API)---常用函数
  8. java控制反转_控制反转(IOC)模式
  9. [2019杭电多校第六场][hdu6638]Snowy Smile(维护区间最大子段和)
  10. bzoj3210: 花神的浇花集会