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

网站上地图怎么做的市场推广计划怎么写

网站上地图怎么做的,市场推广计划怎么写,设计公司企业想法,怎样建网站教程链表的分类 链表的结构⾮常多样,以下情况组合起来就有8种(2 x 2 x 2)链表结构: 虽然有这么多的链表的结构,但是我们实际中最常⽤还是两种结构:单链表和双向带头循环链表 1.⽆头单向⾮循环链表&#xff1a…

链表的分类

链表的结构⾮常多样,以下情况组合起来就有8种(2 x 2 x 2)链表结构:

虽然有这么多的链表的结构,但是我们实际中最常⽤还是两种结构:单链表和双向带头循环链表

1.⽆头单向⾮循环链表:结构简单,⼀般不会单独⽤来存数据。实际中更多是作为其他数据结构的⼦结构,如哈希表、图的邻接表等等。

2.带头双向循环链表:结构最复杂,⼀般⽤在单独存储数据。实际中使⽤的链表数据结构,都是带头双向循环链表。另外这个结构虽然结构复杂,但是使⽤代码实现以后会发现结构会带来很多优势,实现反⽽简单了。

双向链表

概念与结构

注意:这⾥的“带头”跟前⾯我们说的“头结点”是两个概念,实际前⾯的在单链表阶段称呼不严谨,但是为了同学们更好的理解就直接称为单链表的头结点。

带头链表⾥的头结点,实际为“哨兵位”,哨兵位结点不存储任何有效元素,只是站在这⾥“放哨 的”

链表的实现

首先我们来看看它的具体声明,用一个头文件来简述:

//定义双向链表节点的结构
typedef int LTDataType;
typedef struct ListNode
{LTDataType data;struct ListNode* next;struct ListNode* prev;
}LTNode;//为了保持接口的一致性,优化接口都为一级指针
//初始化
//void LTInit(LTNode** pphead);
LTNode* LTInit();//销毁
void LTDesTroy(LTNode** pphead);
void LTDesTroy2(LTNode* phead);//传一级,需要手动将plist置为NULLvoid LTPrint(LTNode* phead);//插入
//第一个参传一级还是二级,要看pphead指向的节点会不会发生改变
//如果发生改变,那么pphead的改变要影响实参,传二级
//如何不发生改变,pphead不会影响实参,传一级
void LTPushBack(LTNode* phead, LTDataType x);
void LTPushFront(LTNode* phead, LTDataType x);//删除
void LTPopBack(LTNode* phead);
void LTPopFront(LTNode* phead);bool LTEmpty(LTNode* phead);LTNode* LTFind(LTNode* phead, LTDataType x);
//在pos位置之后插入节点
void LTInsert(LTNode* pos, LTDataType x);
//删除指定位置节点
void LTErase(LTNode* pos);

接下来我们创建一个List.c文件来一一实现上述声明:

新结点的创建:

LTNode* LTBuyNode(LTDataType x)
{LTNode* newnode = (LTNode*)malloc(sizeof(LTNode));if (newnode == NULL){perror("malloc fail!");exit(1);}newnode->data = x;//prev nextnewnode->next = newnode->prev = newnode;return newnode;
}

结点的初始化:

//初始化
//void LTInit(LTNode** pphead)
//{
//	//创建一个头结点(哨兵位)
//	*pphead = LTBuyNode(-1);
//}
LTNode* LTInit()
{LTNode* phead = LTBuyNode(-1);return phead;
}

尾插与头插:

//尾插
void LTPushBack(LTNode* phead, LTDataType x)
{assert(phead);LTNode* newnode = LTBuyNode(x);//phead phead->prev newnodenewnode->next = phead;newnode->prev = phead->prev;phead->prev->next = newnode;phead->prev = newnode;
}
//头插
void LTPushFront(LTNode* phead, LTDataType x)
{assert(phead);LTNode* newnode = LTBuyNode(x);//phead newnode  phead->next(d1)newnode->next = phead->next;newnode->prev = phead;phead->next->prev = newnode;phead->next = newnode;
}

打印与置空:

void LTPrint(LTNode* phead)
{LTNode* pcur = phead->next;while (pcur != phead){printf("%d->", pcur->data);pcur = pcur->next;}printf("\n");
}bool LTEmpty(LTNode* phead)
{assert(phead);return phead->next == phead;
}

尾删与头删:

尾删示意图:

头删示意图:

//尾删
void LTPopBack(LTNode* phead)
{assert(phead);assert(!LTEmpty(phead));//phead  prev(del->prev)  del(phead->prev) LTNode* del = phead->prev;LTNode* prev = del->prev;prev->next = phead;phead->prev = prev;free(del);del = NULL;
}
//头删
void LTPopFront(LTNode* phead)
{assert(phead);assert(!LTEmpty(phead));//phead  del(phead->next)  del->nextLTNode* del = phead->next;del->next->prev = phead;phead->next = del->next;free(del);del = NULL;
}

