欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#中的隊列Queue<T>與堆棧Stack<T>

 更新時間:2022年05月10日 08:40:44   作者:springsnow  
這篇文章介紹了C#中的隊列Queue<T>與堆棧Stack<T>,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

一、概述:

Queue<T>隊列,對象的先進先出集合(“FIFO”)。Stack<T>棧,對象的后進先出集合(”LIFO”)。

Queue<T>、Stack<T>類似于List<T>,但 Queue<T>沒有IList<T>,所以不能用索引訪問隊列。也沒有實現(xiàn)ICollection<T>,無Add,Remove等方法。

二、操作

1、入隊列:Enqueue()

Queue<string> nums = new Queue<string>();
nums.Enqueue("one");
nums.Enqueue("two");
nums.Enqueue("three");

2、入棧:Push()

Stack<string> nums = new Stack<string>();
nums.Push("one");
nums.Push("two");
nums.Push("three");

3、遍歷:隊列最先返回最先進的,棧最先返回最后進的元素。

foreach (var num in nums)//隊列依次返回,one,two,three ;棧依次返回:three,two,one,
{
    Console.WriteLine(num);
}

4、出隊列:Dequeue()返回最先進的元素。

Console.WriteLine(nums.Dequeue());//one

5、出棧:Pop()返回最后進的元素。

Console.WriteLine(nums.Pop());//three

6、返回開始處的元素:Peek()

Console.WriteLine(nums.Peek());//two

7、判斷是否包含元素:Contains()

Console.WriteLine(nums.Contains("three"));

8、清空隊列、棧:Clear()

nums.Clear();

9、隊列、棧中元素個數(shù):Count

Console.WriteLine(nums.Count);//0

10、復(fù)制到數(shù)組:CopyTo()、ToArray()

  • CopyTo():把元素從隊列復(fù)制到一個已有的數(shù)組中。
  • ToArray():返回一個包含隊列元素的新數(shù)組。
string[] arr=new string[3];
nums.CopyTo(arr,0);

arr= nums.ToArray();

三、示意圖

image

image

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論