gpt4 book ai didi

julia - 如何在 Julia 中测试数组中的所有元素是否具有相同的值

转载 作者:行者123 更新时间:2023-12-04 00:59:48 24 4
gpt4 key购买 nike

我正在尝试编写一个简单的程序,使用 Julia 来测试数组的所有元素是否相同。在 Julia 中有一种简单的方法可以做到这一点吗?

最佳答案

allunique 测试数组的所有元素是否唯一。为了测试数组的所有元素是否相同,您可以编写例如:

function allequal(itr)
local x
isfirst = true
for v in itr
if isfirst
x = v
isfirst = false
else
isequal(x, v) || return false
end
end
return true
end

现在你有

julia> allequal([1,2,3])
false

julia> allequal([1,2,1])
false

julia> allequal([1,1,1])
true

你可以写一个更短的函数,例如:

f1(itr) = length(Set(itr)) <= 1

但它可能会更慢(我没有运行基准测试)。

或者你可以这样写:

f2(itr) = length(itr) == 0 ? true : all(isequal(itr[1]), itr)

如果您的迭代器定义了 length 并支持索引。

关于julia - 如何在 Julia 中测试数组中的所有元素是否具有相同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59426204/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com