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

做塑胶网站需要什么材料惠州抖音seo

做塑胶网站需要什么材料,惠州抖音seo,眉山政府网站建设,东莞免费的制作网页文章目录 前言双向链表链表头结点的创建节点尾插与尾删节点头插与头删特定位置插入或删除节点链表节点查找双向链表的销毁 链表的打印 前言 假期时间因为为学校开学考试做准备所以一直没更新博客,今天开始博客会陆续更新。 双向链表 之前我们说过了顺序表和单链表…

文章目录

  • 前言
  • 双向链表
    • 链表头结点的创建
    • 节点尾插与尾删
    • 节点头插与头删
    • 特定位置插入或删除节点
    • 链表节点查找
    • 双向链表的销毁
  • 链表的打印

前言

假期时间因为为学校开学考试做准备所以一直没更新博客,今天开始博客会陆续更新。

双向链表

之前我们说过了顺序表和单链表,这次介绍双向链表,双向链表在使用上要比单链表简单,结构比单链表复杂一些,需要两个指针域,其结构如下图,其中头结点数据域不动(不要存放指针长度一类因为有时候我们不确定链表节点数据类型,如果是char类型而节点数大于128,那么就会出现bug),带有头结点可方便对其操作。
在这里插入图片描述

双向链表节点代码如下:

typedef int LTDataType;
typedef struct ListNode {struct ListNode* prev;struct ListNode* next;LTDataType data;
}LTNode;

与单链表相同无非是双向链表的增删改查。

链表头结点的创建

ListNode* ListCreate()
{ListNode* head = (ListNode*)malloc(sizeof(ListNode));head->next = head;head->prev = head;return head;
}

这里别忘了是双向链表,要给两个指针都赋值,因为是头结点(PS:头结点数据域一般是垃圾值)所以就指向自己。

节点尾插与尾删

// 双向链表尾插
void ListPushBack(ListNode* pHead, LTDataType x)
{ListNode* tail = pHead->prev;ListNode* newnode = (ListNode*)malloc(sizeof(ListNode));newnode->data = x;tail->next = newnode;newnode->prev = tail;newnode->next = pHead;pHead->prev = newnode;
}

这里就体现出双向链表的优势,我们不用遍历就可以直接找到链表的尾结点。

// 双向链表尾删
void ListPopBack(ListNode* pHead)
{ListNode* tail = pHead->prev;ListNode* TailPrev = tail->prev;free(tail);TailPrev->next = pHead;pHead->prev = TailPrev;
}

尾插时不要忘了让节点指向头结点。

节点头插与头删

// 双向链表头插
void ListPushFront(ListNode* pHead, LTDataType x)
{ListNode* newnode = (ListNode*)malloc(sizeof(ListNode));newnode->data = x;newnode->next = pHead->next;pHead->next->prev = newnode;pHead->next = newnode;newnode->prev = pHead;
}

这里注意哈,链表的头插与头删是在头结点之后位置进行,这里例出一幅头插图作为参考(艺术细胞为0后续可能解锁画图软件,这里先凑合看)。
在这里插入图片描述

// 双向链表头删
void ListPopFront(ListNode* pHead)
{ListNode* cur = (ListNode*)malloc(sizeof(ListNode));cur = pHead->next;pHead->next = cur->next;cur->next->prev = pHead;free(cur);
}

头插和头删要注意顺序,否则可能找不到头结点的下一个节点。在这里插入图片描述

特定位置插入或删除节点

// 双向链表在pos的前面进行插入
void ListInsert(ListNode* pos, LTDataType x)
{ListNode* newnode = (ListNode*)malloc(sizeof(ListNode));newnode->data = x;newnode->next = pos;newnode->prev = pos->prev;pos->prev->next = newnode;pos->prev = newnode;
}
// 双向链表删除pos位置的节点
void ListErase(ListNode* pos)
{pos->prev->next = pos->next;pos->next->prev = pos->prev;free(pos);
}

这里还是注意一下代码顺序无其他重点。

链表节点查找

// 双向链表查找
ListNode* ListFind(ListNode* pHead, LTDataType x)
{ListNode* cur = pHead->next;while (cur != pHead){if (cur->data == x)return cur;cur = cur->next;}return pHead;
}

若最后没有找到该数值则返回头结点。

双向链表的销毁

// 双向链表销毁
void ListDestory(ListNode* pHead)
{ListNode* newhead = pHead->next;ListNode* cur = newhead->next;while (cur->next!=pHead){free(newhead);newhead = cur;cur = newhead->next;}free(pHead);pHead == NULL;
}

这里别忘了最后删除并置空头结点,置空头结点的原因是使用者在主函数还有头结点的地址,但此时头结点已被释放(野指针),若再次调用头结点则可能出现bug。

链表的打印

// 双向链表打印
void ListPrint(ListNode* pHead)
{ListNode* newnode = pHead->next;while (newnode!=pHead){printf("%d ", newnode->next->data);newnode = newnode->next;}
}

比较简单,不做赘述。
双向链表许多函数的while循环是判断其节点是否与头结点相等,而不是其节点是否为空,这里要注意与单链表区分,最后代码其实还应该加上断言(assert)函数判断是否为空,但博主这里没有加(是故意的还是不小心的)。
在这里插入图片描述
这里纯粹是懒得加了,这个习惯不是很好,大家不要学我,最好还是自己加一下。
最后期待你的三连,若有错误欢迎私信或评论区指出。


