c 链表类模板的实现(清华大学出版社 c 语言程序设计第4版)(课本)(C linked list template implementation (Tsinghua University press c language programming fourth edition) (Textbook)).docVIP
- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c 链表类模板的实现(清华大学出版社 c 语言程序设计第4版)(课本)(C linked list template implementation (Tsinghua University press c language programming fourth edition) (Textbook))
c++链表类模板的实现(清华大学出版社 c++语言程序设计第4版)(课本)(C++ linked list template implementation (Tsinghua University press c++ language programming fourth edition) (Textbook))
// h
#则node_h /结点类模板
#定义node_h
模板
类/新添链表;
模板类:/ /新添
类节点
{
私人:
结T *下;/ /指向后继指针的结点
公共:
T /数据域数据;
节点(const T的数据,节点T *下= 0);//构造函数
insertAfter(无效节点T * p);//在本结点之后插入一个同类的结点P
结T * deleteafter();/ /删除本结点的后继结点,并返回其地址
结T * nextnode();/ /获取后继结点的地址
const节点T * nextnode() const;//获取后继结点的地址
朋友LinkedList T;/ /因操作需要将LinkedList T作为节点的友元(新添)
};
模板
节点:节点(常量T和数据,节点下一个/ 0):数据(数据),下一个(下一个)
{
}
模板
结T *结T::nextnode()
{
然后返回;
}
模板
const节点T *结T::nextnode() const
{
然后返回;
}
模板
无效节点T::insertAfter(节点T * P)
{
下一个;
下一个= p;
}
模板
结T *结T::deleteafter()
{
结T * tempptr =未来;
如果(下= 0)返回0;
未来= tempptr -下;
返回tempptr;
}
# endif
H /链表。
#则linkedlist_h
#定义linkedlist_h
#包含iostream
#包括“节点。”
模板
LinkedList类
{
私人:
结T *前*后;/ /表头和表尾指针
节点prevptr T *,* currptr;/ /记录表当前遍历位置的指针,由插入和删除操作更新
数组的大小;/ /表中的元素个数
国际地位;/ /当前元素在表中的位置序号,由函数复位使用
/ /函数成员:
/ /生成新结点,数据域为项目,指针域为ptrnext
结T * NextNode(const T项目节点T * ptrnext = null);
其中无效(节点T * p);//释放结点(未用)
/ /将链表L复制到当前表(假设当前表为空)
/ /被复制构造函数和”运算符=“调用
复印无效(LinkedList T L);/ /(因实现需要,无法使用(LinkedList T const L)作为形参表)
公共:
无效print();/ /打印链表类里的数据及其数目(新添)
linkedlist();
链表(LinkedList T L);/ /复制构造函数(因实现需要,无法使用(LinkedList T const L)作为形参表)
~ linkedlist();
LinkedList T 运算符=(LinkedList T L);/ /重载赋值运算符(因实现需要,无法使用(LinkedList T const L)作为形参表)
getsize() const int;//返回链表中的元素个数
布尔isempty() const;//链表是否为空(未用)
无效复位(int pos = 0);//初始化游标的位置(第一位数的位置设为0)
next() /使游标移动到下一个结点无效;
布尔endoflist() const;//游标是否到了链尾
在当前位置(void);/ /返回游标当前的位置
无效insertfront(const T项目);/ /在表头插入结点
无效insertrear(const T项目);/ /在表尾添加结点
无效insertat(const T项目);/ /在当前结点之前插入结点
insertAfter(const T无效项目);/ /在当前结点之后插入结点
T deletefront();/ /删除头结点
deletecurrent() /删除当前结点无效;
T data();/ /返回对当前结点成员数据的引用
const T data() const;//返回对当前结点成员数据的常引用
/ /清空链表:释放所有结点的内存空间。被析构函数和”运算符=“调用
无效clear();
};
模板
结T * LinkedList T::下一个节点(const T项目节点T * ptrnext)/生成新结点,数据域为项目,指针域为ptrnext
{
结T * tempptr =新节点T(项目,ptrnext);
返
您可能关注的文档
- 2017年行政执法资格考试试题库_全面.doc
- 2017年重庆市中考物理试题B卷(含答案).doc
- 2017年重庆市中考语文试题及答案.doc.doc
- 2017年高考英语试题解读及备考启示.ppt
- 2017年鸡年公司年会主持词串词以及活动流程.docx
- 2012年初中数学知识点总结.doc
- 2015-2016学年新北师大版小学二年级上册数学期中考试卷.doc
- 2017新部编人教版 一年级上册语文《d_t_n_l》获奖课件 优教课件ppt.pptx
- 2017新部编人教版一年级上册语文《an_en_in_un_ün》(第二课时)获奖课件优教课件ppt.pptx
- 2017暑假大学生社会实践报告范文3000字.doc
- CorelDraw_x4_快捷键大全.docx
- CorelDRAW_X4平面设计基础教程(共10个)-第2章图形的绘制_1521081312.ppt.ppt
- CorelDRAW_X4平面设计基础教程(共10个)-第5章文本的输....ppt.ppt
- db2[初三语文]《台阶》ppt课件1.ppt
- DOC-2012新版北师大版一年级数学上册全册教案.doc
- DOC-2015-2016外研社初中英语八年级英语上册全套模块测试题(六)_图文.doc
- DOC-2016银行客户经理上半年工作总结.doc
- DOC-北师大小学数学五年级下册第一单元测试题.doc
- DOC-各岗位绩效考核KPI指标(公司实际运作版)_图文.doc
- DOC-教科版六年级上册科学期末考试试卷及答案.doc
文档评论(0)