Queue
-
자료구조 큐와 구현24년 11월 이전/레거시-자료구조 2019. 9. 6. 12:00
Contents 시작하며... 큐 정의 큐 큐 ADT 큐 main 함수 큐 구현 기존 자료구조를 활용하자! 큐 생성과 파괴 IsEmpty Enqueue Dequeue Peek 마치며... 시작하며... 구르미의 "Computer Science 정복하기 - 자료구조"의 아홉 번째 장입니다. 이 장의 대략적인 내용은 다음과 같습니다. 자료구조 큐의 정의 (이중)연결리스트 기반 큐 구현 이 장의 소스코드는 다음을 참고해주세요. url: https://github.com/gurumee92/datastructure branch: ch09 code directory: src/ch09 자 시작합시다! 큐 정의 이번 장에서는 자료구조 큐에 대해서 살펴보도록 하겠습니다. 큐 자료구조 큐는 스택과 정반대로 FIFO 구조입..
-
[자료구조/알고리즘]05. 큐24년 11월 이전/레거시-자료구조 2019. 2. 2. 01:59
CH 05 큐(Queue)목표 자료구조 큐에 대해 알아보고, C/C++ 프로그래밍 언어로 구현해봄으로써 큐의 대한 이해의 깊이를 늘려보세요! 목차1. 큐란 무엇인가? 2. 큐 ADT 3. C로 구현하기 4. C++로 바꿔보기 5. 결론 1. 큐란 무엇인가? 큐란 마치, 순서가 있는 대기열 같습니다. 그림처럼 은행의 대기열이 있다고 합시다. 당연히 먼저 온 사람이 먼저 나가게 되겠죠? 이것이 바로 큐입니다. 유식한 말로는 FIFO(First In First Out) 구조라고 하지요. 이번 시간에 우리가 구현할 큐는 배열 기반의 원형 큐입니다. 본격적으로 코드를 구현하기 전에 원형 큐가 무엇인지 살펴보도록 하죠.일반 배열로 큐를 구현했을 때, 우리가 가질 수 있는 문제점 중 하나는, 큐가 꽉차면, 재활용이 ..
-
[알고스팟] 외계 신호 분석(ITES)24년 11월 이전/레거시-알고스팟-알고리즘 문제 해결 전략 2019. 1. 23. 13:44
[알고스팟] 외계 신호 분석(ITES)목표 : 책 "알고리즘 문제 해결 전략 문제 풀이" 중 문제 외계 신호 분석(ITES)를 풀어보자문제 URL풀이외계 신호 분석(ITES) 문제는 큐와 온라인 알고리즘을 이용하여 푸는 문제입니다. 온라인 알고리즘이란 무엇이냐. 오프라인 알고리즘의 경우 입력의 값이 모두 나왔을 때, 알고리즘을 일괄적으로 적용하여 문제를 푸는 것을 말하고, 온라인 알고리즘은 입력이 생성될 때마다, 알고리즘을 적용하여 문제를 푸는 방식을 말합니다. 일반적으로 예를 들어서 어떤 배열의 누적합을 구하는 경우, 이미 만들어져 있는 배열을 토대로 다음과 같이 누적합 만들 수 있습니다. arr = [1, 2, 3] acc = 1 + 2 + 3 = 6 그런데, 이렇게 생각할 수도 있습니다. 배열의 원..
-
[알고스팟] 조세푸스 문제(JOSEPHUS)24년 11월 이전/레거시-알고스팟-알고리즘 문제 해결 전략 2019. 1. 23. 11:04
[알고스팟] 조세푸스 문제(JOSEPHUS)목표 : 책 "알고리즘 문제 해결 전략 문제 풀이" 중 문제 조세푸스 문제(JOSEPHUS)를 풀어보자문제 URL풀이조세푸스 문제는 대표적인 큐 시뮬레이션 문제입니다. 먼저 첫 번째 예제를 살펴보도록 할까요? N = 6, K = 3 병사들은 1~6번까지, 원 형태로 앉아 있습니다. 이제 1번부터 2명이 남을 때까지 차례대로 죽여 나갈 건데, 아래 표에서 죽인다면, X를 표시해보도록 하지요. 또한, O는 죽어야 하는 놈을 가리키는 인덱스라고 하겠습니다. 1명 쨰, | 1 | 2 | 3 | 4 | 5 | 6 | | X | | | | | | | O | | | | | | 1번은 안타깝게도 묻지도 따지지도 않고 죽여야 합니다. 2명 째, | 1 | 2 | 3 | 4 | ..