查找给定字符串的所有回文子字符串-Python 2
假设我们有一个字符串;我们必须从该字符串中找到所有回文子字符串。在这里,aa和aa被视为两个子字符串,而不是一个。
因此,如果输入就像重新分配器,那么输出将是['r','e','d','i','v','ivi','divid','edivide','redivider',“i”,“d”,“e”,“r”]
为了解决这个问题,我们将遵循以下步骤-
v:=一个新列表
位置:=0.0
而pos<s的大小,则
在v的末尾插入s[从(pos-rad)的索引整数到(pos+rad+1)的整数]
rad:=rad+1
rad:=pos-(pos为整数)
而(pos+rad)<s的大小且(pos-rad)>=0,并且(s[(pos-rad)的整数与s[(pos+rad)的整数]相同)
pos:=pos+0.5
返回v
范例程式码
让我们看下面的实现以更好地理解-
def get_all_pal_sub(s):
v = []
pos = 0.0
while pos < len(s):
rad = pos - int(pos)
while ((pos + rad) < len(s) and (pos - rad) >= 0 and (s[int(pos - rad)] == s[int(pos + rad)])):
v.append(s[int(pos - rad): int(pos + rad + 1)])
rad += 1
pos += 0.5
return v
v = get_all_pal_sub("redivider")
print(len(v))
print(v)输入项
"redivider"
输出结果
13 ['r', 'e', 'd', 'i', 'v', 'ivi', 'divid', 'edivide', 'redivider', 'i', 'd', 'e', 'r']
热门推荐
10 对患者生日祝福语简短
11 结婚祝福语简短装备
12 周岁祝福语学生文案简短
13 订婚领证祝福语简短精辟
14 导师获奖祝福语大全简短
15 新婚购房祝福语简短精辟
16 牛年祝福语简短的爱人
17 送芒果的祝福语简短
18 送给学长毕业祝福语简短