#include<bits/stdc++.h>
using namespace std;struct node //链表节点的封装
{int val; //链表节点的数据域node *next; //链表的指针域node(int val):val(val),next(nullptr){}; //链表节点的初始化
};struct lt //链表的封装
{int Size = 0; //链表的长度
node *dh = new node(0);//链表的头结点int getval(int idx) //获取链表的第idx个节点的数据域
{if(idx>=Size||idx<0) {printf("查询错误\n");return 0x3f3f3f3f;}node *t = dh;while(idx--) t=t->next;return t->val;}void hadd(int v) //在头部插入链表节点
{node *a = new node(v);a->next = dh->next;dh->next = a;Size++;
}void dadd(int v) //在尾部插入链表节点
{node *a = new node(v);node *t = dh;while(t->next!=nullptr) t=t->next;t->next = a;Size++;
}void madd(int idx,int v)//在链表的第idx个节点后面插入节点
{if(idx>Size||idx<=0) {printf("插入错误\n"); return;}node *a = new node(v);node *t = dh;while(idx--) t=t->next;a->next=t->next;t->next=a;Size++;
}void delval(int idx) //删除第idx个节点
{if(idx>Size||idx<1) {printf("删除错误\n");return;  }node *t = dh;while(--idx) t=t->next;node *tp = t->next;   t->next=t->next->next;Size --;    delete tp;
}void printlt() //打印当前链表
{if(Size<=0) {printf("打印错误!---当前链表长度为零\n");return;}node *t = dh->next;while(t->next!=nullptr) printf("%d -> ",t->val),t = t->next;printf("%d\n",t->val);
}void delevery() //销毁整个链表
{if(Size<=0) return;int s=Size;for(int i=0;i<s-1;i++) delval(1);delete dh->next;Size--;
}};int main()
{lt a;for(int i=1;i<10;i++) a.hadd(i);a.printlt();printf("%d",a.Size);return 0;
}

简单的链表封装(类)相关推荐

  1. java简单的复数类_Java练习 SDUT-4303_简单的复数运算(类和对象)

    简单的复数运算(类和对象) Time Limit: 2000 ms Memory Limit: 65536 KiB Problem Description 设计一个类Complex,用于封装对复数的下 ...

  2. Flutter - dio 简单二次封装

    demo 地址: https://github.com/iotjin/jh_flutter_demo Flutter Dio简单二次封装和自定义Header Flutter Dio二次封装 Flutt ...

  3. java简单单向链表_【新手自白书】简单单项链表的实现(JAVA)

    复习一下简单单项链表的实现. 在动手写链表之前,需要思考链表是如何组成的,一般来说,一个简单的单项链表主要是由节点构成,由于链表的特性,头节点是一个十分重要的成员,所以,链表必须的成员是节点Node, ...

  4. SpringCloud(第 002 篇)简单电影微服务类(消费方,而提供方为用户微服务)

    2019独角兽企业重金招聘Python工程师标准>>> SpringCloud(第 002 篇)简单电影微服务类(消费方,而提供方为用户微服务) 一.大致介绍 微服务与微服务之间通过 ...

  5. 简单介绍 ghost封装过程

    简单介绍 ghost封装过程 图片: 描述:1 图片: 描述:2 图片: 描述:3 图片: 描述:4 图片: 描述:5 图片: 描述:8 图片: 描述:11 图片: 描述:12 图片: 描述:13 图 ...

  6. [C#] 简单的 Helper 封装 -- RegularExpressionHelper

    简单的 Helper 封装 -- RegularExpressionHelper 1 #region 2 3 using System.Text.RegularExpressions; 4 5 #en ...

  7. sqlite mysql php_PHP实现的简单操作SQLite数据库类与用法示例

    本文实例讲述了PHP实现的简单操作SQLite数据库类与用法.分享给大家供大家参考,具体如下: SQLite是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已 ...

  8. java I O类大全_Java I/O最简单的几个类

    今天把I/O中最简单的几个类整理了一下,之所以整理最简单的,是因为这样会让我更加快速方便的理顺这里面的东西,以前每一次用的时候都要先百度一下,觉得很烦. 首先需要先看一下Read,Write和Stre ...

  9. 简单的无限分级类 category, menus, jquery tree view

    1. 简单的无限分级类 category, menus <?phpmysql_connect("localhost","root","root& ...

最新文章

  1. 传智播客C/C++各种开发环境搭建视频工具文档免费教程
  2. quick-cocos2dx-2.2.4环境搭建
  3. 随笔--2011.12.21
  4. java commons.util_Java — CommonUtil
  5. 9 个基于JavaScript 和 CSS 的 Web 图表框架
  6. 浅析路径遍历漏洞 文/饭
  7. C 语言笔记: 链表节点实现技巧--struct的妙用
  8. 【jQuery笔记】新浪微博案例笔记
  9. 计算机相关报道的观后感,《新闻报道》观后感800字
  10. DBCC命令2:状态查询
  11. java判断名字是否为张三_用java代码写一个判断名字是不是以K或T开头的?
  12. libevent 接收TCP连接
  13. Fortran 95 函数、文件
  14. c语言中的空字符常量,c习题编译时出现空的字符常量,怎么修改?
  15. 用友 NCC 1909 授权许可+无密码登录方法
  16. linux mysql 光盘安装教程_Linux上mysql安装详细教程
  17. 应用数理统计之概率论复习与补充
  18. Jetty开发的相关
  19. 基于微信小程序的快递取件及上门服务——计算机毕业设计
  20. 2020电赛经验总结+E题解题思路

热门文章

  1. [递推] 51Nod1383 整数分解为2的幂
  2. 用双向宽搜来提高搜索效率
  3. discuz X3.2最新20141225安装包uc_server不能登陆问题(包括升级后)
  4. CSS单位px、em、rem及它们之间的换算关系
  5. QtXlsx 读写 excel
  6. AI在招聘领域的这些应用,你都知道几个?
  7. 【苹果cms V10教程】资源采集站如何设置定时采集详细教程讲解
  8. 9、使用容器数据卷部署MySQL
  9. 基于windows7的usb多点触控设备
  10. 三叶草新冠候选疫苗在全球2/3期临床试验结果显示对德尔塔变异株的保护效力为79%...