使用C++代码创建一个链表并输出:
#include
#include
//#include
//#include
#include
#include
using namespace std;
//定义一个结构体 ListNode的结构
struct ListNode
{
int val; //当前结点的值用val表示
struct ListNode *next; //指向下一个结点的指针用next表示
ListNode(int x) : val(x), next(NULL) { } //初始化当前结点值为x,指针为空
};
void print(ListNode *head) //打印输出链表
{
ListNode *p = head;
while (p != NULL)
{
cout << p->val;
p = p->next;
}
}
ListNode* CreateListNode(ListNode* pHead) // 创建链表
{
ListNode* p = pHead; // 声明移动指针,最开始指向头结点
for (int i = 1; i < 10; ++i)
{
ListNode* pNewNode; // 声明链表 pNewNode 来保存数据,pNewNode 就是一个链表的节点
pNewNode = new ListNode(0); // 初始化变量 pNewNode
pNewNode->val = i; // 将新节点的值赋值为 i
pNewNode->next = NULL;
p->next = pNewNode; // p的下一节点指向这个新的节点,将此节点与头节点连接
p = pNewNode; // p节点指向这个新的节点,向后移动指针,以便下一次链接;p一直指向链表最后的一个节点
}
return pHead;
}
int main()
{
ListNode* head; // 声明头节点
head = new ListNode(0); // 头节点需要赋值才能调用
ListNode* p = CreateListNode(head); // 引用头节点创建链表
print(p); //引用打印
system("pause");
}
审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
C++
+关注
关注
21文章
2066浏览量
72900 -
代码
+关注
关注
30文章
4556浏览量
66800 -
链表
+关注
关注
0文章
80浏览量
10464
发布评论请先 登录
相关推荐
C语言单向链表
strName[16];//用指针的话会出访问冲突异常 struct NODE *next;};//创建一个具有n个节点的链表,从键盘输入数据将其初始化,并返回链表的首节点指针str
发表于 05-22 15:53
玩转C语言链表-链表各类操作详解
,它称为“表尾”,它的地址部分放一个“NULL”(表示“空地址”),链表到此结束。 链表的各类操作包括:学习单向链表的创建、删除、 插入(无序、有序)、
发表于 09-18 13:30
如何去实现在Windows ARM架构下运行并调试C/C++呢
系统变量path中重新进入 Visual Studio Code 中,创建一个新的文件夹,在文件夹中创建一个新的C++文件例如一个简单的 Hello World#includeint main(){ std::cout
发表于 05-12 16:17
如何使用DevEco Studio创建Native C++应用
简介本篇主要介绍如何使用DevEco Studio for OpenAtom OpenHarmony (以下简称“OpenHarmony”)创建一个Native C++应用。应用采用“Native
发表于 02-22 14:24
使用OpenVINO运行C++ API创建输入tensor并执行推理遇到的问题求解
使用 OpenVINO™ 运行时 C++ API 创建输入 tensor 并执行推理:
ov::Tensor input_tensor = ov::Tensor(input_type
发表于 08-15 08:22
C++结构体与链表的实验报告资料免费下载
本文档的主要内容详细介绍的是C++结构体与链表的实验报告资料免费下载。
一、目的和要求1. 掌握结构体类型、结构体变量的基本概念;2. 掌握结构体指针、结构体数组的应用;3. 掌握链表的基本概念;4. 掌握
发表于 05-27 08:00
•4次下载
双向循环链表的创建
需要注意的是,虽然双向循环链表成环状,但本质上还是双向链表,因此在双向循环链表中,依然能够找到头指针和头节点等。双向循环链表和双向链表相比,
双向循环链表创建代码
; //保存下一个数据元素的地址 struct node * prev; //保存上一个数据元素的地址 }Node; //创建表头表示链表 Node* creatList() { Node * HeadNode
如何创建单链表
实际中经常使用的一般为带头双向循环链表。 单链表1 # include # include typedef struct node { int data; //"数据域" 保存数据元素 struct
评论