したがって、スタックまたはキューに入れることができるリストがあります。2つの間にパフォーマンスの違いはありますか?
また、java.utils の実装が Vector を拡張していることにも気付きました。独自の実装を作成するか、ベクターを直接使用する方が速いでしょうか?
したがって、スタックまたはキューに入れることができるリストがあります。2つの間にパフォーマンスの違いはありますか?
また、java.utils の実装が Vector を拡張していることにも気付きました。独自の実装を作成するか、ベクターを直接使用する方が速いでしょうか?
java.util.Stack クラスは非推奨です。代わりにDequeを使用してください。
パフォーマンスに関しては、実装に依存しますが、
スタックとベクトルは両方とも同期されます。代わりに java.util.ArrayDeque を Stack と Queue の両方として使用します。API を参照してください。
このクラスは、スタックとして使用すると Stack よりも高速になり、キューとして使用すると LinkedList よりも高速になる可能性があります。
パフォーマンスは、使用するデータ構造 (arraylist、linkedlist など) と、実行するすべての操作によって異なります。
それに応じて、データ構造を決定できます。Java API を調べて、さまざまな API の長所と短所を知ることをお勧めします。
これは、使用パターンと特定の実装によって異なります。
一般に:
PSを拡張または利用する古い実装を使用することはお勧めしません java.util.Vector
。正確なユースケースに応じて、現在利用可能なはるかに優れた実装が多数あります。