Python中的伙伴字符串
假设我们有两个小写字母字符串A和B;我们必须检查我们是否可以在A中交换两个字母以使结果等于B。
因此,如果输入类似于A = "ba",B = "ab",则输出将为True。
要解决此问题,我们将遵循以下步骤−
- 如果A的大小与B的大小不同,则
- 返回假
- 否则,当A和B有任何元素不公同时,则
- 返回假
- 否则,当A和B相同时,并且A中的所有字符都各不相同时,则
- 返回假
- 否则,
- count:= 0
- 对于从0到A的大小范围内的i,执行
- 如果A[i]与B[i]不同,则
- count := count + 1
- 如果count与3相同,则
- 返回假
- 如果A[i]与B[i]不同,则
- 返回真
我们来看看以下实现以获得更好的理解−
示例
class Solution: def buddyStrings(self, A, B): if len(A)!=len(B): return False elif sorted(A)!=sorted(B): return False elif A==B and len(set(A))==len(A): return False else: count=0 for i in range(len(A)): if A[i]!=B[i]: count+=1 if count==3: return False return True ob = Solution() print(ob.buddyStrings("ba","ab"))
输入
"ba","ab"
输出
True
广告