嗨,我正在尝试在 Java 中实现一个简单的连接算法...
我有三个关系,即 M(ABX) N(ACY) 和 O(BCZ)。这些关系目前在一个逗号分隔的文件中,并且所有整数(示例文件 M 将具有像 1,5,6;2,7.9;.. 这样的值)想知道在 Java 中使用什么数据结构来实现连接 MxNxO 的最佳数据结构即 M 和 N 将在属性 A 上连接,生成一个模式(ABCXY),然后在属性 B 和 C 上与 O 连接,生成 ABXCYZ 的最终结果,该结果将具有所有连接结果。
嗨,我正在尝试在 Java 中实现一个简单的连接算法...
我有三个关系,即 M(ABX) N(ACY) 和 O(BCZ)。这些关系目前在一个逗号分隔的文件中,并且所有整数(示例文件 M 将具有像 1,5,6;2,7.9;.. 这样的值)想知道在 Java 中使用什么数据结构来实现连接 MxNxO 的最佳数据结构即 M 和 N 将在属性 A 上连接,生成一个模式(ABCXY),然后在属性 B 和 C 上与 O 连接,生成 ABXCYZ 的最终结果,该结果将具有所有连接结果。
也许像hsqldb这样的嵌入式数据库是正确的选择。它灵活、高效且易于使用。
没有专门的数据结构可供您轻松使用。
您必须表示从 CSV 文件中提取的表List<List>>
,然后您必须遍历列表并比较表示列名的正确属性以创建中间列表等等,直到您加入所有关系。
即你需要自己实现这个逻辑。
恕我直言,最好的方法是遵循@Ernest Friedman-Hill 的回答。
您不仅可以更快地获得此功能,而且不会出错,因为您无需测试连接算法是否在任何数据集上都能正常工作。嵌入式数据库将为您执行此操作。