Leetcode 1961. Check If String Is a Prefix of Array

文章作者:Tyan
博客:noahsnail.com  |  CSDN  |  简书

1. Description

Check If String Is a Prefix of Array

2. Solution

解析:Version 1,遍历数组中的字符串,同时遍历s,如果数组中的字符不等于对应位置的字符,直接返回False,当s遍历结束时,判断数组中当前位置的字符串是否遍历完成,如果数组遍历结束,判断字符串s是否遍历完成。Version 2直接按单词比较。

  • Version 1
1
2
3
4
5
6
7
8
9
10
11
12
13
class Solution:
def isPrefixString(self, s: str, words: List[str]) -> bool:
n = len(s)
i = 0
for word in words:
for j in range(len(word)):
if s[i] == word[j]:
i += 1
else:
return False
if i == n:
return j == len(word) - 1
return i == n
  • Version 2
1
2
3
4
5
6
7
8
9
10
11
12
13
class Solution:
def isPrefixString(self, s: str, words: List[str]) -> bool:
n = len(s)
i = 0
for word in words:
m = len(word)
if s[i:i+m] == word:
i += m
else:
return False
if i == n:
return True
return i == n

Reference

  1. https://leetcode.com/problems/check-if-string-is-a-prefix-of-array/
如果有收获,可以请我喝杯咖啡!