答えを探してみましたが、自分のものと一致するものが見つからないようです。私は学校用のテンプレート リンク リストを作成していますが、多くのエラーが発生しています。しかし、私は現時点で 1 つだけを助けたいと思っています。リンクされたリストの最後に要素を追加することになっていますが、次のようになります。
append(ListNode)
最初は、「よし、新しいノードを作成し、後ろに挿入する...」と思いましたが、読み返してみると、2 つのリンクされたリストを連結する別の関数を作成する必要があります。したがって、リンクされたリストに既に作成された要素を追加する必要があると思います。そうすれば、連結を行うときに、append を使用して 2 つを接続できます。または、少なくとも...これは私が考えているだけです..
だから最初に、私はした:
template<typename NODETYPE>
bool List<NODETYPE>::append(NODETYPE &value)
{
ListNode<NODETYPE> *newPtr = getNewNode(value); //creates new node
if(isEmpty()) //checks if list is empty
{
firstPtr = lastPtr = newPtr;
return true;
}
else //inserts new node at end of list
{
ListNode<NODETYPE> *tempPtr = lastPtr;
tempPtr->nextPtr=newPtr;
lastPtr = newPtr;
return true;
}
}
しかし、これは新しいノードを追加するだけなので、使用できません。作成済みのノードをアタッチする方法はありますか? たとえば、別のリンクされたリストを前のリストに追加しますか?
私の concat (検索した他のものとは異なり) は、リンクされたリストを 1 つだけ使用します。前のリンクされたリスト オブジェクトが関数を呼び出してから、リストをアタッチします。
concat(&List)
だから私はすべて混乱しています。どんな助けでも大歓迎です、ありがとう!