以下に、新しいノードを作成するシンプルで簡単な方法と、いくつかのコード例を示します。
- ノードの定義: まず、ノードの定義を行います。ノードは、データと次のノードへのポインタを持つことが一般的です。例えば、整数値をデータとして持つ単方向連結リストの場合、以下のようにノードを定義できます。
struct Node {
int data;
Node* next;
};
- 新しいノードの作成: 新しいノードを作成するには、まずメモリを動的に割り当てます。その後、データを設定し、ポインタを初期化します。以下は例です。
Node* createNode(int data) {
Node* newNode = new Node;
newNode->data = data;
newNode->next = nullptr;
return newNode;
}
上記の例では、createNode
関数を使用して新しいノードを作成し、データを設定しています。next
ポインタは、次のノードへの参照を保持します。nullptr
は、ポインタの初期値として使用されます。
- 新しいノードの使用例: 新しいノードを使用する例を示します。以下は、単方向連結リストに新しいノードを追加する関数の一部です。
void addNode(Node head, int data) {
Node* newNode = createNode(data);
if (*head == nullptr) {
*head = newNode;
} else {
Node* current = *head;
while (current->next != nullptr) {
current = current->next;
}
current->next = newNode;
}
}
上記の例では、addNode
関数を使用して新しいノードをリストに追加しています。head
は、リストの先頭ノードへのポインタです。リストが空の場合は、新しいノードをリストの先頭に設定します。リストが空でない場合は、最後のノードまで移動し、新しいノードを追加します。
以上が、C++で新しいノードを作成する方法と、その使用例です。これを参考にして、自分のプログラムに適用してみてください。