我想要一個函數f
,它獲取列表並返回從每個列表中取一個元素所產生的所有可能組合的元組列表。F#中是否有庫函數組合不同列表中的元素
例如
f [["A";"B";"C"];[1;2]]
將使結果:
[("A",1);("A",2);("B",1);("B",2);("C",1);("C",2)]
和:
f [[onions;peas];[mash;fries];[chicken;steak]]
會給:
[(onions,mash,chicken);(onions,mash,steak);(onions;fries;chicken) ... (peas,fries,steak)]
我正在考慮滾動我自己的,但感覺像那裏必須是一個庫函數比我的拇指拳頭方法更好地優化,但我似乎無法找到任何搜索(我可能不知道這個正確的組合術語,所以繼續打不同的組合方法&函數)