1
試驗一個簡單的哈希表algorithm,似乎爲我使用Data.HashMap。我希望更好地理解如何實現一個可以實現更快性能的可變哈希表(這是Data.HashTable.IO?)。我完全失去了...試圖修改here示例,但無法找到我通過IO類型返回(雙關語意圖)的方式...先感謝任何類型的漫遊或參考。Elementary Mutable Haskell哈希表
例如,如何使用可變哈希表來實現這個簡單的練習?
import qualified Data.HashMap as HM (toList,lookup,insert,empty)
f list = g list HM.empty where
g [] h = HM.toList h
g (x:xs) h = case HM.lookup (x-1) h of
Just _ -> g xs (HM.insert x (x + 1) h)
Nothing -> g xs (HM.insert x x h)
謝謝!這讓我通過了case/lookup障礙(...似乎有更多的東西需要鍛鍊,但是,像'new'而不是'empty' ......以及如何顯示IO類型,比如'IO [(如果你有一個'x :: IO a',你可以使用'x >> = print'來顯示它 –
方式,只是一個更有說服力的方式來說'\ list < - x;打印列表「# – cdk
@groovy,它是,由'toList'的結果?) –