ホームページ  >  記事  >  Java  >  Javaのスタックとキューの違いは何ですか?

Javaのスタックとキューの違いは何ですか?

青灯夜游
青灯夜游オリジナル
2019-11-16 16:34:003016ブラウズ

Javaのスタックとキューの違いは何ですか?

キュー (Queue): テーブルの一端での挿入と他端での削除に制限された線形テーブルです;

スタック (スタック) : はい 挿入および削除操作をテーブルの一端のみに制限する線形テーブル。

相違点は次のとおりです:

1. 異なるルール

1. キュー: 先入れ先出し (先入れ先出し) FIFO

2. スタック: 先入れ後出し (先入れ後出し) FILO

2. 挿入および削除操作に関するさまざまな制限

1. キュー: 挿入のみ実行可能テーブルの一方の端で挿入し、テーブルのもう一方の端で削除します;

2. スタック: テーブルの一方の端でのみ挿入と削除が可能です。

3. 異なるデータ走査速度

1. キュー: アドレス ポインターに基づいて走査し、先頭または末尾から走査できますが、同時に走査することはできません。走査中はデータ構造が影響を受けないため、スペースを空ける必要があります。そのため、走査速度は速くなります;

2. スタック: データは先頭からのみ取得できます。 、スタックの一番下に最初に入ったものは、スタック全体を走査して取り出す必要があります。また、データを走査している間、走査する前にデータの一貫性を維持するために、データ用の一時スペースを開く必要があります。

4. インターフェイス実装の類似点と相違点

キューとスタックは Collection インターフェイスによって実装され、キューは Queue インターフェイスによって実装され、スタックは List インターフェイスによって実装されます。

5. データ走査速度の類似点と相違点

スタックは先頭からのみデータを取得できます。つまり、最初に入力されたデータは、データを取得する前にスタック全体を走査する必要があります。また、データを走査するときに、走査の前後でデータの一貫性を維持するために、データ用の一時スペースを開くことも必要です。

キューはアドレス ポインターに基づいて走査され、一時領域を開くことなく最初または最後から走査できるため、はるかに高速になります。

以上がJavaのスタックとキューの違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。