请问golang有无内置的array diff 函数,比较 两个函数A1, A2, 返回 A1中有,A2中没有的数组?有朋友写过版本没有?直接一个个比较效率不高,有没有比较好的算法共享下?不甚感激
package main
import (
"fmt"
"reflect"
)
func main() {
arr1 := []int64{1, 2, 3, 4}
arr2 := []int64{4, 2, 7, 4}
arr3 := []int64{1, 2, 3, 4}
fmt.Println(reflect.DeepEqual(arr1, arr2))
fmt.Println(reflect.DeepEqual(arr1, arr3))
}
#5
更多评论
可以考虑用 set: 类似这样的: https://github.com/deckarep/golang-set
其实就是使用 map 来避免遍历,但输在构造 map 时。
#1