佇列的順序儲存表示 陣列實現

2022-05-16 20:00:33 字數 724 閱讀 8694

#define maxsize 10typedef 

struct

node *queue;

queue

createqueue(

intmaxsize )

intisfull( queue ptrq )

void

addq(elementtype x, queue ptrq)

ptrq->rear = (q->rear + 1) %maxsize;

ptrq->array[ptrq->rear] =x;

}int

isempty(queue ptrq )

elementtype

deleteq( queue ptrq )

ptrq->front = (ptrq->front + 1) %maxsize;

return ptrq->array[ptrq->front];

}

view code

以上為迴圈陣列儲存,且沒有把size域放在結構裡,這種方式,乙個結構就是乙個佇列

判斷佇列滿空,還可以用結構中加size域和tag(記錄最後一次是插入還是刪除)

maxsize的陣列只用maxsize-1的空間

rear指向佇列的最後乙個元素

front指向佇列的第乙個元素的前面

front = rear 為空

front = (rear+1) % maxsize 為滿

佇列的順序儲存實現

順序儲存佇列標頭檔案 1 pragma once 2 include3 include4 define max size 102456 順序佇列結構體 7 typedef struct seqqueue 8seqqueue 1213 初始化佇列 14 seqqueue init seqqueue 1...

陣列的順序表示和實現

c5 1.h 陣列的順序儲存結構。define max array dim 8 假設陣列維數的最大值為8 struct array bo5 1.cpp 順序儲存陣列 儲存結構由c5 1.h定義 的基本操作 5個 status initarray array a,int dim,void destro...

陣列的順序表示與實現

include include include 使用變長參數列需要引入此標頭檔案 define max dim 8 typedef struct array,parray bool init parray array,int dim,初始化,bounds的賦值採用變長參數列 bool locate ...