我正在實現一個通用的優先級隊列作爲家庭作業項目的一部分。我想知道當PriorityQueue爲空時要返回什麼。我無法返回null。數據結構爲空時返回什麼?
處理這種情況的最佳方法是什麼?實施這種數據結構時最好的設計選擇是什麼?
class PQueue<T> : IPQueue<T>
{
T[] items;
//..
public T RemoveMax()
{
if(heapSize < 1) //Heap Empty
return default(T);
T max = items[0];
//..
return max;
}
}
這是一個不錯的選擇。我試圖將空支票附在RemoveMax上。謝謝! – Nemo 2012-01-30 03:33:09