1002. 查找常用字符

image.png

  1. package main
  2. import "fmt"
  3. func commonChars(A []string) []string {
  4. m :=make(map[byte]int,0)
  5. for idx,v:=range A{
  6. if idx==0{
  7. for i:=range v{
  8. m[v[i]]++
  9. }
  10. }else {
  11. n :=make(map[byte]int,0)
  12. for i:=range v{
  13. n[v[i]]++
  14. }
  15. for k,v:=range m{
  16. if r,ok:=n[k];ok{
  17. m[k]=min(v,r)
  18. }else {
  19. delete(m,k)
  20. }
  21. }
  22. }
  23. }
  24. var res []string
  25. for k,v:=range m{
  26. for i:=0;i<v;i++{
  27. res =append(res,string(k))
  28. }
  29. }
  30. return res
  31. }
  32. func min(a,b int)int{
  33. if a<b{
  34. return a
  35. }
  36. return b
  37. }
  38. func main() {
  39. fmt.Println(commonChars([]string{"bella","label","roller"}))
  40. fmt.Println(commonChars([]string{"cool","lock","cook"}))
  41. }

image.png