主要的佇列操作
voidoffer(intdata):在佇列的隊尾插入乙個元素
intpoll():刪除並返回隊首元素
intpeek():僅獲取隊首元素
輔助的佇列操作
intsize():返回佇列中儲存元素個數
booleanisempty():判斷佇列是否為空
booleanisfull():判斷佇列是否已滿
對乙個空佇列執行出棧操作會丟擲佇列空異常(underflow)
對乙個滿佇列執行入隊操作會丟擲佇列滿異常(overflow)
public
class
queue
public
static queue getinstance()
public
static queue getinstance(int size)
//佇列元素個數
public
intsize()
return (capacity - front + rear + 1) % capacity;
}//判空
public
boolean
isempty()
//判滿
public
boolean
isfull()
//入隊
public
void
offer(int data)
rear = (rear + 1) % capacity;
ary[rear] = data;
if(front == -1)
}//出隊並返回隊首元素
public
intpoll()
int temp = ary[front];
if(front == rear)else
return temp;
}//獲取隊首元素
public
intpeek()
return ary[front];
}}
public
class queue
public node getnext()
public
void
setnext(node next)
node(int e)
}private node front; //頭指標
private node rear; //尾指標
//私有化構造器
private
queue()
//獲得例項
public
static queue getinstance()
//佇列元素個數
public
intsize()
node node = front;
int k = 1;
while(node != rear)
return k;
}//判空
public boolean isempty()
//入隊
public
void
offer(int data)else
}//出隊,並返回隊首元素
public
intpoll()
node temp = front;
if(front == rear)else
return temp.getdata();
}//返回隊首元素
public
intpeek()
return front.getdata();
}}
資料結構 佇列
一 佇列的迴圈陣列實現。1 初始化 空佇列。令rear front 0。2 入佇列 約定rear指向佇列尾元素的下乙個位置。入佇列時,先判斷佇列是否已滿,而後將array rear x 然後rear 3 出佇列 約定front指向佇列的首元素位置。出佇列時,先判斷佇列是否為空,而後返回隊首元素re ...
資料結構 佇列
資料參考自 資料結構c 語言描述 佇列是一種先進先出的資料結構,這與棧正好相反。下例是簡單的queue實現 queue.h檔案 ifndef queue h define queue h include include 資料元素結構 自定義 struct datatype 佇列元素最大數 const...
資料結構 佇列
code for fun created by dream whui 2015 1 25 include stdafx.h include include using namespace std define true 1 define false 0 define ok 1 define erro...