0

SOに行くのは久しぶりです。とにかく、本題に入らせてください。リンクされたリストとリストの抽象データ型を使用してさまざまなタスクを実行するように求める宿題があります。リストADTの要素を逆にするように求める最後の質問を除いて、すべて完了しました。リンクされたリストに対しては既にこれを行っていますが、リストの ADT 部分で立ち往生しています。私の TA は、リンクされたリストよりもリスト ADT を使用する方が簡単だと言いましたが、どこから始めればよいかわかりません。たぶん私はそれを考えすぎています。誰かが私を正しい方向に向けることは可能でしょうか? リンクされたリストを逆にするための私の擬似コードは次のとおりです。

c = pointer to current node
p = pointer to previous node
n = pointer to next node
H = head pointer

c <- H
if (c.next  != null)
    n <- c.next
while (n.next != null) {
    p <- c
    c <- n
    n <- c.next
    c.next -> p
}
if (H.next != null)
    H.next -> n
if (n != null AND c != null)
    n.next -> c

ありとあらゆる助けをいただければ幸いです。

4

1 に答える 1

1

List ADT を使用しListて Java の抽象オブジェクトを意味する場合は、Collections.reverse()

List<String> myList = new LinkedList<String>();
Collections.reverse(myList);

「ADT」について他に何かご要望がありましたら、ぜひお知らせください。

于 2013-09-26T15:28:28.113 に答える