본문 바로가기
코딩 상식

스택과 큐

by Mostlove 2023. 7. 14.
728x90
반응형

스택 : LIFO(후입선출 Last in First out)

큐 : FIFO(선입 선출First in First out)

namespace Exercise
{
    internal class Program
    {
        static void Main(string[] args)
        {
            Stack<int> stack = new Stack<int>();//후입선출

            stack.Push(101);
            stack.Push(102);
            stack.Push(103);
            stack.Push(104);
            stack.Push(105);

            int data = stack.Pop();//Pop, Peek은 stack 값이 없을 경우 에러 출력
            int data2 = stack.Peek();

            Queue<int> queue = new Queue<int>();//선입선출 

            queue.Enqueue(101);
            queue.Enqueue(102);
            queue.Enqueue(103);
            queue.Enqueue(104);
            queue.Enqueue(105);

            int data3 = queue.Dequeue();
            int data4 = queue.Peek();

            LinkedList<int> list  = new LinkedList<int>();
            list.AddLast(101);
            list.AddLast(102);
            list.AddLast(103);

            //FIFO
            int value1 = list.First.Value;
            list.RemoveFirst();

            //LIFO
            int value2 = list.Last.Value;
            list.RemoveLast();
            //LinkedList로 스택과 큐를 구현할 수 있지만
            //스택과 큐는 추상적인 부분에서 좋다 ex) 프로그래머 상호간에 약속할때  
        }
    }
}

반응형

'코딩 상식' 카테고리의 다른 글

델리게이트(delegate)와 이벤트(event)  (0) 2023.06.28
객체 지향(OOP)이란 ??  (0) 2023.06.27