佇列(queue):也是運算受限的線性表。是一種先進先出(first in first out ,簡稱fifo)的線性表。只允許在表的一端front進行插入,而在另一端rear進行刪除。
隊首(front) :允許進行刪除的一端稱為隊首。
隊尾(rear) :允許進行插入的一端稱為隊尾。
例如:排隊購物。作業系統中的作業排隊。先進入佇列的成員總是先離開佇列。
#include
typedef int elemtype;
typedef struct qnodeqnode ,*queueptr;
typedef structlinkqueue;
//初始化佇列
void initq(linkqueue &q)
//判斷佇列是否為空
bool isempty(linkqueue q)
//入隊
void enqueue(linkqueue &q,elemtype e)
//出隊
void dequeue(linkqueue &q,elemtype &e)
} //列印佇列
void printq(linkqueue &q)
printf("\n");
}//獲取頭結點
void gethead(linkqueue q,elemtype &e)
int main()
else printf("not empty!\n");
break;
case 3:
scanf("%d",&e);
enqueue(q,e);
break;
case 4:
dequeue(q,e);
break;
case 5:
printq(q);break;
case 6:
gethead(q,e); break;
case 0: break;
default: printf("請輸入正確的選項!\n");}}
}
鏈式佇列的基本操作
操作介紹 1 建立乙個鏈式佇列 2 入隊乙個元素 3 出隊乙個元素 4 獲取隊首元素 5 清空佇列 6 判斷佇列是否為空 7 求佇列長度 8 輸出當前的佇列 9 退出作業系統 include include using namespace std typedef struct qnode 結點結構 ...
C 鏈式佇列基本操作
1 include 2 define queueelementtype int 3using namespace std 45 結點 6 typedef struct node 7linkqueuenode 1112 佇列 13 struct linkqueue14 1819 將q初始化為乙個空的鏈...
31 鏈式佇列的基本操作實現
linkqueue.h檔案 ifndef linkqueue h define linkqueue h include include include 定義節點的儲存結構 typedef struct linkqueuenode linkqueuenode 定義鏈式佇列的儲存結構 typedef s...