top
으로 관리 rear
와 front
로 관리front & rear == -1
front == rear
rear = n-1
큐의 크기가 5일 때, rear
가 4로 판단하면 0~3 까지 자리가 남아도 포화상태라고 판단
-> 포화 상태의 잘못된 인식 rear == n-1
큐 생성
n = 5 # Queue의 크기
rear = -1
front = -1
my_q = [None] * n # queue 생성
rear += 1 # 0
my_q[rear] = 'A'
print(my_q)
rear += 1 # 1
my_q[rear] = 'B'
rear += 1 # 2
my_q[rear] = 'C'
front += 1
my_q[front] = None
print(my_q)
선형큐가 가지고 있는 문제를 보완하기 위해 사용
rear == qSize -1
일 때 == '포화'초기 상태 : front = rear = 0
-1
메모리 누수 걱정 없이 무한한 AddQ와 DeleteQ를 할 수 있다
front == rear
가 is_empty
와 is_full
의 조건인건 여전 number_of_ele_in_q = 0