查找指定结点:

LTNode* LTFind(LTNode* phead, LTDataType x)
{assert(phead);LTNode* pcur = phead->next;while (pcur != phead){if (pcur->data == x){return pcur;}pcur = pcur->next;}return NULL;
}

在指定结点之后插入结点:

示意图:

//在pos位置之后插入节点
void LTInsert(LTNode* pos, LTDataType x)
{assert(pos);LTNode* newnode = LTBuyNode(x);//pos newnode pos->nextnewnode->next = pos->next;newnode->prev = pos;pos->next->prev = newnode;pos->next = newnode;
}

删除指定位置结点:

示意图:(本处就d2、d3两处结点分别讨论删除后的next与prev指针指向)

//删除指定位置节点
void LTErase(LTNode* pos)
{assert(pos);// pos->prev  pos   pos->nextpos->prev->next = pos->next;pos->next->prev = pos->prev;free(pos);pos = NULL;
}

销毁链表:

示意图:

//销毁
void LTDesTroy(LTNode** pphead)
{assert(pphead && *pphead);LTNode* pcur = (*pphead)->next;while (pcur != *pphead){LTNode* Next = pcur->next;free(pcur);pcur = Next;}//销毁哨兵位结点free(*pphead);*pphead = NULL;pcur = NULL;
}
//优化代码
void LTDesTroy2(LTNode* phead)
{assert(phead);LTNode* pcur = phead->next;while (pcur != phead){LTNode* Next = pcur->next;free(pcur);pcur = Next;}free(phead);phead = pcur = NULL;
}

总结

学完了顺序表与链表,相信大家或多或少对线性表有了自己的看法,下面我们来就顺序表与链表做一个简单的比较:

总的来说,顺序表与链表没有优劣之分,存在即合理。它们在解决我们不同问题的过程中都有着重要的作用。以上便是本期的分享,感谢您的观看!


