含头结点的C++尾插法创建简单链表并输出
2017-09-23 19:11
411 查看
#include <iostream> using namespace std; const int N = 10; struct Node { int data; Node *next; }; //尾插法链表创建与输出 int main() { int i; Node *head, *pNew, *pEnd;//一个头结点,一个不断创建的新节点,一个始终会指向末端的尾结点 head = new Node;//给头结点分配空间 pEnd = head;/*让头结点指向刚创建的第一个节点,此时pEnd也是末节点, 刚开始同时担当头和尾,等pEnd移走时,head还是指向第一个节点,后面才好输出*/ for ( i = 0; i < N; i++ ) { pNew = new Node; pNew->data = i;//赋值 pEnd->next = pNew;//让pEnd指向pEnd pEnd = pNew;/*pEnd 本来在 pNew前面,但现在pEnd在pNew上, 因为是赋地址值,原来pEnd并没有消失,下个循环pNew = new Node, 就又重新创建一个节点,反复执行*/ } pEnd->next = nullptr;//让最后一个节点指向空 //遍历输出 Node *p = head->next; while ( p ) { cout << p->data; p = p->next; } return 0; }
相关文章推荐
- C++写的带有头结点单链表创建,插入,删除,显示
- C++ 带有头结点的单链表的简单实现
- 数据结构研究--尾插法创建带头结点的单链表
- (C++版)链表(三)——实现双向链表的创建、插入、删除等简单操作
- 学习笔记——C语言实现单链表的基本操作:创建、输出、插入结点、删除结点、逆序链表
- 建立一个简单的链表,它由三个学生数据的结点组成输出各节点中的数据。
- 关于线性表的链式存储(链表)的创建,头插法,尾插法,删除链表结点的操作
- 带头结点的链表尾插法C++实现
- (C++版)链表(四)——实现双向循环链表创建、插入、删除等简单操作
- 例 9.8 建立一个如图9.9所示的简单链表,它由3个学生数据的结点组成,要求输出各结点中的数据。
- 头插法,尾插法,创建单链表,然后删除所有结点值为x的结点
- c++链表 建立 输入 输出 删除结点 插入结点 释放链表 的函数
- 尾插法创建带头结点单链表(c语言版)
- 利用对象为结点创建简单双向链表
- C语言实现单链表(带头结点)的基本操作(创建,头插法,尾插法,删除结点,打印链表)
- 【链表】C++链表操作大全:创建链表、遍历链表、删除链表结点、寻找环入口、链表加法、判断回文等
- C语言 简单链表创建 排序 输出
- C语言实现单链表(带头结点)的基本操作(创建,头插法,尾插法,删除结点,打印链表)
- (C++版)链表(四)——实现双向循环链表创建、插入、删除等简单操作
- 创建一个简单的单向链表并将其倒序输出