キューは、テーブルの削除操作(フロント)の唯一のフロントエンドを可能にする特別な線形テーブルであり、挿入の後端一方、テーブル(リア)。端の後端と呼ぶ、削除操作は、ヘッドの挿入操作と呼ぶことにします。何のキュー要素が存在しない場合は、空のキューと呼ばれます。
そのようなキューデータ構造において、第一の挿入要素を削除する最初の要素となり、逆に最後に挿入された要素が削除される最後の要素であり、キューはまた、「として知られている最初のうちの最初の」(FIFO-最初に最初のアウト)リニア形。
一般的な操作のためのjava.util.Queueインターフェースにjava5新しい加えてキューをサポートしています。インターフェイスは、のjava.util.Collectionインタフェースを拡張します。
キューは、Collectionインタフェースを継承します
例外がスローされます、障害時のアドオンコレクション()および削除(キューメソッドを使用している場合)、追加()およびremove()メソッドを回避しようとします。
捕捉除去要素に投票()を使用して、要素を追加する)(提供を使用します。
その利点は、要素()またはPEEK()メソッドを使用せずに、フロントエンドのうちの要素を使用するために、戻り値の成功をベースにしています。
それは我々がキューとしてのLinkedListを使用するように置くことができるように、そのLinkedListのクラスが実装注目すべきキューのインタフェースです。
Queue<TreeNode> q = new LinkedList<>();
キューがいっぱいの場合は1元のケーブルを追加します、例外がIIIegaISlabEepeplianスローされ
たキューが空の場合は削除除去・リターンキューの要素の頭部を、例外はNoSuchElementExceptionを投げ
、キューが空の場合、要素はキューの要素ヘッドを返します例外ははNoSuchElementExceptionがスローされる
キューがいっぱいの場合はオファーが真の要素とリターンを追加し、falseを返す
世論調査では要素は、nullが返され除去され、キューが空の場合、キューの先頭に返される尋ねた
キューが空の場合はかいま見返しますキューの要素ヘッドを、nullが返され
、キューがいっぱいの場合プットは、ブロッキング要素を追加
テイクは、キューの先頭を削除するには、キューが空の場合は要素を返し、ブロックされました