程序检查在Python中进行字符串回文所需的最少字符数
假设我们有一个字符串s,我们必须找到需要插入的最少字符数,以便该字符串成为回文。
因此,如果输入类似于s =“ mad”,则输出将为2,因为我们可以插入“ am”来获取“ madam”。
为了解决这个问题,我们将遵循以下步骤-
定义一个功能
dp()
。这需要我,j如果i> = j,则
返回0
如果s [i]与s [j]相同,则
返回dp(i + 1,j-1)
除此以外,
返回dp(i + 1,j)和dp(i,j-1)+ 1的最小值
在主要方法中,执行以下操作
返回dp(0,s的大小-1)
让我们看下面的实现以更好地理解-
示例
class Solution:def solve(self, s):
def dp(i, j):
if i >= j:
return 0
if s[i] == s[j]:
return dp(i + 1, j - 1)
else:
return min(dp(i + 1, j), dp(i, j - 1)) + 1
return dp(0, len(s) - 1)
ob = Solution()s = "mad"
print(ob.solve(s))
输入值
s = "mad"
输出结果
2
以上是 程序检查在Python中进行字符串回文所需的最少字符数 的全部内容, 来源链接: utcz.com/z/334763.html