Негодная реализация NList.Concat
От: Ka3a4oK  
Дата: 30.07.10 15:22
Оценка: 16 (1)
Пытался понять почему тормозит программа, в итоге нашел проблему в очень неожиданном месте — функция NList.Concat. Она работает ужасающее медленно. Моя реализация, которая работает достаточно быстро приведена ниже:


MyConcatRev[T] (l:list [list [T]]):list[T]
{
    NList.FoldLeft(l, [], NList.FoldLeft(_, _, _::_))
}

MyConcat[T] (l:list [list [T]]):list[T]
{
    NList.Rev(MyConcatRev(l))
}
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.