큐 (queue) & 너비 우선 탐색 (BFS)

    - 큐 (queue) https://www.youtube.com/watch?v=yAiZ1AVU8Aw&list=PLRx0vPvlEmdDHxCvAQS1_6XV4deOwfVrz&index=15 https://blog.naver.com/ndb796/221230944729 14. 큐(Queue) 이번 시간에는 지난 시간에 배웠던 스택(Stack)에 이어서 큐(Queue)에 대해 알아보도록 합시다. ... blog.naver.com - 너비 우선 탐색 (BFS) https://www.youtube.com/watch?v=66ZKz-FktXo&list=PLRx0vPvlEmdDHxCvAQS1_6XV4deOwfVrz&index=16 https://blog.naver.com/ndb796/221230944971 15. 너비 ..

    2. 큐의 구현

    2. 큐의 구현

    선형 큐 (linear queue) 선형 큐 : 1차원 배열을 써서 큐를 구현하는 방법 1차원 배열을 정의하고 삽입, 삭제를 위한 변수인 front와 rear를 만든다 front는 큐의 첫 번째 요소를 가리키고 rear는 큐의 마지막 요소를 가리킨다 front와 rear의 초기값은 -1이다. 데이터가 증가되면 rear를 하나 증가하고 그 위치에 데이터가 저장된다. 삭제할 때도 front를 하나 증가하고 front가 가리키는 위치에 있는 데이터를 삭제한다 선형큐의 구현 ft. C언어 #include #include #define MAX_QUEUE_SIZE 5 typedef int element; typedef struct { // 큐 타입 int front; // 큐의 맨 앞 원소 위치 int rear; ..

    1. 큐 ADT

    1. 큐 ADT

    큐란? 선입선출(FIFO : First-In First-Out) : 스택의 경우, 나중에 들어온 데이터가 먼저 나가는 구조인데 반하여 큐는 먼저 들어온 데이터가 먼저 나가는 구조 큐의 예로는 매표소에 표를 사기 위해 늘어선 줄을 들 수 있다 줄에 있는 사람들 중 가장 앞에 있는 사람이 가장 먼저 표를 사게 될 것이다. 그리고 나중에 온 사람들은 줄의 맨 뒤에 서야 할 것이다 큐는 뒤에서 새로운 데이터가 추가되고 앞에서 데이터가 하나씩 삭제되는 구조를 가지고 있다. 구조상으로 큐가 스택과 다른 점은 스택의 경우, 삽입과 삭제가 같은 쪽에서 일어나지만 큐에서는 삽입과 삭제가 다른 쪽에서 일어난다는 것이다. 후단 (rear) :큐에서 삽입이 일어나는 곳 전단 (front) : 큐에서 삭제가 일어나는 곳 큐의 ..