gpt4 book ai didi

arrays - Haskell 中的固定大小列表(即具有类似列表 API 的数组)

转载 作者:行者123 更新时间:2023-12-04 14:18:25 26 4
gpt4 key购买 nike

Haskell 中是否有高效的固定大小列表库?我认为 IArray当只想要由自然数[包括零]索引的数组时,接口(interface)有点复杂。我想写这样的代码

zeroToTwenty :: Int -> FixedList Int
zeroToTwenty 0 = createFixedList 21 []
zeroToTwenty n = zeroToTwenty (n-1) `append` n

我天真的解决方案如下。

编辑 : 抱歉没有上下文;我想要一个可以分配一次的数据结构,以避免过多的垃圾收集。这是在 merge 的上下文中。合并排序的例程,它采用两个排序的子列表并生成一个排序列表。

最佳答案

使用 vector 怎么样?包裹?它提供了非常有效的可增长向量,具有类似列表的界面和 O(1) 索引。

关于arrays - Haskell 中的固定大小列表(即具有类似列表 API 的数组),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6335472/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com