【发布时间】:2016-04-22 15:33:53
【问题描述】:
我正在学习 Clojure 和函数式编程,我正面临另一个问题,我被困住了,我不知道如何处理它。问题来了:
我有一个向量向量:
[[a b][b c][c d][d e][e f][f g][f h][b i][d j][j l][l m][a n][a o][o p]]
而且我需要在一些项目之间建立关系。关系规则是:
1 - 与第一列具有相同值的每个项目都具有直接关系。
2 - 如果有任何项目的第一列等于规则 1 中的第二列,那么也存在关系,但是是间接的。
在我们的场景中,关系是:
a 的关系(规则 1):
[[a b][a n][a o]]
a 的关系(规则 2):
[[b c][o p]]
之后我还需要计算,但我不知道如何使用 clojure 进行函数式编程风格。我一直在与 O.O.自 2008 年开始编程,这是我第一次学习函数式编程。
有什么想法吗?
提前致谢。
【问题讨论】:
-
第二个关系应该是
[[b c] [b i] [o p]]
标签: vector clojure functional-programming