21xrx.com
2025-04-15 13:27:21 Tuesday
文章检索 我的文章 写文章
C++ 实现单链表的创建代码
2023-07-14 22:30:02 深夜i     21     0
C++ 单链表 创建代码

C++是一种流行的编程语言,可用于编写各种应用程序。在数据结构和算法中,单链表是一种常见的数据结构。下面是C++实现单链表的创建代码。

在创建单链表之前,我们需要声明一个Node类来表示链表中的节点,节点由数据和指向下一个节点的指针组成。

class Node {
public:
  int data; //节点数据
  Node* next; //指向下一个节点的指针
};

接下来,我们可以编写一个Createlist函数,该函数将首先创建一个空节点,并要求用户输入节点的值,直到用户输入-1时结束。具体实现可以参考以下代码。

Node* CreateList() {
  Node* head = new Node;//创建一个空节点
  head->next = NULL;//链表为空
  Node* tail = head;//用tail指向链表末尾
  int x;//用来存储用户输入的节点的值
  cout << "请输入节点的值,输入-1表示结束:" << endl;
  cin >> x;
  while (x != -1) {
    Node* newNode = new Node;//创建新节点
    newNode->data = x;//新节点存储用户输入的值
    tail->next = newNode;//将新节点添加到链表尾部
    tail = newNode;//tail现在指向新节点
    cin >> x;//循环继续,从控制台读取下一个节点
  }
  return head;
}

现在我们已经实现了创建单链表的代码。我们可以在main函数中调用它,并打印出链表中的每个节点的值。以下是完整的代码。

#include <iostream>
using namespace std;
class Node {
public:
  int data; //节点数据
  Node* next; //指向下一个节点的指针
};
Node* CreateList() {
  Node* head = new Node;//创建一个空节点
  head->next = NULL;//链表为空
  Node* tail = head;//用tail指向链表末尾
  int x;//用来存储用户输入的节点的值
  cout << "请输入节点的值,输入-1表示结束:" << endl;
  cin >> x;
  while (x != -1) {
    Node* newNode = new Node;//创建新节点
    newNode->data = x;//新节点存储用户输入的值
    tail->next = newNode;//将新节点添加到链表尾部
    tail = newNode;//tail现在指向新节点
    cin >> x;//循环继续,从控制台读取下一个节点
  }
  return head;
}
int main() {
  Node* head = CreateList();
  Node* p = head->next;
  while (p != NULL)
    cout << p->data << " ";
    p = p->next;
  
  cout << endl;
  return 0;
}

总之,单链表是一种重要的数据结构,在C++中实现单链表也是非常简单的。通过使用Node类和CreateList函数,我们可以轻松创建单链表,在未来的应用程序中使用它以提高程序效率。

  
  

评论区

    相似文章