题目:
给你一个字符串 s
,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。
单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。
代码:老有不通过的实例,根据不通过的例子缝缝补补,服了...
int lengthOfLastWord(char* s) {
int flag=0;
int i;
int n=0;
for(i=0;s[i]!='\0';i++){}
if(i==1&&s[0]!=' '){//'a'
return 1;
}
i--;
while(i>=0){
if(s[i]==' '){i--;}
else {n=i;break;}
}
if(n==0) return 1;
for(i=0;i<=n;i++){
if(s[i]==' '){
flag=i;
}
}
if(s[0]==' '){
return i-flag-1;
}
else if(s[0]!=' '&&flag==0) return i-flag;
else return i-flag-1;
}
结果:时间击败100%??!!