-4

私はJavaで単一のいいねリストと二重にリンクされたリストを実装しましたが、今、私の先生は私に単一と二重にリンクされたリストを使用して配列を実装するように頼みました(Javaで)。配列を使用して単一リンクリストと二重リンクリストを実装する方法についていくつかの解決策に出くわしましたが、それ以外の方法が必要です。誰かがこれについて私を助けることができますか?

4

1 に答える 1

2

あなたの正確な任務はわかりません。ただし、「配列を実装する」とは、配列の基本機能を実行する方法を提供することを意味すると仮定して、配列で何ができるかを考えてみてください。

配列のサイズは作成時に決定され、サイズを変更することはできません。そのため、サイズを指定するコンストラクターを使用してリンク リストを実装し、その後リストが拡大または縮小しないようにしてください。その時点ですべてのノードを作成すると便利な場合がありますが、厳密に必須というわけではありません。

配列はランダム アクセスを提供するため (リンク リストのフロント/エンドのみのアプローチではなく、配列内の任意のスロットにアクセスまたは割り当てることができます)、インデックスで取得および設定するメソッドを実装します。リンクされたリストを回避する方法を知っている場合、これは非常に簡単なことです (指定されたインデックスに到達するのに必要な数のセルの先頭または末尾から反復するだけです)。

次のことができる必要があります。

// the constructor with size specified.
PseudoArray pa = new PseudoArray(10);

// assigning to arbitrary indices
pa.set(0, "Hello, I am the first element.");
pa.set(5, "I am in the middle of the list.");

// reading from arbitrary indices
pa.get(0);
pa.get(5);

特定の種類のオブジェクトだけが入るようにするなどを追加する必要があるかもしれませんが、基本的には、ランダム アクセスと固定の既定のサイズが最大の問題です。

うまくいけば、私はあなたの質問を理解しました。

于 2013-03-20T06:44:27.003 に答える