C++ 链表构建和显示完整程序 - 代码示例和解释
#include
// 定义链表节点结构体 struct ListNode { int data; ListNode* next; ListNode(int x) : data(x), next(NULL) {} };
// 构建链表函数 ListNode* buildList() { ListNode* head = NULL; ListNode* tail = NULL;
int data;
cout << '请输入链表节点,以 -1 结束:' << endl;
cin >> data;
while (data != -1) {
ListNode* newNode = new ListNode(data);
if (head == NULL) {
head = newNode;
tail = newNode;
} else {
tail->next = newNode;
tail = newNode;
}
cin >> data;
}
return head;
}
// 显示链表函数 void displayList(ListNode* head) { if (head == NULL) { cout << '链表为空!' << endl; return; }
cout << '链表节点为:' << endl;
ListNode* cur = head;
while (cur != NULL) {
cout << cur->data << ' ';
cur = cur->next;
}
cout << endl;
}
int main() { ListNode* head = buildList(); displayList(head); return 0; }
在本程序中,我们定义了一个链表节点结构体,包含一个整数类型的数据和一个指向下一个节点的指针。然后,我们定义了两个函数,一个用于构建链表,一个用于显示链表。在构建链表函数中,我们通过循环输入链表节点的数据,新建节点,并将其添加到链表中。在显示链表函数中,我们先判断链表是否为空,再遍历链表并输出每个节点的数据。最后,在主函数中,我们调用构建链表函数和显示链表函数,实现了链表的构建和显示。
原文地址: https://www.cveoy.top/t/topic/mI7Y 著作权归作者所有。请勿转载和采集!