Skip to content

Commit 34da9da

Browse files
authored
Update README.md
1 parent 04cfcf3 commit 34da9da

File tree

1 file changed

+30
-30
lines changed
  • solution/0000-0099/0008.String to Integer (atoi)

1 file changed

+30
-30
lines changed

solution/0000-0099/0008.String to Integer (atoi)/README.md

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -214,6 +214,36 @@ class Solution {
214214
}
215215
```
216216

217+
#### C++
218+
219+
```cpp
220+
class Solution {
221+
public:
222+
int myAtoi(string s) {
223+
int i = 0, n = s.size();
224+
while (i < n && s[i] == ' ')
225+
++i;
226+
227+
int sign = 1;
228+
if (i < n && (s[i] == '-' || s[i] == '+')) {
229+
sign = s[i] == '-' ? -1 : 1;
230+
++i;
231+
}
232+
233+
int res = 0;
234+
while (i < n && isdigit(s[i])) {
235+
int digit = s[i] - '0';
236+
if (res > INT_MAX / 10 || (res == INT_MAX / 10 && digit > INT_MAX % 10)) {
237+
return sign == 1 ? INT_MAX : INT_MIN;
238+
}
239+
res = res * 10 + digit;
240+
++i;
241+
}
242+
return res * sign;
243+
}
244+
};
245+
```
246+
217247
#### Go
218248

219249
```go
@@ -356,36 +386,6 @@ class Solution {
356386
}
357387
```
358388

359-
#### C++
360-
361-
```c++
362-
class Solution {
363-
public:
364-
int myAtoi(string s) {
365-
int i = 0, n = s.size();
366-
while (i < n && s[i] == ' ')
367-
++i;
368-
369-
int sign = 1;
370-
if (i < n && (s[i] == '-' || s[i] == '+')) {
371-
sign = s[i] == '-' ? -1 : 1;
372-
++i;
373-
}
374-
375-
int res = 0;
376-
while (i < n && isdigit(s[i])) {
377-
int digit = s[i] - '0';
378-
if (res > INT_MAX / 10 || (res == INT_MAX / 10 && digit > INT_MAX % 10)) {
379-
return sign == 1 ? INT_MAX : INT_MIN;
380-
}
381-
res = res * 10 + digit;
382-
++i;
383-
}
384-
return res * sign;
385-
}
386-
};
387-
```
388-
389389
<!-- tabs:end -->
390390

391391
<!-- solution:end -->

0 commit comments

Comments
 (0)