C++ 큐의 프로그램 구현(소스/이론/설명)
본 자료는 2페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
해당 자료는 2페이지 까지만 미리보기를 제공합니다.
2페이지 이후부터 다운로드 후 확인할 수 있습니다.

목차

1 큐의 프로그램 소소코드/설명

2. 큐의 이론/설명

2_1. 큐의 정의

2_2. 큐의 원리

2-3. 큐의 성질

2-4. 큐의 동작 용어설명

2-5. 큐의 구현

본문내용

Queue에 x을 삽입하는 알고리즘
// Queue : 최대 크기가 MaxSize인 배열
// MaxSize : 큐의 크기
// Rear : 큐에 마지막으로 삽입된 원소의 위치를 가리킨다.
// x : 큐에 삽입할 자료
template
void Queue::Add(const KeyType& x)
// Queue에 x를 삽입
{
if(IsFull()) QueueFull(); // Queue 가 Full 상태인가?
else Queue[++Rear]=x; // Queue 가 Full 상태가 아니면
Real 포인트 1증가 시킴
증가되 Real 포인트에 x 자료 삽입
}
< 자료의 삭제 >
- 현재 Front 포인터에 1증가시킨 위치에 있는 자료를 삭제
- 먼저 Front 포인터를 1증가시킴 그리고 Front 포인터가 가리키는 자료를 삭제
- 삭제 알고리즘
// Queue에 x을 삭제하는 알고리즘
// Queue : 최대 크기가 MaxSize인 배열
// MaxSize : 큐의 크기
// Front : 큐에서 자료를 삭제할 위치보다 1작은 위치를 지정한다.
// x : 큐에 삽입할 자료
template
KeyType* Queue::Delete(const KeyType& x)
// Queue에 x를 삭제
{
if(IsEmpty()) { QueueEmpty(); return 0; } //Queue가 Empty상태이면 종료
x = queue[++Front]; //Queue가 Empty가 아니면
Front 포인트 1증가 시킴,
Front 포인트가 가리키는 곳의 자료를 삭제 함
< 큐의 front, rear 내용 조사 >
- 큐의 Full()과 Empty()상태의 구현
- 큐가 Full인 경우
template
inline boolean Queue::IsFull()
{
if(rear==MaxSize-1)return TRUE; //Queue가 Full인 경우
else return FALSE;
}
- 큐가 Empty인 경우
template
inline Boolean Queue::IsEmpty()
{
if(front==rear)return TRUE; //Queue가 Empty인 경우
else return FALSE;
}

키워드

,   queue,   소스,   IsEmpty,   IsFull,   선입 선출 리스트,   underflow,   FIFO
  • 가격500
  • 페이지수6페이지
  • 등록일2004.05.23
  • 저작시기2004.05
  • 파일형식한글(hwp)
  • 자료번호#252351
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니