String to Integer (atoi)

time=272ms   accepted

需考虑各种可能出现的情况

public class Solution {
public int atoi(String str) {
int length=str.length();
long result=0;
int flag=1;
Boolean bFlag=false,bSpace=false,bNum=false;
if(length<=0)
return (int) result;
else{
char[] s=str.toCharArray();
for(int index=0;index<length;index++){
if(s[index]==32){
if(!bSpace)
bSpace=true;
if(bSpace&&bNum)
return (int) ((int)flag*result);
}else if(s[index]==43||s[index]==45){
if(!bFlag){
flag=-flag*(s[index]-44);
bFlag=true;
bNum=true;
}else{
return (int) (flag*result);
}
}else if(s[index]<48||s[index]>57){
//0-9 ASCII:48-57 +:43 -:45 space:32
//System.out.println("Invalid Input!");
return (int) (flag*result);
}else{
bNum=true;
result=result*10+(s[index]-48);
} if (flag*result > Integer.MAX_VALUE)
return Integer.MAX_VALUE; if (flag*result < Integer.MIN_VALUE)
return Integer.MIN_VALUE; } } return (int) (flag*result);
}
}

leetcode第八题 String to Integer (atoi) (java)的更多相关文章

  1. leetcode第八题--String to Integer (atoi)

    Problem: Implement atoi to convert a string to an integer. Hint: Carefully consider all possible inp ...

  2. LeetCode【8】. String to Integer (atoi) --java实现

    String to Integer (atoi) Implement atoi to convert a string to an integer. Hint: Carefully consider ...

  3. [leetcode]经典算法题- String to Integer (atoi)

    题目描述: 把字符串转化为整数值 原文描述: Implement atoi to convert a string to an integer. Hint: Carefully consider al ...

  4. LeetCode(8)String to Integer (atoi)

    题目: Implement atoi to convert a string to an integer. Hint: Carefully consider all possible input ca ...

  5. 【leetcode❤python】 8. String to Integer (atoi)

    #-*- coding: UTF-8 -*-#需要考虑多种情况#以下几种是可以返回的数值#1.以0开头的字符串,如01201215#2.以正负号开头的字符串,如'+121215':'-1215489' ...

  6. LeetCode----8. String to Integer (atoi)(Java)

    package myAtoi8; /* * Implement atoi to convert a string to an integer. Hint: Carefully consider all ...

  7. Kotlin实现LeetCode算法题之String to Integer (atoi)

    题目String to Integer (atoi)(难度Medium) 大意是找出给定字串开头部分的整型数值,忽略开头的空格,注意符号,对超出Integer的数做取边界值处理. 方案1 class ...

  8. Leetcode 8. String to Integer (atoi)(模拟题,水)

    8. String to Integer (atoi) Medium Implement atoi which converts a string to an integer. The functio ...

  9. leetcode day6 -- String to Integer (atoi) &amp;&amp; Best Time to Buy and Sell Stock I II III

    1.  String to Integer (atoi) Implement atoi to convert a string to an integer. Hint: Carefully con ...

随机推荐

  1. 进程环境之main函数

    C程序总是从main函数开始执行.main函数的原型是: int main( int argc, char *argv[] ); 其中,argc是命令行参数的数目,argv是指向参数的各个指针所构成的 ...

  2. keepalived + haproxy 实现web 双主模型的高可用负载均衡--转

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://xz159065974.blog.51cto.com/8618592/140581 ...

  3. asp遇到的一些问题

    1.伪静态问题...后台设置支持, 2.数据库链接错误,也就是说  .net 功能冲突,要后台关闭 3.本机也可以设置 iis服务器 win7配置自己的IIS服务器亲自做的图文很详细 http://j ...

  4. iOS开发简单高效的数据存储

    在iOS开发过程中,不管是做什么应用,都会碰到数据保存的问题,你是用什么方法来持久保存数据的?这是在几乎每一次关于iOS技术的交流或讨论都会被提到的问题,而且大家对这个问题的热情持续高涨.本文主要从概 ...

  5. 在windows C++中编译并使用Lua脚本

    早前就用过LUA ,只是局部的小项目使用,突然兴起想要写一些关于LUA 的  文章,记录曾经学习过的点点滴滴. 这里我使用的是LUA5.2作为 案例 lua做为轻量级脚本语言已经被广泛应用到应用软件以 ...

  6. Visual Basic|VB 6.0中文版

    附加下载链接:http://xiazai.zol.com.cn/detail/3/29939.shtml?&437886-tsina-1-838-a507c04d8e448a55dd65bfc ...

  7. Container.ItemIndex 获取到行的序号

    如果在ASP.NET中应用了Repeater.Gridview,想获取到行的序号,很简单,使用Container.ItemIndex即可.在Gridview中使用<%# Container.Da ...

  8. Spring.net架构示例(含Aop和Ioc)源码

    最近写了一个Spring.net的架构. 一.架构主图 架构图的数据流程走向是: UI层=>UILogic>=>Service>Business=>DataAccess ...

  9. IOS高级开发 runtime(一)

    一. 简介 IOS 开发中灵活使用runtime 会提高我们的程序性能和开发速度.要想使用runtime,首先要引入系统的头文件. <span style="font-size:18p ...

  10. @Resource注解省略name属性后的行为

    @Resource有一个name属性,该属性值为所要注入的Bean实例的id,类似于<property.../>元素的ref属性,不过在spring中允许省略name属性值,省略后在以下情 ...