leetcode第1ブラシ_Length of Last Word

801 ワード

出題者の意図がはっきりしているわけではありませんが、実はこの問題はjavaでは簡単すぎて、splitで処理して、すべての単語の1つの配列を得て、最後の1つの長さを求めればいいのです.私個人はjavaの中で最も成功した関数はsplitだと思って、私はprojectをするのはもう少しでいつもそれを使うことができて、便利で強大です.
c++の中は少し複雑ですが、これも最も簡単な文字列の問題です.関数のインタフェースは文字列の長さが未知であることを決定し、自分でループして探し、末尾からスペースに等しくない文字を探して、見つけたら最後の単語を見つけて、スペースが終わるまで累計します.
class Solution {
public:
    int lengthOfLastWord(const char *s) {
        if(s == NULL)
            return 0;
        int len = 0, res = 0;
        while(s[len] != '\0')
            len++;
        len--;
        while(s[len] == ' ')
            len--;
        while(len>=0&&s[len] != ' '){
            len--;
            res++;
        }
        return res;
    }
};