ホームページ >Java >&#&チュートリアル >Javaのスタックとキューの違いは何ですか?
キュー (Queue): テーブルの一端での挿入と他端での削除に制限された線形テーブルです;
スタック (スタック) : はい 挿入および削除操作をテーブルの一端のみに制限する線形テーブル。
相違点は次のとおりです:
1. 異なるルール
1. キュー: 先入れ先出し (先入れ先出し) FIFO
2. スタック: 先入れ後出し (先入れ後出し) FILO
2. 挿入および削除操作に関するさまざまな制限
1. キュー: 挿入のみ実行可能テーブルの一方の端で挿入し、テーブルのもう一方の端で削除します;
2. スタック: テーブルの一方の端でのみ挿入と削除が可能です。
3. 異なるデータ走査速度
1. キュー: アドレス ポインターに基づいて走査し、先頭または末尾から走査できますが、同時に走査することはできません。走査中はデータ構造が影響を受けないため、スペースを空ける必要があります。そのため、走査速度は速くなります;
2. スタック: データは先頭からのみ取得できます。 、スタックの一番下に最初に入ったものは、スタック全体を走査して取り出す必要があります。また、データを走査している間、走査する前にデータの一貫性を維持するために、データ用の一時スペースを開く必要があります。
4. インターフェイス実装の類似点と相違点
キューとスタックは Collection インターフェイスによって実装され、キューは Queue インターフェイスによって実装され、スタックは List インターフェイスによって実装されます。
5. データ走査速度の類似点と相違点
スタックは先頭からのみデータを取得できます。つまり、最初に入力されたデータは、データを取得する前にスタック全体を走査する必要があります。また、データを走査するときに、走査の前後でデータの一貫性を維持するために、データ用の一時スペースを開くことも必要です。
キューはアドレス ポインターに基づいて走査され、一時領域を開くことなく最初または最後から走査できるため、はるかに高速になります。
以上がJavaのスタックとキューの違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。