我正在使用 Java DOM 解析器来解析 XML 文件。性能对我来说很重要,我需要编写最优化的代码。我注意到要处理的 XML 有很多嵌套标签(深度可达 5 级),我必须检索所有级别的信息。
我实现的虚拟解决方案是嵌套循环,每个循环检索节点的子节点并将其传递给下一个循环。
当代码复杂度达到 O(n^5) 时,这在性能和复杂性级别上是一个非常糟糕的做法。请找出它如何在下面的代码级别上运行。
我相信分而治之的算法可能适用于这种情况。
你们有什么建议可以让代码更优化以获得更好的性能吗?
for (int temp = 0; temp < contractDetails.getLength(); temp++){ 节点详细信息 = contractDetails.item(temp); System.out.println(detail.getNodeName()); 节点列表 detail2 = detail.getChildNodes();
for (int temp2 = 0; temp < detail2.getLength(); temp2++){ ......... for (int temp3 = 0; temp < detail3.getLength(); temp3++){ ............... } } }