gpt4 book ai didi

java - 使用通配符验证引用文件的算法

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:00:26 24 4
gpt4 key购买 nike

我有一个如下所示的文件,我想验证它的正确性。该文件用作处理某些数据的引用文件。我将我的输入数据与该文件的 ColA、ColB 和 ColC 进行匹配,并从顶部返回第一个匹配项的 OutA。通配符“*”匹配任何内容。例如,如果我的输入数据有 X4 Y2 Z3,它将从文件中返回 13。

Seq  ColA  ColB  ColC  OutA
1 X1 Y1 Z1 10
2 X2 Y2 * 11
3 X3 * Z2 12
4 * Y2 Z3 13
5 * * Z4 14
6 * Y3 Z4 15
7 * * * 16

现在该文件可以包含一些从未使用过或无法访问的条目。例如,如果我收到 X9 Y3 Z4 作为我的输入,它将与第 5 行匹配,并且永远不会查看第 6 行,尽管第 6 行也与我的输入匹配。如果我们交换第 5 行和第 6 行的位置,它将按预期工作。我想在我的实际进程运行之前找到这些无法访问的记录。

关于如何在文件中找到此类条目的任何想法。我正在寻找一种算法。请注意,在此示例中我减少了列数和行数。实际文件大约有 10 列和 50 行。

最佳答案

假设通配符匹配每个字符串(具体来说,对于每一列,存在一个不作为文字出现的有效符号),检查每对行以查看第一行是否匹配第二行的超集就足够了火柴。当且仅当对于每一列,如果第二行有一个文字,然后第一行有相同的文字或通配符,并且如果第二行有一个通配符,那么第一行有一个通配符,情况就是这种情况。

关于java - 使用通配符验证引用文件的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55308474/

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