gpt4 book ai didi

java - 在 Java 中有效地将 vector 与一系列数字进行比较

转载 作者:行者123 更新时间:2023-12-01 06:59:56 26 4
gpt4 key购买 nike

我有一系列数字,即 6、5、7、8、9、1,通过一些数学过程,我最终将通过重复获得这些数字。因此,我想使用一个 vector 来存储此过程生成的最后六个数字,然后将该 vector 的内容与上面的一系列数字进行比较。如果它与这一系列数字完全匹配,我将结束程序,如果不匹配,则继续数学过程。

我的问题是我如何有效地比较一系列数字和 vector 。最初,我打算使用一个简单的 if/else 条件来将 vector 中的每个单独值与其系列中的对应值进行比较(例如,其中 v 是一个充满六个数字的 vector ,if (v.get(0) == 6 && v.get(1) == 5 ...)),但考虑到在 vector 等于序列之前这将被评估多次,我开始怀疑与某些计算相比这是否是一个相对昂贵的计算替代程序。

我的另一个想法是将这一系列数字存储在第二个 vector 中,然后比较这两个 vector 。然而,由于对 vector 和 Java 缺乏经验,我不确定如何去做这件事,以及它如何比上面提到的简单的 if 和 else 子句更有效。

关于如何更有效地比较一堆数字和 vector 内容之间的比较,有什么建议吗?或者,如果不是 vector ,则可能是列表或数组?

最佳答案

从数字序列中生成哈希值,例如(警告 - 该哈希函数仅用于演示目的):

[N1,N2,N3,N4,N5] -> N1 异或 N2 异或 N3 异或 N4 异或 N5。

那么首先您只需要检查结果 vector 和原始 vector 的哈希值,只有当它们匹配时才需要比较每个单独的数字。

关于java - 在 Java 中有效地将 vector 与一系列数字进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1451397/

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