-
C# 우선순위 큐, Priority queue닷넷/C# 2018. 11. 7. 18:30반응형
큐랑 스택을 섞어 쓸 방법이 어디 없을까 구글링해보다가
우선순위 큐라는 걸 알게 되었다.
학창시절, 자료구조 과목에선 안 배웠던 것 같은데..
우선순위 큐란, 위키백과에 따르면
각 원소들이 우선순위를 가지며 높은 우선 순위를 가진 원소가 낮은 우선순위를 가진 원소보다 먼저 처리되고,
만약 두 원소가 같은 우선순위를 가진다면 큐에 의해서(저장된 순서대로) 처리 되는 자료구조를 말한다.
개념을 알았으면 구현을 할 차례!
큐나 스택은 Queue와 Stack이라는 (이름 그대로 알 수 있는) 클래스가 있어서
쉽게 구현할 수 있었으나 우선순위 큐는 그런 클래스가 존재하지 않았다.
C#에서는 우선순위 큐를 어떻게 구현할 수 있을까?
힌트는 위키백과에서 찾을 수 있었다.
그렇게 스스로 구현하기 위해 코드를 작성하다가 다른 사람이 만든 게 있지 않을까 하는 생각이 들어서 구글링을 했다.
깃허브에 이미 다른 사람이 올려놓은 소스가 있었다.
그것도 아주 잘 코딩되어 있어서 그대로 활용하기로 했다.
그 소스는 다음 링크에서 볼 수 있다.
https://github.com/BlueRaja/High-Speed-Priority-Queue-for-C-Sharp
BluRaja 라는 닉넴의 깃허브 사용자가 올린 소스다.
Visual C#뿐만 아니라 유니티 C#도 있다.
또한 활용 예에 해당되는 소스도 있다.
고맙게 잘 쓰도록 하겠다.
반응형'닷넷 > C#' 카테고리의 다른 글
C# foreach DataRow in DataSet (0) 2018.12.11 C# 웹통신 요청 및 응답 (WebRequest POST, WebResponse) (ContentType: application/x-www-form-urlencoded) (0) 2018.11.15 C# JSON POST and GET (정보 전달 및 확인) (0) 2018.11.02 C# JSON 파싱하기 (0) 2018.10.31 C# URL에 들어가는 한글 UTF-8 Encoding (0) 2018.10.30