21xrx.com
2025-03-31 15:59:59 Monday
文章检索 我的文章 写文章
C++链表类的实现
2023-07-05 06:03:29 深夜i     18     0
C++ 链表 实现

C++链表是一种常见的数据结构,它的实现是非常重要的。这篇文章将介绍C++链表类的实现。

首先,让我们定义一个节点类。一个节点包含一个数据成员和一个指向下一个节点的指针。代码如下:

class Node {
public:
  int data;
  Node* next;
  Node(int val)
    data = val;
    next = nullptr;
  
};

接下来,我们定义一个链表类。链表类有一个头指针,指向链表的第一个节点。代码如下:

class LinkedList {
public:
  Node* head;
  LinkedList()
    head = nullptr;
  
};

然后,我们实现链表类的插入和删除操作。链表的插入操作将一个节点插入到链表中,而删除操作将一个节点从链表中删除。代码如下:

void LinkedList::insert(int val) {
  Node* newNode = new Node(val);
  if (head == nullptr)
    head = newNode;
  
  else {
    Node* curr = head;
    while (curr->next != nullptr)
      curr = curr->next;
    
    curr->next = newNode;
  }
}
void LinkedList::remove(int val) {
  Node* curr = head;
  Node* prev = nullptr;
  while (curr != nullptr && curr->data != val)
    prev = curr;
    curr = curr->next;
  
  if (curr == nullptr)
    return;
  
  if (prev == nullptr)
    head = curr->next;
  
  else
    prev->next = curr->next;
  
  delete curr;
}

最后,我们实现链表类的遍历操作。遍历操作将遍历链表中的所有节点,并打印它们的值。代码如下:

void LinkedList::traverse() {
  Node* curr = head;
  while (curr != nullptr)
    cout << curr->data << " ";
    curr = curr->next;
  
  cout << endl;
}

到此为止,我们已经实现了一个基本的C++链表类。使用这个类,我们可以轻松地创建、修改和遍历链表。

  
  

评论区

请求出错了