21xrx.com
2024-11-22 03:49:20 Friday
登录
文章检索 我的文章 写文章
C++使用new关键字创建链表
2023-06-29 15:03:40 深夜i     --     --
C++ new 创建 链表

C++是一种被广泛应用的高级编程语言,其特点是可以提高软件开发效率、可靠性和可维护性。在C++编程过程中,使用new关键字创建动态分配内存的链表是一种非常常见的操作。本文将介绍如何使用C++的new关键字创建链表。

要创建链表,首先需要定义一个节点类。节点类通常包含两个成员:一个是存储数据的变量,另一个是指向下一个节点的指针。以下是一个简单的节点类:


class Node {

public:

 int data;     // 存储数据的成员变量

 Node* next;    // 指向下一个节点的指针

};

定义好节点类之后,就可以用new操作符动态地创建节点。以下代码创建一个节点,并设置存储数据为10,指针为空:


Node* node = new Node;

node->data = 10;

node->next = nullptr;

可以看到,new操作符返回了指向新创建节点的指针。因为链表的头节点需要指向第一个节点,所以需要一个头指针来存储链表的开头。以下是创建链表的代码:


Node* head = nullptr; // 链表的头指针,初始化为空

head = new Node;    // 创建第一个节点

head->data = 3;    // 存储数据

head->next = nullptr; // 指针为空

此时,链表中已经创建了一个节点。

接下来,可以继续用new操作符创建下一个节点,并将第一个节点的指针指向第二个节点。以下是创建链表的完整代码:


#include <iostream>

using namespace std;

class Node {

public:

 int data;

 Node* next;

};

int main() {

 Node* head = nullptr; // 链表的头指针,初始化为空

 // 创建第一个节点

 head = new Node;

 head->data = 3;

 head->next = nullptr;

 // 创建第二个节点,并把第一个节点的指针指向第二个节点

 Node* second = new Node;

 second->data = 5;

 second->next = nullptr;

 head->next = second;

 // 创建第三个节点,并把第二个节点的指针指向第三个节点

 Node* third = new Node;

 third->data = 7;

 third->next = nullptr;

 second->next = third;

 // 遍历链表,打印出节点的内容

 Node* ptr = head;

 while(ptr != nullptr)

  cout << ptr->data << " ";

  ptr = ptr->next;

 

 return 0;

}

可以看到,创建链表需要以下步骤:

1.定义一个节点类

2.用new操作符创建一个节点,并设置存储数据和指向下一个节点的指针,得到第一个节点

3.用new操作符创建第二个节点,并设置存储数据和指向下一个节点的指针,将第一个节点的指针指向第二个节点

4.用new操作符创建第三个节点,并设置存储数据和指向下一个节点的指针,将第二个节点的指针指向第三个节点

5.遍历链表,打印出每个节点的数据

这样,一个简单的链表就创建完成了。当然,这只是链表的基本操作,还有很多高级链表操作需要掌握。但是,掌握了链表的基本操作之后,就可以更容易地完成更复杂的编程任务。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复