你知道,使這項工作的最好方式:FST和fsharp 3元組
let toTableau2D (seqinit:seq<'a*'b*'c>) =
let myfst = fun (a,b,c) -> a
let myscd = fun (a,b,c) -> b
let mytrd = fun (a,b,c) -> c
let inputd = seqinit |> groupBy2 myfst myscd
必有不是重寫FST更好的辦法..
UPDATE 墊後通知,我改寫了包裝之前的「A *」 b成單一結構 我的代碼現在看起來像
let toTableau (seqinit:seq<'a*'b>) =
let inputd = seqinit |> Seq.groupBy fst |> toMap
let keys = seqinit |> Seq.map fst |> Set.ofSeq |> List.ofSeq
...
因爲我在我的函數中有其他操作。我將編輯問題 – nicolas 2012-03-01 15:20:33
以及注意。 THKS – nicolas 2012-03-01 16:19:55