Programing/Algorithm

[LeetCode] 8. String to Integer (atoi)

Napoliano 2025. 2. 8. 14:16
728x90

 

 

 

https://leetcode.com/problems/string-to-integer-atoi/description/

 

public class Solution
{
    public int MyAtoi(string s)
    {
        if (string.IsNullOrEmpty(s))
            return 0;

        int start = 0;

        while ((start < s.Length) && (s[start] == ' '))
        {
            ++start;
        }

        if (start == s.Length)
            return 0;

        int sign = 1;

        char first = s[start];
        if (first == '+')
        {
            ++start;
        }
        else if (first == '-')
        {
            sign = -1;
            ++start;
        }

        int end = start;
        while ((end < s.Length) && (char.IsDigit(s[end])))
        {
            ++end;
        }

        end -= 1;
        if (start > end)
            return 0;

        bool res = int.TryParse(s.Substring(start, end - start + 1), out int result);
        if (res == false)
        {
            return sign == 1 ? int.MaxValue : int.MinValue;
        }

        return (result * sign);
    }
}

 

 

 

728x90