【终末地】产线配平生产链算法
生产链算法详解 一个开源项目中 Endfield Calc 的核心计算算法,用于处理包含循环依赖的生产链。 整体流程 1234567用户选择目标物品和产量 → ① buildBipartiteGraph(构建二部图) → ② detectSCCs(Tarjan 算法识别循环) → ③ buildCondensedDAGAndSort(压缩 + 拓扑排序) → ④ calculateFlows + solveSCCFlow(流量计算) → ⑤ buildProductionGraph(组装结果) → 生产表格 / 可视化树 如果计算失败(出现无解的循环),backtrackRecipeChoices 会回溯尝试其他配方组合,最多迭代 100 次。 第一步:构建二部图(buildBipartiteGraph) 原理 将生产链建模为二部图:物品和配方作为两类节点,边表示"消费"和"产出"关系。 1物品 ──消费──→ 配方 ──产出──→ 物品 从用户选择的目标物品出发,递归向上游遍历所有依赖,直到遇到原材料(如 源矿、清水)停止。...


