use*_*282 -2 queue ocaml
有没有办法删除Ocaml队列中最顶层的元素?队列模块只有从前面删除的take和pop操作.
Jef*_*eld 5
好了,排队的定义是,你只能访问或删除至少最近添加的元素.听起来你也想删除最近添加的元素,是吗?这种方法的一般结构称为deque,它允许您在两端添加和删除.您可以在包含电池的Deque模块中找到一个.
在OCaml标准库中没有这样的东西,但是自己编写代码也不会那么难.您将元素分为两个列表,一个列表最近一个,另一个列表最近一个.你的目标是保持两个列表的大小大致平衡,如果双端队列至少有两个元素,你需要它们都是非空的.(引自冈崎.)
归档时间:
13 年,3 月 前
查看次数:
692 次
最近记录: