gammazero/deque是一个快速环形缓冲区deque(双端队列)实现。

文档

安装

go get github.com/gammazero/deque

代码示例

先入先出队列

package main

import (
    "fmt"

    "github.com/gammazero/deque"
)

func main() {
    var q deque.Deque[string]

    // 入队操作
    q.PushBack("foo")
    q.PushBack("bar")
    q.PushBack("baz")

    // 出队操作
    for q.Len() != 0 {
        fmt.Println(q.PopFront())
    }

}

输出

foo
bar
baz