[알고리즘] 큐 (C++)

2022. 2. 13. 00:56·Algorithm
반응형

이번 포스팅에서는 큐(Queue)에 관해 학습합니다.

 

 

 

I) 큐

큐(Queue)는 스택(Stack)과 마찬가지로 대표적인 자료구조이다.
먼저 들어온 자료가 먼저 나가는 (First In First Out) FIFO 방식으로 작동한다.

먼저 온 사람이 먼저 서비스를 받는 은행창구와 같다.

 

왼쪽이 입구이고 오른쪽이 출구인 아래의 큐에  다음과 같은 입력을 차례대로 했다고 해보자.

숫자 1 삽입 - 숫자 2 삽입 - 숫자 4 삽입 -  숫자 하나 삭제 -  숫자 하나 삭제 - 숫자 3 삽입

그렇다면 과정 별 결과는 아래 그림과 같을 것이다.

 

이제 STL Queue 라이브러리 선언과 함수에 대해 간단하게 정리하겠다.

 

queue container 은 <queue> 헤더파일 안에 존재한다.

기본 생성자 형식은 queue < DATA TYPE > 변수 이름 이다.

queue container 의 멤버 함수는

  • front()
    • 가장 처음 들어간 자료에 접근한다. (pop 하면 나올 자료)
  • back()
    • 가장 나중에 들어간 자료에 접근한다. (가장 최근에 push 한 자료)
  • empty()
    • Queue가 비어있는지 확인하는 함수이다.
    • 비어있다면 1(True)를, 차있다면 0(False)를 반환한다.
  • size()
    • Queue의 크기를 반환하는 함수이다.
    • 자료의 개수를 반환한다.
  • push()
    • 자료 하나를 Queue에 집어 넣는다.
  • pop()
    • 가장 먼저 들어간 자료를 삭제한다. ( 맨 앞에 있는 자료를 삭제한다.) 

 

#include <iostream> 
#include <queue> 

using namespace std; 

int main()
{ 	queue<int> q; 
	q.push(1); 
	q.push(2); 
	q.push(4); 
	q.pop(); 
	q.pop(); 
	q.push(3); 
	while(!q.empty())
	{ cout<<q.front()<<endl; q.pop(); } 
}​

 

 

 

 

*유의사항

- 공부 중인 인공지능공학과 대학생이 정리해서 남긴 정리입니다.

- 정확하지 않거나, 틀린 점이 있다면 댓글로 알려주시면 감사하겠습니다.

 
반응형

'Algorithm' 카테고리의 다른 글

[백준 1158번] 요세푸스 문제 (C++)  (0) 2022.02.13
[백준 10845번] 큐 (C++)  (0) 2022.02.13
[백준 1874번] 스택 수열 (C++)  (0) 2022.02.11
[백준 9012번] 괄호 (C++)  (1) 2022.02.09
[백준 9093번] 단어 뒤집기 (C++)  (0) 2022.02.09
'Algorithm' 카테고리의 다른 글
  • [백준 1158번] 요세푸스 문제 (C++)
  • [백준 10845번] 큐 (C++)
  • [백준 1874번] 스택 수열 (C++)
  • [백준 9012번] 괄호 (C++)
성 언
성 언
AI 학과 3학년 학생이자 RAG 기반 LLM 챗봇 개발 회사에서 근무 중입니다. AI 챗봇 개발과 관련된 기술, 연구, 그리고 실험 과정에서 얻은 인사이트를 공유합니다. 최신 AI 기술을 함께 탐구하며 성장해 나가요!
    반응형
  • 성 언
    AI EON
    성 언
  • 전체
    오늘
    어제
    • AII
      • NLP
      • AI Paper Review
      • MLOps
      • Python
      • Algorithm
      • Memo
      • Server Developer
        • Node.js
        • DataBase&Data Engineering
        • Server Basic
      • MATH
        • Linear Algebra
        • AI
      • etc
  • 블로그 메뉴

    • 홈
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    팬텀 읽기
    그리디 알고리즘
    배타 잠금
    map 함수
    reranker
    파이썬
    [Numpy] squeeze & unsqueeze
    스택
    Ubuntu-20.04 APM 소스 설치
    더티 쓰기
    비반복 읽기
    c++
    word 자동화
    다중 버전 동시성 제어
    NVML
    알고리즘
    패스트캠퍼스 수강 후기
    백준
    트랜잭션
    배열의 모양 변경
    리랭커
    더티 읽기
    Signature 초격차 패키지
    docx-template
    파이썬 문서 자동화
    문서 자동화
    node.js
    transaction
    umc
    Python
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
성 언
[알고리즘] 큐 (C++)
상단으로

티스토리툴바