【题目】

给定两个字符串 str1 和 str2,如果 str1 和 str2 中出现得字符串种类一样且每种字符串
出现得次数也一样,那么 str1 与 str2 互为变形。请实现函数判断两个字符串是否互为变形。

【举例】

str1 = “123”, str2 = “231”,返回 true

str1 = “123”, str2 = “2311”,返回 false

【难度】

★☆☆☆

【解答】

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package main

import "fmt"

func main() {

fmt.Println(isDeformation("abcc","bcca"))
}

func isDeformation(str1,str2 string) bool {

if len(str1) != len(str2) {
return false
}

m := make(map[uint8]int)
for i:=0;i<len(str1);i++{
m[str1[i]]++
}

for i:=0;i<len(str2);i++{
m[str2[i]]--
if m[str2[i]] < 0 {
return false
}
}
return true
}