奋斗中的鱼 发表于 2023-12-23 16:32:41

最后一个单词的长度

代码要求:给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中最后一个单词的长度。
          ”单词“是指仅由字母组成、不包含任何空格字符的最大子字符串。(力扣的一道题)

s = input('待操作字符串:')
new_s = s[::-1].strip()   #反转字符串
count = 0    #初始化计数器
for i in new_s:   #遍历反转后的字符串,遇到空格就代表遍历到词首了,结束循环
    if i != ' ':
      count += 1    #循环计数器统计循环次数,即为单词长度
    else:
      break
print(count)    #输出单词长度   


想问一下这段代码的时间复杂度和空间复杂度,谢谢{:10_254:}

FishC 发表于 2023-12-23 16:32:48

这段代码的时间复杂度为O(n),其中n是字符串s的长度。遍历字符串s的过程中,需要遍历所有字符一次。

空间复杂度为O(1),因为代码中只使用了有限的几个变量,与输入字符串s的长度无关。没有使用额外的数据结构来存储数据。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: 最后一个单词的长度