「ソードフィンガーオファー」は文字列を整数に変換します

「ソードフィンガーオファー」は文字列を整数に変換します

どこに行くのかわかりませんが、もう途中です!
会ったことはありませんが、時間は急いでいますが、ユシに会いました。本当に素晴らしい運命です。ご来店ありがとうございました!
  • トピック
    文字列を整数に変換するには、文字列を整数に変換するライブラリ関数使用できないようにする必要があります。値が0の場合、または文字列が有効な値でない場合は、0を返します
    入力の説明:空の場合がある英数字を含む文字列を入力します。
    戻り値の説明:有効な数値式の場合は数値を返しますそれ以外の場合は数値を返します0を返す
示例 1 :
输入:"+2147483647"
返回值:2147483647
示例 2 :
输入:"1a33"
返回值:0
  • コード1:
# -*- coding:utf-8 -*-
class Solution:
    def StrToInt(self, s):
        if s == "":
            return 0
        point, result, sign = 0, 0, 1
        if s[0] == '+' or s[0] == '-':
            point = 1
            if s[0] == '-':
                sign = -1
        for i in range(point,len(s)):
            if '0' <= s[i] <= '9':
                result = result * 10 + (ord(s[i]) - ord('0'))
            else:return 0
        return result * sign
  • アルゴリズム注:
    文字列が空の場合は0を返し
    、最初の文字は+-符号をsign変更します。
    デジタルの規則を満たしている場合はすべての要素を1つずつ、デジタルの規則を満たしている場合はデジタルの規則に追加し、そうでない場合はプログラムを終了します。 ;
    累積結果とシンボルを返します。間の操作の結果。

おすすめ

転載: blog.csdn.net/qq_34331113/article/details/114986824