0

というDLLクラスの関数を書こうとしていますMoveNextToBack。この関数の目的は、ノードの次のノードをリストの後ろに移動することです。これが私がこれまでに持っているものですが、完全ではないと思います:

void DLL::MoveNextToBack(Node *N){

    // If N's next node is the end already, return
    if(N->Next == Tail)
        return;

    // Change N's Next pointer to the one after N's current Next
    N->Next = N->Next->Next;

    // Change N's Next Next's Previous pointer to point to N
    N->Next->Next->Prev = N;

    // Move N to the end
    N->Next->Next = Tail;
    N->Next->Prev = Tail->Prev;

}

不足しているものはありますか?

4

1 に答える 1