//queue.h
#ifndef QUEUE_DEFINE
#define QUEUE_DEFINE
#include <stdio.h>
#include <string.h>
#include <malloc.h>
#include "DoubleLinkedList.h"
int EnQueue(NODE ** ppTop,NODE ** ppBottom,void * pData);
int Peek(NODE ** ppTop,NODE ** ppBottom,void ** ppData);
int DeQueue(NODE ** ppTop,NODE ** ppBottom,void ** ppData);
#endif
//queue.cpp
#include "Queue.h"
int EnQueue(NODE ** ppTop,NODE ** ppBottom,void * pData)
{
InsertBottom(ppTop,ppBottom,pData);
return 1;
}
int Peek(NODE ** ppTop,NODE ** ppBottom,void ** ppData)
{
if (*ppTop == NULL)
{
return 0;
}
*ppData = (*ppTop)->m_pData;
return 1;
}
int DeQueue(NODE ** ppTop,NODE ** ppBottom,void ** ppData)
{
if (Peek(ppTop,ppBottom,ppData))
{
DeleteTop(ppTop,ppBottom);
return 1;
}
return 0;
}
'Study' 카테고리의 다른 글
리눅스 텔넷 서버 (0) | 2009.01.11 |
---|---|
tree(queue로 구현) (0) | 2008.12.16 |
stack (double linked list로 구현) (0) | 2008.12.16 |
double linked list (0) | 2008.12.16 |
malloc 사용 예 (0) | 2008.12.16 |