땅콩의 일기장

  • 홈
  • 태그
  • 방명록

링버퍼 1

큐(Queue)

큐란? 데이터를 일시적으로 쌓아놓은 자료구조이다. 데이터의 입출력순서는 선입선출(먼저 들어온 것이 먼저 나감)이다. 큐에 데이터를 넣는 작업을 인큐(enqueue), 꺼내는 작업을 디큐(dequeue)라고 한다. 즉 어떤 데이터를 인큐하면 큐의 맨 뒤에 데이터를 추가하고, 데이터를 디큐하면 큐의 맨 앞 데이터를 제거한다음 한칸씩 앞으로 당긴다. 근데 이렇게 디큐할때의 복잡도는 O(n)으로, 데이터를 하나 꺼낼때마다 이런 처리를 한다면 효율이 매우 떨어진다. 이런 문제점은 링버퍼를 사용하여 큐를 구현하면 개선할 수 있다. 프런트와 리어 값을 업데이트하며 인큐와 디큐를 수행하게 되기 때문이다. [ O(1) ] 다음은 링버퍼로 큐를 구현하는 코드이다. 구간별 설명은 주석으로 대신한다! import java.u..

자료구조 2022.07.16
이전
1
다음
더보기
프로필사진

땅콩의 일기장

AI 솔루션 기획자

  • 분류 전체보기 (101)
    • AI (0)
    • 기획 (0)
    • 운영체제 (17)
    • 네트워크 (3)
    • 데이터베이스 (4)
    • 컴퓨터 구조 (4)
    • 자료구조 (10)
    • 알고리즘 (3)
    • 아키텍쳐 & 디자인패턴 (2)
    • Spring & SpringBoot (10)
    • JPA (5)
    • django, drf (5)
    • Docker (1)
    • Flutter (8)
    • AWS (1)
    • 기타 개발공부 (11)
    • 팀 프로젝트 (4)
    • 개인 프로젝트 (3)
    • 동아리 (6)
    • 스터디 (1)
    • 독서 (1)
    • 그 외 활동 (1)
    • 아무말 (1)
    • 취미 (0)

최근댓글

방문자수Total

  • Today :
  • Yesterday :

최근글과 인기글

  • 최근글
  • 인기글

Calendar

«   2025/05   »
일 월 화 수 목 금 토
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

Copyright © Kakao Corp. All rights reserved.

티스토리툴바