隊列queue

隊列是一種特殊的線性表  spa

隊列僅在線性表的兩端進行操做設計

隊頭(Front):取出數據元素的一端blog

隊尾(Rear):插入數據元素的一端隊列

隊列不容許在中間部位進行操做!ci

queue經常使用操做

銷燬隊列it

清空隊列table

進隊列queue

出隊列im

獲取隊頭元素鏈表

獲取隊列的長度

C語言描述=====》隊列的設計與實現  人生財富庫積累

#ifndef _MY_QUEUE_H_

#define _MY_QUEUE_H_

typedef void Queue;

Queue* Queue_Create();

void Queue_Destroy(Queue* queue);

void Queue_Clear(Queue* queue);

int Queue_Append(Queue* queue, void* item);

void* Queue_Retrieve(Queue* queue);

void* Queue_Header(Queue* queue);

int Queue_Length(Queue* queue);

#endif //_MY_QUEUE_H_

 

3.2.3隊列模型和鏈表模型關係分析

 

隊列的順序存儲設計與實現

1基本概念

隊列也是一種特殊的線性表;能夠用線性表順序存儲來模擬隊列。

2設計與實現

#ifndef _MY_SEQQUEUE_H_

#define _MY_SEQQUEUE_H_

 

typedef void SeqQueue;

 

SeqQueue* SeqQueue_Create(int capacity);

 

void SeqQueue_Destroy(SeqQueue* queue);

 

void SeqQueue_Clear(SeqQueue* queue);

 

int SeqQueue_Append(SeqQueue* queue, void* item);

 

void* SeqQueue_Retrieve(SeqQueue* queue);

 

void* SeqQueue_Header(SeqQueue* queue);

 

int SeqQueue_Length(SeqQueue* queue);

 

int SeqQueue_Capacity(SeqQueue* queue);

 

#endif //_MY_SEQQUEUE_H_

 

 

3.2.5隊列的鏈式存儲設計與實現

1基本概念

隊列也是一種特殊的線性表;能夠用線性錶鏈式存儲來模擬隊列的鏈式存儲。

2設計與實現

#ifndef _MY_LINKQUEUE_H_

#define _MY_LINKQUEUE_H_

 

typedef void LinkQueue;

 

LinkQueue* LinkQueue_Create();

 

void LinkQueue_Destroy(LinkQueue* queue);

 

void LinkQueue_Clear(LinkQueue* queue);

 

int LinkQueue_Append(LinkQueue* queue, void* item);

 

void* LinkQueue_Retrieve(LinkQueue* queue);

 

void* LinkQueue_Header(LinkQueue* queue);

 

int LinkQueue_Length(LinkQueue* queue);

 

#endif //_MY_LINKQUEUE_H_

相關文章
相關標籤/搜索