1 个不稳定版本

0.1.0 2022年3月1日

#11#双端队列


2 个crate中使用

MIT/Apache 协议

24KB
349

已废弃

双端队列 支持从队列头部添加或弹出,支持从队列尾部添加或弹出


lib.rs:

双端队列 支持从队列头部添加或弹出,支持从队列尾部添加或弹出。与标准库的双端队列相比,本双端队列还支持根据索引快速从任意位置删除和查询。在某些情况下,可快速删除的双端队列非常有用(例如pi_lib中的task_pool)。

特色:将双端队列本身的逻辑和索引(删除时需要依赖索引)分离,因此,与其他需要索引的数据结构共享索引变得非常容易。关于共享索引的意义,请参考:https://github.com/GaiaWorld/pi_lib/tree/master/dyn_uint

选择

  • 当你需要使用双端队列,并且不需要快速从任意位置删除和查询时,标准库中的双端队列是一个不错的选择。
  • 当你的部分功能需要使用从任意位置删除和查询,而部分功能不需要时,不太建议你同时依赖标准库与本库的双端队列,因为这会增加应用程序的尺寸。但如果你不在意,你可以这样做!在这种情况下,建议的做法是,始终使用本库或其它的替代品,本库的双端队列性能仅比标准库略低(删除功能也需要一定成本)。

依赖

~22KB