VC中文网-VC-MFC编程论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1179|回复: 2
打印 上一主题 下一主题

这不但仅是一个单链表,C++的模板化单链表,附带内置迭代器实现

[复制链接]

13

主题

41

帖子

28

金币

连长

Rank: 7Rank: 7Rank: 7

积分
120
跳转到指定楼层
楼主
发表于 2018-8-8 08:03:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
链表是可以存储无限数量项的数据结构。使用指针以顺序体例连接这些数据。虽说C语言实现的年夜家都应该很是熟悉了。今天用C++的模板化单链表,附带内置迭代器的简单实现。





链表有两种类型; 单链表和双链表。在单链表中,每个元素都包含一些数据和指向下一个元素的链接。另一方面,双向链表中的每个节点都包含一些数据,到下一个节点的链接和到前一个节点的链接。链表的元素称为节点。节点有两个字段,即data和next。数据字段包含存储在该特定节点中的数据。它不克不及只是一个变量。可能存在许多变量显现节点的数据部分。在接下来的字段包含下一个节点的地址。所以这是建立节点之间链接的处所。

无论链表中存在几多个节点,第一个节点称为listHeadNode,最后一个节点称为listTailNode。如果只建立了一个节点,那么它将被称为listHeadNode和listTailNode。





使用C ++实现链表

由于链表由节点组成,我们需要声明一个界说单个节点的结构。我们的结构应该至少有一个用于数据部分的变量和一个用于下一个节点的指针。在C ++中,我们的代码如下所示:





C++与C的区别
    界说自界说类型不需要 struct 关键字。C++结构体中允许成员函数存在以及构造函数。C++相同函数名允许存在,前提是参数类型不合。即C++函数重载思想。

使用C ++建立链表

现在,我们需要一个包含措置节点的函数的类。这个类应该有两个重要的指针,即头部和尾部。构造函数将使它们为NULL以避免任何垃圾值。以及万金油成员size成员。





现在,我们将为节点建立编写一个函数。建立节点的过程很是简单。我们需要一个节点类型的指针(我们界说),我们将在其数据字段中插入值。节点的下一个字段将被声明为NULL,因为它将是链接列表的最后一个节点。

现在,该函数将有一个很是特殊的情况,我们想知道如果链表仍然为空会产生什么?我们必须检查它。你还记得头指向第一个节点吗?这意味着如果头部等于NULL,那么我们可以判定链表是空的。





我之前也告诉过你,如果在链表中只有一个节点(我们要建立),那么它被称为listHeadNode和listTailNode。

如果已经建立了链接列表,那么我们将在链接列表的末尾插入此节点。我们知道最后一个节点叫做尾部。因此,我们将在尾节点旁边建立这个新建立的节点。

在链表末尾建立新节点有两个步调:
    将新建立的节点与尾节点链接。意味着将新节点的地址传递给尾节点的下一个指针。尾指针应始终指向最后一个节点。所以我们将使尾指针等于一个新节点。

用于链表各部分功能 C ++代码是这样的

push_back和push_front都放到list 类中的public属性下。

1.表尾插入





2.表头插入





3.打印数据





STL 迭代器实现

1.list类中添加一个iterator,即类中类

1.1 iterator 构成





1.2 C++重载运算符,实现迭代器赋值,打印数据,比较,以及自增









2.新增两个成员函数,初始化迭代器





主函数测试






我为你做了一个链表的完整项目。它执行上述所有功能。你可以私信我“代码”下载它,我希望你喜欢阅读这篇文章。请考虑分享一下。如果您有任何疑问,可以在评论中提问我。

更多内容回复查看:
游客,如果您要查看本帖隐藏内容请回复
C VC C++ MFC 汇编 函数 脚本 辅助 多开 注入 内存 插件 破解 基址 窗口 大漠 绑定 编程 交流 论坛 实例 源码
沙发
发表于 2018-8-8 08:04:00 | 只看该作者
转发了
C VC C++ MFC 汇编 函数 脚本 辅助 多开 注入 内存 插件 破解 基址 窗口 大漠 绑定 编程 交流 论坛 实例 源码

0

主题

1

帖子

12

金币

班长

Rank: 4

积分
3
板凳
发表于 2019-11-11 11:25:36 | 只看该作者
zan!!!
C VC C++ MFC 汇编 函数 脚本 辅助 多开 注入 内存 插件 破解 基址 窗口 大漠 绑定 编程 交流 论坛 实例 源码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

VC中文网 - 豫ICP备14012807号|小黑屋|联系客服|金币冲值|VC中文网

GMT+8, 2019-12-5 15:44 , Processed in 0.101563 second(s), 27 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表
pk10投注技巧分享