K*******i 发帖数: 399 | 1 要求bug free
字符串只包含大小写字母和空格,空格是分隔符
以下返回0
NULL
"" // 长度为0的空串
" "
以下返回5
"This is an apple"
" This is an apple"
"This is an apple "
" This is an apple "
"apple"
" apple "
" apple"
"apple " |
c****p 发帖数: 6474 | 2 有什么tricky的地方么。。。
【在 K*******i 的大作中提到】 : 要求bug free : 字符串只包含大小写字母和空格,空格是分隔符 : 以下返回0 : NULL : "" // 长度为0的空串 : " " : 以下返回5 : "This is an apple" : " This is an apple" : "This is an apple "
|
i**********e 发帖数: 1145 | 3 刚写了一个,没测过。
分隔符有哪些?
bool isSpace(char c) {
return c == ' ' || c == '\t'; // maybe newline considered as a space too?
}
int lengthOfLastWord(const char *s) {
if (!s) return 0;
int len = 0;
bool inWord = false;
while (*s) {
if (!inWord && !isSpace(*s)) {
inWord = true;
len = 0;
} else if (inWord && isSpace(*s)) {
inWord = false;
}
if (inWord) len++;
s++;
}
return len;
} |
s******n 发帖数: 3946 | 4 不错,这题看基本功
too?
【在 i**********e 的大作中提到】 : 刚写了一个,没测过。 : 分隔符有哪些? : bool isSpace(char c) { : return c == ' ' || c == '\t'; // maybe newline considered as a space too? : } : int lengthOfLastWord(const char *s) { : if (!s) return 0; : int len = 0; : bool inWord = false; : while (*s) {
|