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

济南公司网站建设公司排名钢结构

济南公司网站建设公司排名,钢结构,seo服务内容,施工企业安全培训心得体会100字向现有链表中插入结点,根据插入位置的不同,可分为以下 3 种情况: 插入到链表的头部,作为新的链表中第一个存有数据的结点(又称为”首元结点”);插入到链表中某两个结点之间的位置;插…

 向现有链表中插入结点,根据插入位置的不同,可分为以下 3 种情况:

  1. 插入到链表的头部,作为新的链表中第一个存有数据的结点(又称为”首元结点”);
  2. 插入到链表中某两个结点之间的位置;
  3. 插入到链表的最末端的位置;

使用头插法和尾插法可分别解决第 1 和第 3 种情况,但是无法解决第 2 种情况,所以本节给大家一段通用代码,可有效解决所有链表结点插入的问题。(分为节点前和节点后)

节点后插入

节点后插入分为以下几个步骤:

1.通过查找代码找到指定节点;

2.定义一个新节点,将指定节点的下一个节点地址赋给新节点

3.将新节点地址赋给指定节点的下一个节点

定义一个查找函数

int searchLink(struct Test *head,int Data)
{while(head != NULL){if(head->Data == Data)//输入的节点值刚好等于链表节点值{return 1;}head = head->next;}return 0;
}

定义一个节点后插入函数

int insertFronBehind(struct Test *head,int Data,struct Test *new)
{struct Test *p = head;while(p != NULL){if(p->Data == Data){new->next = p->next;//指定节点的下一个节点地址赋给新节点p->next = new;//将新节点地址赋给指定节点的下一个节点return 1;}p=p->next;}return 0;
}

主函数中创建一个新节点并调用以上两个函数

        struct Test new={99,NULL};printLink(&t1);puts("after insert behind");insertFronBehind(&t1,3,&new);printLink(&t1);

这里是在原链表第三个节点处插入一个99,编译结果如下


节点前插入

节点前插入分为以下两种情况:

第一种是链表头插入,则链表头插入的地址改变了整个链表的地址,所以链表头插入的地址可以作为整个链表首地址,同时往下延申即可,就可以得到链表中的所有数据;

第二种是链表中插入,链表中插入的步骤是:

1.若p节点的下一个节点数据等于要插入的节点数据,则将插入的节点地址赋给新节点

2.将p节点地址赋新节点

定义一个查找函数

int searchLink(struct Test *head,int Data)
{while(head != NULL){if(head->Data == Data)//输入的节点值刚好等于链表节点值{return 1;}head = head->next;}return 0;
}

定义一个节点前插入函数(分两种情况)

struct Test* insertFromfor(struct Test *head,int Data,struct Test *new)
{struct Test *p = head;if(p->Data == Data)//p的地址刚好的输入的地址,即链表头插入{new->next = head;return new;}while(p->next != NULL)//p的下一个不为空指针,如果为空指针就跳出循环,判断是不是在链表头{if(p->next->Data == Data)//p的下一个节点数据等于插入节点数据{new->next=p->next;//p下一个节点地址给新节点p->next=new;//新节点地址给pprintf("Insert ok\n");return head;}p=p->next;}printf("No this data%d\n",Data);return head;
}

主函数创建一个新节点调用上面两个函数

        struct Test new1={111,NULL};struct Test *head=NULL;head = &t1;//若为链表头,则需要作为链表首地址;若不为链表头,就从t1正常输出printLink(head);head=insertFromfor(head,3,&new);printLink(head);

这里是在3前面插入一个111,编译结果如下:

http://www.yayakq.cn/news/784486/

相关文章:

  • 网站建设防火墙级别要求网站建设用哪种语言
  • 榆林国贸网站建设搜索引擎优化的工作原理
  • 基础很差去公司做网站怎样在拼多多平台上卖货
  • 网站定制案例微安电力做动图为所欲为的网站
  • 一个做智能化的网站有哪些深圳专业网络营销外包公司
  • 网站的seo优化怎么做班级的网站设计怎么做
  • 室内设计效果图怎么做南京网站排名优化费用
  • 深圳专业网站公司如何制作宣传小视频
  • 在哪个网站上做简历网站推广费用一般多少钱
  • 柳州哪家网站建设专业宣传海报制作app
  • 怎么做网站的浏览量网站推广平台怎么做
  • 寺庙做网站小型教育网站建设问题存在的
  • 建设网站的定位app的创建方式有哪些
  • 做一个网站需要哪些步骤wordpress文章列表高度
  • 网站开发逻辑企业cms免费模板
  • 除了91还有什么关键词成都优化教育百度推广
  • 兰州市科协网站网站设计规范
  • 网站页面如何设计郑州公司网页
  • 盐城永祥建设有限公司网站珠海做公司网站
  • 深圳十大网站建设东莞网站优化排名诊断
  • 广州正规的免费建站wordpress安装后删除
  • 微信网页宣传网站怎么做的做一元云购网站
  • 微商城网站建设行情网站页尾设计
  • 宜昌做网站要什么条件ui界面设计教程
  • 莞城区小程序app网站开发wordpress 读取excel
  • 免费网站建设软件有哪些网站开发入门ppt
  • 做软件界面的网站免费个人网站申请
  • 影视类网站建设广西建设工程质量安全监督网站
  • 门户网站建设 总结做网站都需要买什么问题
  • 东莞网站推广排行上海网站建设需要多少钱