文章转载自:
http://www.morning.xdjwh.cn.gov.cn.xdjwh.cn
http://www.morning.hbdqf.cn.gov.cn.hbdqf.cn
http://www.morning.trkl.cn.gov.cn.trkl.cn
http://www.morning.ghxzd.cn.gov.cn.ghxzd.cn
http://www.morning.gnjkn.cn.gov.cn.gnjkn.cn
http://www.morning.wjlrw.cn.gov.cn.wjlrw.cn
http://www.morning.yfstt.cn.gov.cn.yfstt.cn
http://www.morning.mxhgy.cn.gov.cn.mxhgy.cn
http://www.morning.hqqpy.cn.gov.cn.hqqpy.cn
http://www.morning.qtwd.cn.gov.cn.qtwd.cn
http://www.morning.nyqzz.cn.gov.cn.nyqzz.cn
http://www.morning.kwfnt.cn.gov.cn.kwfnt.cn
http://www.morning.mhdwp.cn.gov.cn.mhdwp.cn
http://www.morning.lhldx.cn.gov.cn.lhldx.cn
http://www.morning.drytb.cn.gov.cn.drytb.cn
http://www.morning.xqxlb.cn.gov.cn.xqxlb.cn
http://www.morning.lmhcy.cn.gov.cn.lmhcy.cn
http://www.morning.tplht.cn.gov.cn.tplht.cn
http://www.morning.jstggt.cn.gov.cn.jstggt.cn
http://www.morning.wcqxj.cn.gov.cn.wcqxj.cn
http://www.morning.llyqm.cn.gov.cn.llyqm.cn
http://www.morning.xwlmr.cn.gov.cn.xwlmr.cn
http://www.morning.kyytt.cn.gov.cn.kyytt.cn
http://www.morning.lwmxk.cn.gov.cn.lwmxk.cn
http://www.morning.qqbw.cn.gov.cn.qqbw.cn
http://www.morning.rlksq.cn.gov.cn.rlksq.cn
http://www.morning.gxqpm.cn.gov.cn.gxqpm.cn
http://www.morning.zlhzd.cn.gov.cn.zlhzd.cn
http://www.morning.kjcfz.cn.gov.cn.kjcfz.cn
http://www.morning.fbzdn.cn.gov.cn.fbzdn.cn
http://www.morning.qhrsy.cn.gov.cn.qhrsy.cn
http://www.morning.lnbcg.cn.gov.cn.lnbcg.cn
http://www.morning.yrfxb.cn.gov.cn.yrfxb.cn
http://www.morning.gryzk.cn.gov.cn.gryzk.cn
http://www.morning.pcgmw.cn.gov.cn.pcgmw.cn
http://www.morning.ntgrn.cn.gov.cn.ntgrn.cn
http://www.morning.qnpyz.cn.gov.cn.qnpyz.cn
http://www.morning.xltwg.cn.gov.cn.xltwg.cn
http://www.morning.pzqnj.cn.gov.cn.pzqnj.cn
http://www.morning.rzrbw.cn.gov.cn.rzrbw.cn
http://www.morning.bsrcr.cn.gov.cn.bsrcr.cn
http://www.morning.bfwk.cn.gov.cn.bfwk.cn
http://www.morning.jpbky.cn.gov.cn.jpbky.cn
http://www.morning.kmjbs.cn.gov.cn.kmjbs.cn
http://www.morning.qbfkz.cn.gov.cn.qbfkz.cn
http://www.morning.jbkcs.cn.gov.cn.jbkcs.cn
http://www.morning.kpzrf.cn.gov.cn.kpzrf.cn
http://www.morning.fesiy.com.gov.cn.fesiy.com
http://www.morning.jpydf.cn.gov.cn.jpydf.cn
http://www.morning.xcxj.cn.gov.cn.xcxj.cn
http://www.morning.kmlmf.cn.gov.cn.kmlmf.cn
http://www.morning.bpmfl.cn.gov.cn.bpmfl.cn
http://www.morning.mwkwg.cn.gov.cn.mwkwg.cn
http://www.morning.sdecsd.cn.gov.cn.sdecsd.cn
http://www.morning.yrgb.cn.gov.cn.yrgb.cn
http://www.morning.nwynx.cn.gov.cn.nwynx.cn
http://www.morning.fqtzn.cn.gov.cn.fqtzn.cn
http://www.morning.fhlfp.cn.gov.cn.fhlfp.cn
http://www.morning.wqcbr.cn.gov.cn.wqcbr.cn
http://www.morning.kkjhj.cn.gov.cn.kkjhj.cn
http://www.morning.gjtdp.cn.gov.cn.gjtdp.cn
http://www.morning.c7495.cn.gov.cn.c7495.cn
http://www.morning.jpmcb.cn.gov.cn.jpmcb.cn
http://www.morning.zrgdd.cn.gov.cn.zrgdd.cn
http://www.morning.zzhqs.cn.gov.cn.zzhqs.cn
http://www.morning.qblcm.cn.gov.cn.qblcm.cn
http://www.morning.hjssh.cn.gov.cn.hjssh.cn
http://www.morning.plpqf.cn.gov.cn.plpqf.cn
http://www.morning.drytb.cn.gov.cn.drytb.cn
http://www.morning.hlxpz.cn.gov.cn.hlxpz.cn
http://www.morning.brxzt.cn.gov.cn.brxzt.cn
http://www.morning.smrty.cn.gov.cn.smrty.cn
http://www.morning.ybgpk.cn.gov.cn.ybgpk.cn
http://www.morning.dnqpq.cn.gov.cn.dnqpq.cn
http://www.morning.crsnb.cn.gov.cn.crsnb.cn
http://www.morning.smpb.cn.gov.cn.smpb.cn
http://www.morning.hxpff.cn.gov.cn.hxpff.cn
http://www.morning.fysdt.cn.gov.cn.fysdt.cn
http://www.morning.lmrcq.cn.gov.cn.lmrcq.cn
http://www.morning.qhfdl.cn.gov.cn.qhfdl.cn
http://www.tj-hxxt.cn/news/148.html

相关文章:

  • 坂田做网站建设好的网络公司湖南网站制作公司
  • 大型网站团队人数今日nba比赛直播
  • 男女做恩爱视频网站整站优化工具
  • 武汉做网站公司有哪些网页设计与制作模板
  • 世界500强企业排名2020网站seo置顶 乐云践新专家
  • 泰安市网站建设如何做好产品网络推广
  • 唐山市城市建设规划局网站seo人人网
  • 怎么做网约车短视频seo
  • 阿里小说网站模板seo网站诊断方案
  • 福建省品牌建设促进会网站seo如何提高排名
  • 专业做网站厂家网络营销常见术语
  • 用什么软件做网站好建网站公司
  • 判断网站是否被k查看关键词被搜索排名的软件
  • 建设公司网站需要准备哪些材料推广引流
  • 网站建设需求流程图windows优化大师要会员
  • 吉林省建设银行网站手机网站百度关键词排名查询
  • 天津网站建设电话网络舆情
  • 融资网站建设seo优化标题
  • 判断网站 是否用wordpress 建站seo顾问阿亮博客
  • 学校官方网站网站seo提升
  • 做喷绘可以在那个网站找2023年新闻热点事件
  • 网站建设维护推广合同软文营销写作技巧有哪些?
  • 临沂手机网站制作手机怎么制作网页
  • wordpress动漫网站模板100大看免费行情的软件
  • 网站建设和维护方案百度seo查询收录查询
  • 做的比较唯美的网站网推软件有哪些
  • 荣胜网络 宁波网站建设网站制作公司官网
  • 做公司网站的专业公司深圳地推的方法和技巧
  • wordpress academyseo博客网址
  • 动态网站如何维护软文营销的定义