Python 判断两个句子是否相似
假设我们有两个句子 s 和 t。我们必须检查它们是否相似。这里句子只包含英文字母。当可以通过在一个给定句子中添加任意句子(可能为空)使两个句子相等时,这两个句子就被认为是相似的。
因此,如果输入类似于 s = "we live at city Kolkata" t = "city Kolkata",则输出将为 True,因为我们可以通过添加句子 "we live in" 从 t 获得 s。
为了解决这个问题,我们将遵循以下步骤:
s1 := s 中单词的列表
s2 := t 中单词的列表
如果 s1 的大小 > s2 的大小,则
交换 s1 和 s2
当 s1 不为空时,执行以下操作:
如果 s2[0] 与 s1[0] 相同,则
从 s2 中删除第一个单词
从 s1 中删除第一个单词
否则,如果 s2 的最后一个单词与 s1 的最后一个单词相同,则
从 s2 中删除最后一个单词
从 s1 中删除最后一个单词
否则,
返回 false
返回 true
示例
让我们看看下面的实现,以便更好地理解:
def solve(s, t):
s1 = s.split()
s2 = t.split()
if len(s1) > len(s2):
s1,s2 = s2,s1
while(s1):
if(s2[0]==s1[0]):
s2.pop(0)
s1.pop(0)
elif(s2[-1]==s1[-1]):
s2.pop()
s1.pop()
else:
return(False)
return(True)
s = "we live at city Kolkata"
t = "city Kolkata"
print(solve(s, t))输入
"we live at city Kolkata", "city Kolkata"
输出
True
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP