zoukankan      html  css  js  c++  java
  • [leetcode]8字符串转换整数 (atoi)

    题目不难,但是坑多的一比。。。

    特殊情况:

      ‘-’

      ‘+’

      ‘00000123’

      ‘00000000’

    同时清理完之后随时对处理过的字符串的长度进行判断,考虑是否为空

     1 class Solution:
     2     def myAtoi(self, str: str) -> int:
     3         flag=1
     4         if(str==''):
     5             return 0
     6         while(str[0]==' '):#清除空格
     7             str=str.replace(' ','',1)
     8             if(str==''):
     9                 return 0
    10         if(str[0]=='-'):
    11             flag=-1
    12             str=str.replace('-','',1)
    13             if(str==''):#修改完就立刻判断是否为空
    14                 return 0
    15         elif(str[0]=='+'):
    16             str=str.replace('+','',1)
    17             if(str==''):
    18                 return 0
    19         if('0'>str[0] or str[0]>'9'):
    20             return 0
    21         i=0
    22         ans=''
    23         while((i<len(str))and('0'<=str[i]<='9')):
    24             ans+=str[i]
    25             i=i+1
    26         while((ans!='')and(ans[0]=='0')):#运算结束后清除开头1,同时考虑输入全为0
    27             ans=ans.replace('0','',1)
    28         if(ans==''):
    29             return 0
    30         ans0=flag*eval(ans)
    31         ans0=max(ans0,-2**31)
    32         ans0=min(ans0,2**31-1)
    33         return ans0
    34             
  • 相关阅读:
    第三章 AOP
    第二章 IoC
    第一章 Spring 概述
    框架整合
    后台管理工程搭建
    技术架构
    淘淘商城简介
    电商行业背景
    前言
    FutureTask的使用
  • 原文地址:https://www.cnblogs.com/trickofjoker/p/10596596.html
Copyright © 2011-2022 走看看