LeetCode 859 親密字串

2021-10-07 03:47:34 字數 1025 閱讀 5101

給定兩個由小寫字母構成的字串 a 和 b ,只要我們可以通過交換 a 中的兩個字母得到與 b 相等的結果,就返回 true ;否則返回 false 。

示例 1:

輸入: a =

"ab"

, b =

"ba"

輸出: true

示例 2:

輸入: a =

"ab"

, b =

"ab"

輸出: false

示例 3

:輸入: a =

"aa"

, b =

"aa"

輸出: true

示例 4:

輸入: a =

"aaaaaaabc"

, b =

"aaaaaaacb"

輸出: true

示例 5:

輸入: a =

"", b =

"aa"

輸出: false

```python

class

solution

:def

buddystrings

(self, a:

str, b:

str)

->

bool

:'''為true時,兩種情況'''

if a == b and

len(

set(a)

)<

len(a)

:# a,b長度相等,且a中有兩個以上相同的字母

return

true

ans =

[(a,b)

for a, b in

zip(a,b)

if a!=b]

# a,b中有兩對字母不相等

return

len(ans)==2

and ans[0]

==ans[1]

[::-

1]return

false

LeetCode 859 親密字串

題目描述 給定兩個由小寫字母構成的字串 a 和 b 只要我們可以通過交換 a 中的兩個字母得到與 b 相等的結果,就返回 true 否則返回 false 輸入示例1 輸入 a ab b ba 輸出 true 輸入示例2 輸入 a ab b ab 輸出 false 輸入示例3 輸入 a aa b aa...

LeetCode 859 親密字串

給定兩個由小寫字母構成的字串a和b,只要我們可以通過交換a中的兩個字母得到與b相等的結果,就返回true 否則返回false。示例 1 輸入 a ab b ba 輸出 true 示例 2 輸入 a ab b ab 輸出 false 示例 3 輸入 a aa b aa 輸出 true 示例 4 輸入 ...

LeetCode(859 親密字串)

如題 審題很重要哦,著重注意是存在差異的話是有僅有一對並且相同時存在重複字元也是可以的 public static boolean buddystrings string a,string b char a u0000 對於差異點的備份 char b u0000 int flag 0 出現差異的位置...