我的值的「壓縮」流,其上連接該值的occurence的數量,例如:重複序列
let a = [(),1;(),4;(),3;]
我想「解壓縮」該序列,併發射原始序列。 我可以定義一個重複組合器來產生!爲此效果
let rec repeat avalue n = seq { if n > 0 then
yield avalue; yield! repeat avalue (n-1) }
let b = seq { for v,n in a do
yield! repeat v n } |> Seq.toList
有沒有一種方法來表達內聯,以組成的形式?
let c = a |> Seq.XXX(fun e -> ...)
啊,我不知道一個! – nicolas
所以這一個是元組的最好的,這是我的問題的上下文。因此這是最實用的答案。 – nicolas
現在還有['List.replicate <'T>'](https://msdn.microsoft.com/en-us/library/ee353665.aspx)。 –