728x90
Queue와 Stack은 선형자료구조를 사용할 때 유용한 두 구조이다.
·Queue <선입선출(First In First Out)>
가장 먼저 들어온 값이 가장 먼저 빠진다.
using System;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
Queue<string> q = new Queue<string>();
q.Enqueue("첫 번째");
q.Enqueue("두 번째");
q.Enqueue("세 번째");
foreach (string s in q)
Console.WriteLine($"{s}", s);
Console.WriteLine();
q.Dequeue();
foreach (string s in q)
Console.WriteLine($"{s}", s);
}
}
}
q.Dequeue()를 했을 때 없어지는 값은 가장 처음 값이었던 '첫 번째' 이다.
https://docs.microsoft.com/ko-kr/dotnet/api/system.collections.queue?view=net-6.0
Queue 클래스 (System.Collections)
개체의 선입선출(FIFO) 컬렉션을 나타냅니다.
docs.microsoft.com
·Stack <후입선출(Last In First Out)>
가장 나중에 들어온 값이 가장 먼저 빠진다.
using System;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
Stack<string> s = new Stack<string>();
s.Push("첫 번째");
s.Push("두 번째");
s.Push("세 번째");
foreach (string st in s)
Console.WriteLine(st);
Console.WriteLine();
s.Pop();
foreach (string st in s)
Console.WriteLine(st);
}
}
}
가장 나중에 들어온 값인 '세 번째'가 빠졌다. 값이 들어오는 순서가 queue와 정반대이다.
https://docs.microsoft.com/ko-kr/dotnet/api/system.collections.stack?view=net-6.0
728x90
'언어 > C#' 카테고리의 다른 글
[C#] Dictionary란 (0) | 2022.05.02 |
---|---|
[C#] virtual과 abstract (추상 클래스) (0) | 2022.05.02 |
[C#] 함수, 클래스, 객체, 인스턴스, 생성자 (0) | 2022.04.25 |
[C#] Generic Type 사용하기 (0) | 2022.04.25 |
[C#] temp를 사용한 자리 바꿔치기 (0) | 2022.04.25 |