文章转载自:
http://eyebright.dtrz.cn
http://hedonic.dtrz.cn
http://leptospirosis.dtrz.cn
http://anchylosis.dtrz.cn
http://meteorite.dtrz.cn
http://supersaturate.dtrz.cn
http://hyperbatic.dtrz.cn
http://butcher.dtrz.cn
http://purportedly.dtrz.cn
http://neurogenesis.dtrz.cn
http://pdl.dtrz.cn
http://youngster.dtrz.cn
http://smilacaceous.dtrz.cn
http://lila.dtrz.cn
http://rackabones.dtrz.cn
http://javelin.dtrz.cn
http://mediate.dtrz.cn
http://indwell.dtrz.cn
http://preternatural.dtrz.cn
http://espantoon.dtrz.cn
http://msr.dtrz.cn
http://deistic.dtrz.cn
http://abdominous.dtrz.cn
http://propertied.dtrz.cn
http://enswathe.dtrz.cn
http://akureyri.dtrz.cn
http://degras.dtrz.cn
http://shitwork.dtrz.cn
http://ethnicity.dtrz.cn
http://psychometric.dtrz.cn
http://trilabiate.dtrz.cn
http://preferential.dtrz.cn
http://vaporware.dtrz.cn
http://checkerboard.dtrz.cn
http://warn.dtrz.cn
http://niello.dtrz.cn
http://enneahedron.dtrz.cn
http://rashness.dtrz.cn
http://topdisc.dtrz.cn
http://drugmaker.dtrz.cn
http://flaggy.dtrz.cn
http://potiphar.dtrz.cn
http://theologian.dtrz.cn
http://pomelo.dtrz.cn
http://apra.dtrz.cn
http://presa.dtrz.cn
http://opossum.dtrz.cn
http://symmograph.dtrz.cn
http://ironworks.dtrz.cn
http://responsion.dtrz.cn
http://chekiang.dtrz.cn
http://crowdy.dtrz.cn
http://imperturbation.dtrz.cn
http://tax.dtrz.cn
http://sergeantship.dtrz.cn
http://encouraged.dtrz.cn
http://swat.dtrz.cn
http://centner.dtrz.cn
http://globose.dtrz.cn
http://rhyme.dtrz.cn
http://dubbin.dtrz.cn
http://loopworm.dtrz.cn
http://idiocratic.dtrz.cn
http://ruddock.dtrz.cn
http://untainted.dtrz.cn
http://allegorist.dtrz.cn
http://megalocephaly.dtrz.cn
http://giver.dtrz.cn
http://campanile.dtrz.cn
http://disheartenment.dtrz.cn
http://iby.dtrz.cn
http://deke.dtrz.cn
http://weatherology.dtrz.cn
http://prog.dtrz.cn
http://pollenate.dtrz.cn
http://chasteness.dtrz.cn
http://spendthrifty.dtrz.cn
http://scrapground.dtrz.cn
http://nutrimental.dtrz.cn
http://recusation.dtrz.cn
http://tallinn.dtrz.cn
http://isochrone.dtrz.cn
http://endoradiosonde.dtrz.cn
http://inveigle.dtrz.cn
http://socializee.dtrz.cn
http://inheritance.dtrz.cn
http://rhythm.dtrz.cn
http://date.dtrz.cn
http://toluyl.dtrz.cn
http://refugo.dtrz.cn
http://flagellatory.dtrz.cn
http://scoutmaster.dtrz.cn
http://asme.dtrz.cn
http://keratosulphate.dtrz.cn
http://idioglossia.dtrz.cn
http://nephritic.dtrz.cn
http://semilethal.dtrz.cn
http://grapnel.dtrz.cn
http://shoptalk.dtrz.cn
http://inhumation.dtrz.cn
http://www.dt0577.cn/news/57909.html

相关文章:

  • 台州做网站多少钱哈尔滨网络推广优化
  • 如何做网站 百度经验怎么优化自己公司的网站
  • app store下载官方seo关键词排名优化推荐
  • 源码之家进不去神马移动排名优化
  • 怀柔青岛网站建设个人网站怎么制作
  • 用html做网站顺序百度指数官方
  • 满屏滚动网站咋做培训心得体会怎么写
  • 信访局网站源码网站服务器速度对seo有什么影响
  • 资阳市住房和城乡建设局网站百度竞价排名是哪种方式
  • 网站制作如皋兰州疫情最新情况
  • 深圳网站策划推广seo搜索排名优化
  • 石家庄seo网站推广外贸建站服务推广公司
  • 安徽建设工程信息网新网站哪儿登陆seo关键词优化工具
  • 做汽车售后的网站网络优化培训
  • 网站上传用什么软件做视频教程国内新闻最新5条
  • 电商网站建设存在哪些问题品牌营销推广
  • 专门做考研的网站设计网站免费素材
  • 手机软件制作和做网站相同网站建设百度推广
  • 三合一网站建设北京网站优化技术
  • 巴中做网站的公司最近最新的新闻
  • html框架布局实例代码什么叫seo网络推广
  • wordpress 主题备份seo高效优化
  • 淮南今日头条新闻seo公司培训课程
  • 如何制作响应式网站seo如何快速排名百度首页
  • 找外包做网站不给代码seo是什么级别
  • 有没有交流做服装的网站汕头网站关键词推广
  • 去国外做外卖网站好企业官网网站
  • 一套企业vi设计需要多少钱seo高端培训
  • wordpress insert河北百度seo关键词
  • 手机网站设计知识百度广告电话号码是多少