[Unity]/[C#]

[C# 기초] #13 : Collection(Stack, Queue)

극꼼 2021. 7. 22. 11:33
반응형


- 자료구조 : 데이터를 구조적으로 구현하는 알고리즘

- Collection : C#에서 지원하는 자료구조 클래스. List, ArrayList, Dictionary, HashTable, Stack, Queue 등이 있음.

 * https://geukggom.tistory.com/95

 

이제까지 Collection에서 대표적으로 많이 쓰이는 클래스들을 정리해보았는데요, Collection 마지막 포스팅으로 Stack, Queue에 대해 알아보겠습니다. 


- Queue : 선입선출(First In First Out) 방식으로, 가장 먼저 입력된 값이 가장 먼저 나가는 구조.

- Stack : 후입선출(Last In First Out) 방식으로, 가장 늦게 입력된 값이 가장 먼저 나가는 구조.

 

- Stack, Queue의 장점 : 저장 공간이 효율적이며, 박싱 문제가 없습니다. 

- Stack, Queue의 단점 : 맨 뒤(Stack), 맨 앞(Queue)에 저장된 값 외의 다른 값들에는 접근이 불가능합니다. 

 

 

1. 선언

var Que = new Queue<int>();
var Sta = new Stack<int>();

 

 

2. 데이터 추가 : Queue는 Enqueue, Stack은 Push

Que.Enqueue(1);
Que.Enqueue(2);
Que.Enqueue(3);
Que.Enqueue(4);
Que.Enqueue(5);

Sta.Push(10);
Sta.Push(20);
Sta.Push(30);
Sta.Push(40);
Sta.Push(50);

 

 

3. 데이터 불러오기 : Queue는 Dequeue, Stack은 Pop

Debug.Log(Que.Dequeue());  //가장 먼저 입력한 데이터인 1 출력. 
Debug.Log(Sta.Pop());  //마지막으로 입력한 데이터인 50 출력

이때 출력된 데이터는 삭제됩니다.

 

 

4. 데이터 전체 삭제 : Clear()

 

 

5. 데이터 정보 조회

- 저장된 값의 총 개수 : Count

- 해당 값이 있는지 조회 : Contains(값)

- 가장 먼저 출력될 데이터 확인 : Peek()

 

반응형