python-leetcode-1961. 检查字符串是否为数组前缀

1961. 检查字符串是否为数组前缀 - 力扣(LeetCode)

可以通过拼接 words 中的前几个字符串,并逐步与 s 比较来解决。

解法思路:

  • 遍历 words 数组,逐个拼接字符串。

  • 每拼接一个字符串,就检查当前拼接结果是否与 s 相等或是否成为 s 的前缀。

  • 如果拼接结果长度已经超过了 s,或者拼接后的字符串不再是 s 的前缀,就可以返回 false

  • 如果某一次拼接刚好等于 s,就可以返回 true

Python 示例代码:

def is_prefix_string(s: str, words: list[str]) -> bool:
    prefix = ""
    for word in words:
        prefix += word
        if prefix == s:
            return True
        if len(prefix) > len(s):
            return False
    return False

示例:

s = "iloveleetcode"
words = ["i", "love", "leet", "code"]
print(is_prefix_string(s, words))  # 输出: True

s = "iloveleetcode"
words = ["apples", "love", "leet"]
print(is_prefix_string(s, words))  # 输出: False
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值