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...