表示數值的字串

2021-10-02 04:33:52 字數 994 閱讀 4953

請實現乙個函式用來判斷字串是否表示數值(包括整數和小數)。例如,字串"+100",「5e2」,"-123",「3.1416"和」-1e-16"都表示數值。 但是"12e",「1a3.14」,「1.2.3」,"±5"和"12e+4.3"都不是。

1.sign、decimal、hase標記符號、小數點、e是否出現過。

2.判斷e:

如果出現e,e後面一定要接數字,並且e只能出現一次。

3.判斷符號:

第一次出現±號,且不是在字串開頭,則必須緊接在e之後,否則非法。

第二次出現±號,則必須緊接在e之後,否則非法。

4.判斷小數點:

e後面不能接小數點,小數點不能出現兩次,否則非法。

5.判斷字元是否在0~9之間。

class

solution

if(hase)

hase =

true;}

else

if(string[i]

=='+'

|| string[i]

=='-'

)//第一次出現+-號,且不是在字串開頭,則也必須緊接在e後面if(

!sign && i >

0&& string[i-1]

!='e'

&& string[i-1]

!='e'

) sign =

true;}

else

if(string[i]

=='.'

) decimal =

true;}

//不合法字元

else

if(string[i]

<

'0'|| string[i]

>

'9')

}return

true;}

};

時間複雜度:o(n)

空間複雜度:o(1)

字串 表示數值的字串

題目描述 實現乙個函式用來判斷字串是否表示數值 包括整數和小數以及使用科學計數法表示的數 分析 表示數值的字串的規則有 第乙個字元只能是 以及數字 數字字元後面只能接 或 e e 小數點後面必須要有字元且只能接數字字元或 e e e e 後面必須要接字元且只能接數字字元或者 後面必須要接數字字元 b...

表示數值的字串(字串)

題目描述 請實現乙個函式用來判斷字串是否表示數值 包括整數和小數 例如,字串 100 5e2 123 3.1416 和 1e 16 都表示數值。但是 12e 1a3.14 1.2.3 5 和 12e 4.3 都不是。思路 1.第乙個數為 或者為 時,跳過。2.對於小數點 小數點只能出現一次 小數點不...

字串 表示數值的字串

此題出自牛客網的劍指offer專題 請實現乙個函式用來判斷字串是否表示數值 包括整數和小數 例如,字串 100 5e2 123 3.1416 和 1e 16 都表示數值。但是 12e 1a3.14 1.2.3 5 和 12e 4.3 都不是。思路一 直接正規表示式擼起 實現 如下 public cl...