泛型队列
#队列就是先进先出,后进后出,相当于排队,排的人只能再末尾追加,但是出去的人是从队首先出
package main
import "fmt"
type Queue[T string | int] struct {
data []T
}
//追加方法
func (q *Queue[T]) Put(value T) []T {
q.data = append(q.data, value)
return q.data
}
//移除方法
func (q *Queue[T]) Pop() []T {
if len(q.data) > 0 {
q.data = q.data[1:]
return q.data
}
return nil
}
func main() {
q1 := Queue[string]{[]string{"张三", "李四"}}
q1.Put("王五")
q1.Put("韩梅梅")
fmt.Println(q1.data)
q1.Pop()
fmt.Println(q1.data)
q1.Pop()
q1.Pop()
q1.Pop()
q1.Pop()
fmt.Println(q1.data)
}
本文来自博客园,作者:弩哥++,转载请注明原文链接:https://www.cnblogs.com/bangbangzoutianya/p/17326654.html