佇列是一種特殊的
線性表,特殊之處在於它只允許在表的前端(front)進行刪除操作,而在表的後端(rear)進行插入操作,和棧一樣,佇列是一種操作受限制的線性表。進行插入操作的端稱為隊尾,進行刪除操作的端稱為隊頭。
佇列的鏈式儲存結構:
#include #include /*定義乙個鍊錶*/
typedef struct _node
node;
/*定義乙個佇列*/
typedef struct _queue
queue;
/*建立乙個佇列*/
queue *creatqueue()
/*入隊操作:
入隊成功:返回true
入隊失敗:返回false
*/ bool inqueue(queue *q,int data)
return true;
}/*出隊操作:
出隊成功:返回true
出隊失敗:返回false
*/ bool dequeue(queue *q)
else
return true;
}/*計算佇列長度*/
int getlength(queue *q)
return len;
}int main()
迴圈佇列
#include #include #define maxsize 10
/*定義乙個佇列*/
typedef struct _queue
queue;
/*建立乙個佇列*/
queue *creatqueue()
/*入隊操作:
入隊成功:返回true
入隊失敗:返回false
*/ bool inqueue(queue *q,int data)
q->data[q->rear]=data;
q->rear=(q->rear+1)%maxsize;
printf("in queue success:\n");
return true;
}/*出隊操作:
出隊成功:返回true
出隊失敗:返回false
*/ bool dequeue(queue *q,int &data)
data=q->data[q->front];
q->front=(q->front+1)%maxsize;
printf("de queue success:\n");
return true;
}void printqueue(queue *q)
printf("the data of the queue is :\n");
int p=q->front;
while(p!=q->rear)
}int main()
佇列(C語言)
include include typedef int elemtype typedef struct list node typedef struct listquene quene 建立空佇列 quene createquene return q 判斷佇列是否為空 bool isemptyque...
C語言 佇列
佇列是一種特殊的線性表,特殊之處在於它只允許在表的前端 front 進行刪除操作,而在表的後端 rear 進行插入操作,和棧一樣,佇列是一種操作受限制的線性表。進行插入操作的端稱為隊尾,進行刪除操作的端稱為隊頭。即 插入 只能插入在鍊錶最後 出隊 只能從隊頭出 adt include include...
鏈佇列 C語言
include include typedef int elemtype typedef int status 鏈佇列結點結構 typedef struct qnode qnode 佇列鍊錶結構 typedef struct linkqueue 鏈佇列初始化 void initqueue linkq...