详细解释:
Node* head = new Node(1);:这行代码创建了一个头指针 head,指向一个新创建的节点,数据值为 1,这个节点是链表的头节点。 new Node(1)返回的地址赋值给了head 。
head->next = new Node(2);:这行代码创建了一个新的节点,数据值为 2,然后将这个新节点的地址赋值给了头节点的 next 指针,这样就将第二个节点链接到了链表中。
head->next->next = new Node(3);:这行代码创建了另一个新的节点,数据值为 3,然后将这个新节点的地址赋值给了第二个节点的 next 指针,这样就将第三个节点链接到了链表中,成为了第二个节点的下一个节点。
#include <iostream>
using namespace std;
struct Node {
int data;
Node* next;
Node(int val) : data(val), next(nullptr) {}
};
int main() {
Node* head = new Node(1);
head->next = new Node(2);
head->next->next = new Node(3);
// 遍历链表
Node* curr = head;
while (curr != nullptr) {
cout << curr->data << " ";
curr = curr->next;
}
return 0;
}
头指针(head pointer):头指针是一个指针变量,指向链表中的第一个节点(即头节点)。头指针用于访问整个链表的数据,它提供了对链表起始点的引用。