首页 > 其他 > 详细

Leetcode -- Day 8

时间:2015-07-16 00:41:26      阅读:179      评论:0      收藏:0      [点我收藏+]

Form today on, I changed to Math module question.

Question 1

String to Integer (atoi)

 Implement atoi to convert a string to an integer.
 
Remember one thing here. The result is initialized as a double, as it will * 10 later, where if it is integer, it will exceed the max limit. So make it as double here. 
 
public int myAtoi(String str) {
        if (str == null || str.length() == 0)
            return 0;
        str = str.trim();
        
        char flag = ‘+‘;
        int i = 0;
        if (str.charAt(0) == ‘-‘) {
            flag = ‘-‘;
            i++;
        } else if (str.charAt(0) == ‘+‘) {
            i++;
        }
            
        int result = 0;
        
        while (str.length() > i && str.charAt(i) >= ‘0‘ && str.charAt(i) <= ‘9‘) {
            result = result * 10 + (str.charAt(i) - ‘0‘);
            i++;
        }
        
        if (flag == ‘-‘)
        result = 0-result;
 
        // handle max and min
        if (result > Integer.MAX_VALUE)
            return Integer.MAX_VALUE;
     
        if (result < Integer.MIN_VALUE)
            return Integer.MIN_VALUE;
     
        return (int) result;
    }

 

Leetcode -- Day 8

原文:http://www.cnblogs.com/timoBlog/p/4649836.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!