가능한 중복 :
F# - cross product of two lists
Projecting a list of lists efficiently in F#직교 제품이 개 목록
나는 두 개의 정수리스트를 받아 모든 직교 제품을 하나의 목록을 반환하는 기능을 가지고있다. 나는 올바른 생각을 갖고 있지만 올바른 구현이 아니라고 생각합니다. 포인터 좀 줄까?
let rec cartesian = function
| ([],[]) -> []
| (xs,[]) -> []
| ([],ys) -> []
| (x::xs,ys) -> List.map(fun y -> (x,y)::[]) cartesian (xs,ys)
이 사건을 처리하는 코드를 언급하지 않기 : 당신이 생각을 이해하면
, 당신은 상위 기능
List.collect
완벽하게 작업을 일치하는지 볼 수 있습니다 이미 FSSnip에 있습니다. –