用java實現優先級別佇列

2021-07-05 07:31:42 字數 1201 閱讀 5193

1、注意:因優先級別最高的元素被刪除後,其後邊的數都會往前移動,所以不會出現「假溢位」。所以不用設計成迴圈佇列

2、包和類的結構截圖:

package com.test3;

public class element

public element(object elem, int priority)

public object getelem()

public void setelem(object elem)

public int getpriority()

public void setpriority(int priority)

}package com.test3;

public class seqpqueue

public seqpqueue(int sz)

private void initiate(int sz)

//從佇列尾部插入物件(element)

if(count > maxsize)

data[rear] = (element)obj;

rear = rear + 1;

count++;

}public element delete() throws exception

//priority越小優先級別越高

//將優先級別最高的數放到min中

element min = da

ta[0];

int minindex = 0;

for(int i = 0; i < count; i++)

}for(int i = minindex+1; i < count; i++)

rear = rear-1;

count--;

return min;

}//查詢第乙個元素

public object getfront() throws exception

element min = da

ta[0];

for(int i = 0; i < count; i++)

}return min;

}public boolean notempty()

}package com.test3;

public class test

} catch (exception e) }}

優先順序佇列及用java陣列實現

所謂優先順序佇列,其實就是佇列的資料項是按順序儲存的,和普通佇列很類似,也有乙個隊首乙個隊尾,並且也是從隊首刪除資料。只不過插入的時候不一定是插入到隊尾 因為要維持佇列的有序性 優先順序佇列一般有陣列和堆兩種資料結構實現方式,下面介紹的是陣列形式以插入排序演算法實現的優先順序佇列。優先順序佇列可以用...

用堆實現優先順序佇列

申明 要用到堆的基本操作 鏈結為 typedef struct priorityqueue priorityqueue 優先順序佇列初始化 void priorityqueueinit priorityqueue q,compare com 向佇列中插入元素 void priorityqueuepu...

用NodeJs實現優先順序佇列PQueue

優先順序佇列 priorityqueue 是個很有用的資料結構,很多程式語言都有實現。nodejs是乙個比較新潮的伺服器語言,貌似還沒有提供相關類。這些天有用到優先順序佇列,因為時間很充足,閒來無事,就自己實現了一下。如下 script pqueue.js description 優先順序佇列類 a...