2013-06-29 20 views
3

爲什麼Haskell有Data.Sequence?是不是(懶惰)列表已經是最普遍的前向迭代器可能(憑藉自由monoids)?爲什麼Haskell有Data.Sequence?

+8

它們對於許多操作(如連接,尤其是右側)更有效。 – AndrewC

+12

另一操作值得一提的是['index'](http://hackage.haskell.org/packages/archive/containers/0.5.2.1/doc/html/Data-Sequence.html#v:index),用於獲取一個_O(log(min(i,ni)))時間中的第i個元素。對於列表,其複雜性是_O(i)_。 –

回答

14

細節上hackage第一款規定。正如@AndrewC指出的那樣,他們提供了許多有效的操作,例如串聯兩個序列,查看序列的右端或在序列的末尾添加元素。