最小優先順序佇列 陣列表示

2021-04-27 20:05:37 字數 1195 閱讀 8534

#ifndef

pqueue_h

#define

pqueue_h

#include

#include

const

intdefaultpqsize = 50;

//優先順序佇列陣列的預設長度

template

t>

class

pqueue

bool

insert(const

t& x);

//將新元素x插入到隊尾

bool

removemin(t& x);

//將隊頭元素刪去

bool

getfront(t& x)const;

//讀取隊頭元素(具最小優先權)的值

void

makeempty()

//置優先順序隊列為空

bool

isemtpy()const

bool

isfull()const

intgetsize()const

//求優先順序佇列中元素的個數

protected:

t *pqelements;

//優先順序佇列陣列

intcount;

//當前元素個數

intmaxsize;

//佇列最大可容納元素個數

void

adjust();

//佇列調整 };

template

t>

pqueue

::pqueue(int

sz/* = defaultpqsize */):maxsize(sz),count(0)

template

t>

bool

pqueue

::insert(const

t &x)

template

t>

void

pqueue

::adjust()

template

t>

bool

pqueue

::removemin(t &x)

template

t>

bool

pqueue

::getfront(t &x) const }

#endif

佇列 優先順序佇列

優先順序佇列的隊尾是不需要改變的,永遠在低下標處。當佇列增加資料時,隊頭的位置就是資料項的大小減去1.public class priorityq 插入 public void insert long item else quearray j 1 item nitem 刪除 public long ...

優先順序佇列

分為最小優先順序佇列和最大優先順序佇列。優先順序佇列是一種用來維護一組元素構成的集合s的資料結構,這一組元素都有乙個關鍵字key,乙個最大優先順序佇列支援的操作 insert s,x 把x插入到集合s中 maxmum s 返回s中最大元素 extra max s 去掉s中最大關鍵字並返回該最大關鍵子...

優先順序佇列

1 include stdafx.h 2 include3 4 using namespace std 5 6 define max heap len 107 int heap max heap len 8 int heap size 0 the number of elements in heap...