stack栈和Queue队列

时间:2023-03-10 03:26:58
stack栈和Queue队列

1.push将对象插入 System.Collections.Generic.Stack<T> 的顶部。

Stack st = new Stack(); //栈是先进后出
st.Push(1);
st.Push(2);
st.Push(3);
st.Push(4);

2.peek读栈

(1)

foreach (var item in st) //读栈的时候读的是栈的“上面”
{
Console.WriteLine(item);
}

(2)
Console.WriteLine(st.Peek());

stack栈和Queue队列

3.Pop()移除并返回位于栈顶部的对象

foreach (var item in st) //读栈的时候读的是栈的“上面”
{
Console.WriteLine(item);
}
//Console.WriteLine(st.Peek());

Console.WriteLine("**********");
st.Pop();

foreach (var item in st) //读栈的时候读的是栈的“上面”
{
Console.WriteLine(item);

stack栈和Queue队列

4.clear清除栈内所有内容

foreach (var item in st) //读栈的时候读的是栈的“上面”
{
Console.WriteLine(item);
}
//Console.WriteLine(st.Peek());

Console.WriteLine("**********");

st.Clear();
foreach (var item in st)
{
Console.WriteLine(item);
}

stack栈和Queue队列

——————————————————————————————————

Queue队列  :先进先出

1.Enqueue将对象添加到Queue的结尾处

Queue qu = new Queue();
qu.Enqueue(1);
qu.Enqueue(2);
qu.Enqueue(3);
qu.Enqueue(4);

2.Peek 返回位于Queue开始处的对象但不将其移除(读队)

(1) Console.WriteLine(qu.Peek());

(2)

foreach (var item in qu)
       {
         Console.WriteLine(item);
       }
      stack栈和Queue队列

3.Dequeue移除并返回Queue开始处的对象

Console.WriteLine(qu.Dequeue());
Console.WriteLine("*********");
foreach (var item in qu)
{
Console.WriteLine(item);
}

stack栈和Queue队列

4.clear清除所有元素 和 栈一样