それらがどのように機能するかを理解しようとしていますが、多くの困難があります。それらを直感的に説明したり、トピックを始めたばかりの人に適していると思われるリソースを提供したりしたい人はいますか?
だから私はこれを持っているとしましょう:
struct node
{
int nodeNum;
nodes *next;
}
「ヘッド」ノードを作成するには、次のnode *head = new node;
ようにします。リンクされたリストが のようになるようにします。割り当て後:
head->nodeNum = 10;
head->next = NULL;
私たちは持っています。ノードを挿入する関数を書きたい場合は、次のように記述できます。
void insert(node *previousNode, int num)
{
previousNode = new node;
previousNode->nodeNum = num;
previousNode->next = NULL;
}
たとえば、insert(head, 20);
新しいリストは次のようになります。
すべてが正しい場合、この情報を使用して、リストからノードを検索および/または削除するにはどうすればよいですか? head = head->next;
たとえば、ノードのトラバースは、説明したように直感的ではありません。これはどのように作動しますか?
このトピックを理解しやすくするためのアドバイスをいただければ幸いです。みんな助けてくれてありがとう!