当前位置: 首页 > wzjs >正文

泰安口碑好的企业建站公司秒收录关键词代发

泰安口碑好的企业建站公司,秒收录关键词代发,深圳建设局官网站,建设公司自己的网站链表 1.单链表1.1概念与结构1.1.1结点1.1.2链表的性质1.1.3链表的打印 1.2实现单链表1.3链表的分类 2.双向链表2.1概念与结构2.2实现双链表 3.顺序表与链表的分析 1.单链表 1.1概念与结构 概念:链表是⼀种物理存储结构上非连续、非顺序的存储结构,数据…

链表

  • 1.单链表
    • 1.1概念与结构
      • 1.1.1结点
      • 1.1.2链表的性质
      • 1.1.3链表的打印
    • 1.2实现单链表
    • 1.3链表的分类
  • 2.双向链表
    • 2.1概念与结构
    • 2.2实现双链表
  • 3.顺序表与链表的分析

1.单链表

1.1概念与结构

概念:链表是⼀种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。
在这里插入图片描述

1.1.1结点

结点的组成主要有两个部分:当前结点要保存的数据和保存下⼀个结点的地址(指针变量)。

1.1.2链表的性质

  • 链式机构在逻辑上是连续的,在物理结构上不⼀定连续。
  • 结点⼀般是从堆上申请的。
  • 从堆上申请来的空间,每次申请的空间可能连续,可能不连续。
struct SlistNode
{int date;                //结点数据struct SlistNode* next; //指针变量用保存下一个结点的地址
};

1.1.3链表的打印

给定的链表的结构,实现链表从头到尾的打印

void SLTPrint(SLTNode* phead)
{SLTNode* pcur = phead;while (pcur){printf("%d", pcur->data);pcur = pcur->next;}printf("\n");
}

1.2实现单链表

typedef int SLTDataType;
typedef struct SListNode
{SLTDataType data; //结点数据struct SListNode* next; //指针保存下⼀个结点的地址
}SLTNode;
void SLTPrint(SLTNode* phead);//头部插⼊删除/尾部插⼊删除
void SLTPushBack(SLTNode** pphead, SLTDataType x);
void SLTPushFront(SLTNode** pphead, SLTDataType x);
void SLTPopBack(SLTNode** pphead);
void SLTPopFront(SLTNode** pphead);//查找
SLTNode* SLTFind(SLTNode* phead, SLTDataType x);
//在指定位置之前插⼊数据
void SLTInsert(SLTNode** pphead, SLTNode* pos, SLTDataType x);
//删除pos结点
void SLTErase(SLTNode** pphead, SLTNode* pos);
//在指定位置之后插⼊数据
void SLTInsertAfter(SLTNode* pos, SLTDataType x);
//删除pos之后的结点
void SLTEraseAfter(SLTNode* pos);
//销毁链表
void SListDestroy(SLTNode** pphead);

1.3链表的分类

链表的结构非常多样,以下情况组合起来就有8种链表结构:

  • 单向或者双向
  • 带头或不带头
  • 循环或不循环
    (2 x 2 x 2)=8种

2.双向链表

2.1概念与结构

在这里插入图片描述

2.2实现双链表

typedef int LTDataType;
typedef struct ListNode
{struct ListNode* next; //指针保存下⼀个结点的地址struct ListNode* prev; //指针保存前⼀个结点的地址LTDataType data;
}LTNode;
//void LTInit(LTNode** pphead);
LTNode* LTInit();
void LTDestroy(LTNode* phead);
void LTPrint(LTNode* phead);
bool LTEmpty(LTNode* phead);
void LTPushBack(LTNode* phead, LTDataType x);
void LTPopBack(LTNode* phead);
void LTPushFront(LTNode* phead, LTDataType x);
void LTPopFront(LTNode* phead);
//在pos位置之后插⼊数据
void LTInsert(LTNode* pos, LTDataType x);
void LTErase(LTNode* pos);
LTNode* LTFind(LTNode* phead, LTDataType x);

3.顺序表与链表的分析

在这里插入图片描述

http://www.dtcms.com/wzjs/378398.html

相关文章:

  • 赚钱网站平台百度关键词优化大师
  • 网页版代码编辑器合肥网站seo推广
  • 炒币做合约哪个网站最好搜索引擎主要包括三个部分
  • 舟山网站建设优化丈哥seo博客
  • 职场社交网站怎么做网站设计费用
  • 南京做网站建设的公司排名各大网址收录查询
  • 辽宁省城乡建设网站seo视频教学网站
  • 自己做视频网站资源从哪里来广西南宁做网站的公司
  • 新疆工程建设云网站百度网站seo设计方案案例
  • 洛阳做网站公司电话360收录提交入口
  • 苏州网页开发公司网络营销策略优化
  • 免费做旅游海报的网站网站排名分析
  • 做黄色网站要学些什么南京网页搜索排名提升
  • 哈尔滨网站制作开发报价友情链接交换源码
  • 新手学做网站 视频百度网盘友情链接又称
  • 做网站每个月可以赚多少网站运营维护的基本工作
  • 公司网站建设案例教程外贸平台有哪些
  • 龙岗中心城有学网站建设seo短视频网页入口营销
  • 一个网站绑定两个域名百度精准推广
  • 学做实体店网站移动端关键词排名优化
  • 海南网站制作seo关键词排名优化要多少钱
  • wordpress 验证码访问上海单个关键词优化
  • 外发加工网可信度整站优化提升排名
  • 贵州建设厅网站官网关于搜索引擎的搜索技巧
  • 深圳网站设计网站制作手机百度识图网页版入口
  • 网站建设合同 附件企业网站定制开发
  • 网站建设公司怎么宣传app开发软件
  • 专门做影评的网站网站建设及网络推广
  • 长春建网站公司seo知名公司
  • 用dw做网站怎么添加水平线湘潭seo公司