31

遅延実装と厳密実装を持つデータ構造のリストがあります。

  • Data.Map.LazyData.Map.Strict
  • Data.IntMap.LazyData.IntMap.Strict
  • Data.HashMap.LazyData.HashMap.Strict
  • Data.ByteString.LazyData.ByteString.Strict
  • Data.Text.LazyData.Text

これらの実装の長所と短所は何ですか?また、特定の実装を選択する際に従うべき規則は何ですか?

4

2 に答える 2

23

これらの実装の長所と短所は何ですか?また、特定の実装を選択する際に従うべき規則は何ですか?

型の厳密性または遅延性によって、特定の操作または使用モードの複雑さが異なります。

厳格な規則や厳格な規則はありません。代わりに、それらをまったく異なるデータ型と考えてください。

いくつかのガイドラインを主張する場合:

  • メモリより大きいデータの遅延構造
  • 使用頻度の低いデータの遅延構造、または大きな構造の小さな部分を使用する場合

その後:

  • 多くの更新を行う場合は厳密な構造
  • 小さな原子データの厳密な構造
于 2013-04-30T10:58:59.097 に答える