递归查找字符串中的所有辅音子串[关闭]

问题描述 投票:0回答:1

需要一个Python函数,它接受一个字符串和一个整数k作为输入,并返回一个唯一子字符串列表,其中仅包含给定字符串中最大长度为k的辅音(非元音字符)。只能通过递归

例如,给定字符串“abcde”且 k = 2,该函数应返回 5 个仅包含辅音且最大长度为 2 的子字符串:“b”、“c”、“d”、“bc”、“cd” 。 应该处理边缘情况,例如空字符串、没有辅音的字符串、不同的情况(小写/大写),并有效地考虑辅音子串最大长度的约束。

python recursion substring
1个回答
0
投票

这是我尝试过的代码片段。对于您在问题中提到的情况,它运行良好

def getConsnentSubstrings(s,k):
    vowels = ['a','e','i','o','u']
    substrings = []
    for i in range(len(s)-k+1):
        for j in range(i,i+k+1):
            if s[j] in vowels:
                break
            else:
                if s[i:j+1] not in substrings:
                    substrings.append(s[i:j+1])
    return substrings
© www.soinside.com 2019 - 2024. All rights reserved.