LeetCode 8 C 實現字串轉整數

2021-09-10 14:12:42 字數 770 閱讀 1042

leedcode的第八題:請你來實現乙個atoi函式,使其能將字串轉換成整數。

其實這題就是排除題目的特殊情況就行

int myatoi(string str) 

return result*sign;//輸出轉換後的值並帶有正負

}

之後想到前幾天判斷越界的方法,又稍微改進了一下 

int myatoi(string str) {

if(str.empty()) return 0;

int i = 0;

int sign = 1;

long int result = 0;

while(i < (int)str.size() && str[i] == ' ') ++i;

if(str[i] == '+' || str[i] == '-')

sign = (str[i++] == '+') ? 1 : -1;

if(isalpha(str[i])) return 0;

while(i < (int)str.size() && isdigit(str[i]))

{result = 10*result + (str[i++] - '0');

if(result != (int) result)

return (sign == 1) ? int_max : int_min;

cout《這題判定越界的方法是用乙個長整型去存結果,當溢位時,長整型的結果和整型結果一定時不同的,這時候輸出邊界。 

Leetcode題解之字串(8) 報數

題目 題目描述 1.1 2.11 3.21 4.1211 5.111221 6.312211 7.13112221 8.1113213211 9.311312111312211被讀作 one 1 乙個一 即11。11被讀作 two 1s 兩個一 即21。21被讀作 one 2 one 1 乙個二 乙...

字串的轉換leetcode 8

1.這個題其實不難,但是涉及到好多小的知識點,邊界條件之類的。所以實現起來有點費勁。其實自己也想到了就是不會敲 還是基礎知識不夠紮實。一點一點積累吧。public class solution index if index len 第 1 個字元如果是符號,判斷合法性,並記錄正負 int sign ...

LeetCode 字串 反轉字串

反轉字串 編寫乙個函式,其作用是將輸入的字串反轉過來。輸入字串以字元陣列char的形式給出。不要給另外的陣列分配額外的空間,你必須原地修改輸入陣列 使用 o 1 的額外空間解決這一問題。你可以假設陣列中的所有字元都是 ascii 碼表中的可列印字元。示例 1 輸入 h e l l o 輸出 o l ...