经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » Go语言 » 查看文章
合并2个数组为1个无重复元素的有序数组--Go对比Python
来源:cnblogs  作者:艾里_Simple  时间:2020/12/8 9:09:42  对本文有异议

Go实现:

  1. 1 package main
  2. 2
  3. 3 import (
  4. 4 "fmt"
  5. 5 "sort"
  6. 6 )
  7. 7
  8. 8 func main() {
  9. 9 var a = []int{1, 6, 45, 2, 9, 15, 7}
  10. 10 var b = []int{2, 80, 9, 67, 52, 15, 100, 99}
  11. 11 c := sumArr(a, b)
  12. 12 fmt.Println("合并后的数组为")
  13. 13 fmt.Println(c)
  14. 14 d := remArr(c)
  15. 15 fmt.Println("合并、去重后的数组为")
  16. 16 fmt.Println(d)
  17. 17 e := sortArr(d)
  18. 18 fmt.Println("合并、去重、排序后的数组为")
  19. 19 fmt.Println(e)
  20. 20 }
  21. 21
  22. 22 func sumArr(a, b []int) []int {
  23. 23 var c []int
  24. 24 for _, i := range a{
  25. 25 c = append(c, i)
  26. 26 }
  27. 27 for _, j := range b{
  28. 28 c = append(c, j)
  29. 29 }
  30. 30 return c
  31. 31 }
  32. 32
  33. 33 func remArr(c []int) []int {
  34. 34 d := make([]int, 0)
  35. 35 tempMap := make(map[int]bool, len(c))
  36. 36 for _, e := range c{
  37. 37 if tempMap[e] == false{
  38. 38 tempMap[e] = true
  39. 39 d = append(d, e)
  40. 40 }
  41. 41 }
  42. 42 return d
  43. 43 }
  44. 44
  45. 45 func sortArr(e []int) []int {
  46. 46 sort.Ints(e[:])
  47. 47 return e
  48. 48 }

Python实现:

  1. 1 a = [1, 6, 45, 2, 9, 15, 7]
  2. 2 b = [2, 80, 9, 67, 52, 15, 100, 99]
  3. 3 c = a + b
  4. 4
  5. 5 # 方法一:
  6. 6 d = set(c)
  7. 7 print(sorted(d))
  8. 8
  9. 9 # 方法二:
  10. 10 e = []
  11. 11 for i in c:
  12. 12 if i not in e:
  13. 13 e.append(i)
  14. 14 continue
  15. 15 print(sorted(e))

 

原文链接:http://www.cnblogs.com/ailiailan/p/14037601.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号