[C#] Queue과 Stack

2022. 5. 2. 22:06·언어/C#
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
'언어/C#' 카테고리의 다른 글
  • [C#] Dictionary란
  • [C#] virtual과 abstract (추상 클래스)
  • [C#] 함수, 클래스, 객체, 인스턴스, 생성자
  • [C#] Generic Type 사용하기
돌멩이수프
돌멩이수프
Information technology
  • 돌멩이수프
    WHAT DOES "IT" STAND FOR?
    돌멩이수프
  • 전체
    오늘
    어제
    • 분류 전체보기 (238)
      • 언어 (73)
        • html (3)
        • css (1)
        • java (6)
        • C (26)
        • C++ (2)
        • C# (29)
      • 공부 (7)
        • Unity (43)
        • 게임 서버 (26)
        • 네트워크 (5)
        • 데이터베이스 (7)
        • EFCore (19)
        • 기타 (14)
        • Git (5)
        • 운영체제 (1)
        • 소프트웨어공학 (21)
      • 2024-여름 (12)
      • 자기 관리 (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    네트워크
    백준
    unity
    EFCore
    게임서버
    HTML
    EntityFramework
    라즈베리파이
    자바
    tcp
    java
    C#
    coding
    유니티
    Entityfamework
    Python
    디자인패턴
    C
    C언어
    코딩
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.2
돌멩이수프
[C#] Queue과 Stack
상단으로

티스토리툴바