📅  最后修改于: 2023-12-03 15:14:33.053000             🧑  作者: Mango
队列是一种FIFO(First-In-First-Out)的数据结构,C#提供了一些内置的队列类供程序员使用。
Queue myQueue = new Queue();
Enqueue(object obj)
:向队列中添加一个元素,时间复杂度O(1)。Dequeue()
:从队列中取走一个元素,时间复杂度O(1)。Peek()
:查看队列头部的元素,但不取走,时间复杂度O(1)。Count
:返回当前队列中的元素数量,时间复杂度O(1)。Queue<string> myQueue = new Queue<string>();
与System.Collections.Queue基本相同,但是此队列类是启用泛型。
队列常用于解决先进先出问题,例如在消息队列中,先到达的消息被先处理。
class Program
{
static void Main(string[] args)
{
Queue<string> myQueue = new Queue<string>();
// 添加元素
myQueue.Enqueue("Hello");
myQueue.Enqueue("World");
myQueue.Enqueue("!");
// 查看队列头部元素
Console.WriteLine("头部元素:" + myQueue.Peek());
// 取出元素
while (myQueue.Count > 0)
{
Console.WriteLine("队列头部元素:" + myQueue.Dequeue());
}
}
}
输出结果:
头部元素:Hello
队列头部元素:Hello
队列头部元素:World
队列头部元素:!