不带头节点的单链表的实现完成(The implementation of single chain tables without leading nodes is completed).docVIP

不带头节点的单链表的实现完成(The implementation of single chain tables without leading nodes is completed).doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
不带头节点的单链表的实现完成(The implementation of single chain tables without leading nodes is completed)

不带头节点的单链表的实现完成(The implementation of single chain tables without leading nodes is completed) #包括 iostream。” 模板类 课堂环节 { 公共: T数据; 链接T *下; 链接(const T信息,链接T * nextvalue = null){ 数据信息; 未来= nextvalue; } 链接(const环节T * nextvalue = null){ 未来= nextvalue; } }; 模板类 类lnklist { 私人: 链接T *头*尾巴; 链接T * SETPOS(const int p); 公共: lnklist(); ~ lnklist(); 布尔是空的();//检查链表是否为空 清空();//将链表存储的内容清除,成为空表 无效的打印(); int length();//返回此链表的当前实际长度 布尔加(const T值);/ /在表尾添加一个元素价值,表的长度增1 插入(const int p,const T值);/ /在位置P上插入一个元素价值,表的长度增1 为消除(const int p);//删除位置P上的元素,表的长度减1 布尔getValue(const int p,t值);/ /返回位置P的元素值 布尔率(int P,const T值);/ /查找值为价值的元素,并返回第1次出现的位置 }; 模板类 链接T * lnklist T::SETPOS(int i) { int数= 0; 链接T×P =头; 而(P!= null 计数<我) { P = P - 下; 计数+ +; } 返回p; } 模板类 lnklist T::lnklist(){ 头= =零尾; } 模板类 lnklist T::~ lnklist(){ 链接T * TMP; 而(头!= null){ TMP =头; 头=头-下; 删除TMP; } } 模板类 无效lnklist T::print() { 链接T×P =头; 而(P!= null) { cout P -数据”; P = P - 下; } } 模板类 布尔lnklist T::是空的(){ 如果(头= = null) 返回true; } 模板类 无效lnklist T::明确() { 链接T×P =头,* TMP; 而(P!= null) { TMP = P; P = P - 下; 删除TMP; } } 模板类 国际lnklist T::长度(){ int数= 0; 链接T×P =头; 而(P!= null){ P = P - 下; 计数+ +; } 返回计数; } 模板类 布尔lnklist T::附加(const T值) { 链接T * P; P =新链接T(值为空); 如果(头= = null) 头=尾= P; 其他的 { 尾-下= P; 尾= P; } 返回true; } 模板类 布尔lnklist T::插入(const int i,const T值){ 链接T * P×Q; 如果(我= = 0){ Q =新链接T(价值、头); 头= Q; 如果(尾= = null) 尾= Q; 返回true; } 如果((P = SETPOS(I - 1))= = null){ cout “插入点是非法的” endl; 返回false; } Q =新链接T(价值, P 下); P 下= Q; 如果(P = =尾)尾= Q; 返回true; } 模板类 布尔lnklist T::删除(const int i) { 链接T * P×Q; 如果(头= = null){ cout “没有元素删除” endl; 返回false; } 如果(我= = 0){ Q =头; 头=头-下; 如果(尾= = Q)尾= null; 删除Q; 返回true; } 如果((P = SETPOS(i-1))= = null | | P = =尾){ cout “删除无效的位置!\n“; 返回false; } Q = P 下; 如果(Q = =尾)尾= P; P 下= Q 下; 删除Q; 返回true; } 模板类 布尔lnklist T::getValue(const int p,t值){ 链接T×Q; Q = SETPOS(P-1); 如果(Q = = null) 返回false; 价值= Q -数据; 返回true; } 模板类 布尔lnklist T::率(int P,const T值) { int数= 0; 链接T * TMP =头; 而(TMP -数据!=价值) { 计数+ +; TMP = TMP -下; } P =计数; 返回true; } 无效main() { lnklist

您可能关注的文档

文档评论(0)

jgx3536 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档