gpt4 book ai didi

algorithm - 使用变量和路径覆盖 xml 文档

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:27:40 25 4
gpt4 key购买 nike

为了覆盖,我有一组来 self 的程序执行的运行时变量。碰巧我是从一系列执行(自动化测试)中得到的。 IE。它是一个vector<vector<var,value>>

我有一组有限的具有预期值的变量并生成组合 s,也就是说我有 vector<vector<var,value>(smaller than the execution vector)> .现在我需要比较并判断我生成的哪些组合在其中一个测试中被准确执行。

我的算法是 O(n^4)。有什么办法可以降下来。像设置交叉点的东西。由于线程安全,我正在使用 java 和向量。

阐述:我的程序中有大量变量。我不关心他们所有人。我只关心一组变量,这些变量具有我知道的值(边缘值和开发人员给定的值)。我所做的是,为那些具有值的变量生成一组组合,我认为这可能是有意义的,因为它在自动化测试后会很有用,告诉我这些组合已被执行,而有些没有。

因为测试是自动化的,所以我有一系列(<20)执行,其中包含我在问题中给出的 DS 中的所有变量和值。我的问题是将一小组组合与一大组组合进行比较。如果否,哈希可能会起作用。变量是相同的,我想。我的算法是蛮力

最佳答案

我会根据对的组合生成散列,如果两个组合相等,则它们具有相同的散列。如果您的预期组合集很小,那么您可以使用此散列作为散列图的键。

对于执行向量中的每个组合,生成哈希键并在 HashMap 中查找它。 Hashmap 查找的摊销时间为 O(1),因此对于 n 个执行条目和 k 个预期组合,总时间为 O(n+k)。

在选择散列函数时必须小心,以避免冲突,但这应该不是一个太难的问题。

关于algorithm - 使用变量和路径覆盖 xml 文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2431749/

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