私は宿題プロジェクトの一環として一般的な優先待ち行列を実装しています。 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