检查某些数组值是否相等

时间:2018-09-01 12:59:34

标签: arrays equals

我正在寻找一种检查数组的某些值是否相等的方法,这是一个示例:

[1, 2, 3, 4] //False
[1, 1, 2, 3] //True
['a', 'a', 'a', 'a', ] // True

我已经找到了此方法,如果每个数组的值都相等,则返回“ true”,但这不是我想要的:

console.log([1,1,1,1].every( (val, i, arr) => val === arr[0] ))

谢谢

1 个答案:

答案 0 :(得分:0)

如果仅保留不同元素而获得的集合小于原始集合,则存在重复元素:

distribution(0,1)

这通常在O(n)时间和O(n)空间中运行。但是,您还应该能够使其短路,以便一旦找到重复的元素就终止:

val seq = Seq(1, 1, 2, 3)

seq.distinct.size < seq.size
//=> true