字符串转换整数

  • 题目
  • 大致思路
  • 代码实现

题目

大致思路

这题主要是乱,思路大家都很容易想,就是把各种情况给码出来就行了,大家见我的代码注释会比较清晰。

  1. 几个用得到的方法:trim和substring,toCharArray方法

代码实现

package com.immunize.leetcode.myAtoi;public class MyAtoi {public int myAtoi(String str) {// 删除前导和尾随空格str = str.trim();// 除去特殊情况if (str == null || str.length() == 0)return 0;// 读取首字符char firstChar = str.charAt(0);// 三个标记量int symbol = 1;int start = 0;long rev = 0;// 若为﹢,则sign为1,指针递增if (firstChar == '+') {symbol = 1;start++;} else if (firstChar == '-') {// 若为-,则sign为-1,指针递增symbol = -1;start++;}// 遍历除去符号的字符串,也可使用subString方法来取,不使用start指针。for (int i = start; i < str.length(); i++) {// 不是数字的话,则直接返回结果,注意结果必须转化为int型if (!Character.isDigit(str.charAt(i))) {return (int) rev * symbol;}// 将转化后的值计算出来rev = rev * 10 + str.charAt(i) - '0';// 为+且大于最大值,则返回MAX,为-且大于最大值,则返回MINif (symbol == 1 && rev > Integer.MAX_VALUE)return Integer.MAX_VALUE;if (symbol == -1 && rev > Integer.MAX_VALUE)return Integer.MIN_VALUE;}// 不超出范围的情况则直接返回即可。return (int) rev * symbol;}
}

20190822:(leetcode习题)字符串转换整数 (atoi)相关推荐

  1. [DFA|有限状态机] leetcode 8 字符串转换整数(atoi)

    [DFA|有限状态机] leetcode 8 字符串转换整数(atoi) 1.题目 题目链接 请你来实现一个 atoi 函数,使其能将字符串转换成整数. 首先,该函数会根据需要丢弃无用的开头空格字符, ...

  2. 32位有符号整数_[LeetCode] 8. 字符串转换整数 (atoi)

    题目链接:https://leetcode-cn.com/problems/string-to-integer-atoi/ 题目描述: 请你来实现一个 atoi 函数,使其能将字符串转换成整数. 首先 ...

  3. leetcode 8. 字符串转换整数 (atoi)

    难度:中等 频次:75 题目: 请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ 中的 atoi 函数). 函数 myAtoi(s ...

  4. Leetcode 8. 字符串转换整数 (atoi) (每日一题 20210615)

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

  5. Leetcode 08. 字符串转换整数 (atoi)

    原题链接 1.字符  0~~~~~9 分别对应整数 48~~~~~57 2.先过滤空白 3.确定前面所带的符号 4. long long res = 0;     res = res * 10 + s ...

  6. LeetCode 8 字符串转换整数 (atoi)

    https://leetcode-cn.com/problems/string-to-integer-atoi/ 解决方案 class Solution {public int myAtoi(Stri ...

  7. Leetcode 129求根节点到叶节点数字之和、104二叉树的最大深度、8字符串转换整数(atoi)、82删除排序链表中的重复元素II、204二分查找、94二叉树的中序遍历、144二叉树的前序遍历

    Top1:Leetcode 129求根节点到叶节点数字之和 官方题解:https://leetcode.cn/problems/sum-root-to-leaf-numbers/solution/qi ...

  8. ⭐算法入门⭐《模拟》中等01 —— LeetCode 8. 字符串转换整数

    文章目录 一.题目 1.题目描述 2.基础框架 3.原题链接 二.解题报告 1.思路分析 2.时间复杂度 3.代码详解 三.本题小知识 四.加群须知 一.题目 1.题目描述   实现一个myAtoi( ...

  9. c++ 32位有符号的整数_【LeetCode】字符串分类字符串转换整数 (atoi)

    " 摘要:本文主要讲述LeetCode字符串分类字符串转换整数 (atoi)解法.主要内容如下: 题目 示例 解题 " 01 - 题目 请你来实现一个 atoi 函数,使其能将字符 ...

  10. 8. 字符串转换整数 (atoi)(leetcode力扣算法 - java / rust)

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

最新文章

  1. VScode 乱装插件环境破坏踩坑自我反思总结
  2. 解决报错:错误1130- Host xxx is not allowed to connect to this MariaDb server
  3. 7. webpack 初步熟悉使用
  4. 【Linux系统编程】进程常用调度算法
  5. 关于RTP和SRT之间的互操作性,你需要了解什么?
  6. Node 即学即用 笔记 思维导图
  7. centos mount 用法_linux screen的用法 - mouseleo
  8. 怎么用计算机连接电视,电视当电脑显示器怎么连接
  9. php防伪溯源x系统_区块链溯源防伪追溯系统开发解决方案
  10. 用c++实现一个插入,删除和随机访问都是O(1)的容器(剑指||30)
  11. dispatcherServlet源码分析之doDispatch
  12. 学地质灾害还是学计算机专业,地质灾害与防治技术专科专业介绍
  13. 苹果输入法怎么换行_朋友圈长文字不折叠输入法,复制粘贴避免只显示一行
  14. Matlab中计算图像的灰度值
  15. 设计原则之【开闭原则】
  16. metasploit port 详细使用方法
  17. 软件开发应届生求职经验(其他专业可参考)
  18. ElementUI 介绍
  19. AutoHotkey 鼠标控制命令
  20. windows溢出保护原理与绕过方法概览(转自riusksk's blog(泉哥))

热门文章

  1. 程序员的代码行数越少越好?
  2. 如何巧用区块链密码学避免数据“裸奔”?
  3. GitHub 疑被审查?著名“换脸”开源项目遭限制访问
  4. Python 2 即将停止支持!
  5. 如何用 60 行代码爬取知乎神回复?
  6. 和 8 个程序员聊了一下午,集齐了这些经验!
  7. 你们这些程序员,真得每天都在读代码吗?
  8. 安装php服务器,安装php服务器环境的方法
  9. 默纳克电梯系统服务器怎么操作,默纳克系统常见问题之六——电梯不运行
  10. mysql 中float存入int数据显示失真问题