计算字符串最后一个单词的长度

69 阅读1分钟

题目描述

计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾)

题目来源

输入描述:

输入一行,代表要计算的字符串,非空,长度小于5000。

输出描述:

输出一个整数,表示输入字符串最后一个单词的长度。

示例1

输入:

hello dayday

输出:

8

说明:

最后一个单词为dayday,长度为6   

思路

  • 运用动态数组,将输入的字符串依次存入数组中,最后返回数组中最后一个元素(字符串)的长度。
  • 动态数组的push_back方法

具体实现

#include <iostream>
#include <vector>
using namespace std;
int main() {
    string s;
    vector<string> arr;
    while(cin>>s){
        arr.push_back(s); //在vector arr的末尾添加元素(字符串)s
    }
    cout<<arr[arr.size()-1].length(); //输出最后一个元素的长度
}

时间复杂度

O(n)---n为数组元素个数

小结

空间复杂度:

  • 数组的空间复杂度度:数组长度
  • 递归的空间复杂度度:递归深度
  • 既有数组又有递归的空间复杂度:取二者之间最大的。