gpt4 book ai didi

unique - 平等的值(value)和独特性

转载 作者:行者123 更新时间:2023-12-02 09:15:03 25 4
gpt4 key购买 nike

我有一个名为Dyad的自定义类型,它由两个变量srcdst组成。我重新定义了二元组的等号,这样

Dyad(1,2) == Dyad(2,1)
>true

但是,如果我定义以下二元向量

d = [Dyad(1,2), Dyad(2,1)]
unique(d) == d
>true

我是否需要重新定义我的等式,以便unique()理解这一点?

P.S 这就是我定义平等的方式:

==(x::Dyad, y::Dyad) = (x.src == y.src && x.dst == y.dst) || (x.src == y.dst && x.dst == y.src)

最佳答案

Dyad 定义 hash 可能更简单:
哈希(x::Dyad,h::UInt)=哈希(minmax(x.src,x.dst),h)
得到你想要的。通过这种方式,您可以确保在此过程中使用 hash 测试相等性的所有函数都能正常工作。

编辑:这里的 minmax 会比 extrema 更好。

关于unique - 平等的值(value)和独特性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47925541/

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