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

天津市网站制作建设推广公司网站建设公司与前端

天津市网站制作建设推广公司,网站建设公司与前端,app开发做网站,凡客诚品服装购物网原题链接#xff1a;https://leetcode.cn/problems/merge-two-sorted-lists/description/ 目录 1. 题目描述 2. 思路分析 3. 代码实现 1. 题目描述 2. 思路分析 可以先创建一个空链表#xff0c;然后依次从两个有序链表中选取最小的进行尾插操作。#xff08;有点类似双…原题链接https://leetcode.cn/problems/merge-two-sorted-lists/description/ 目录 1. 题目描述 2. 思路分析 3. 代码实现 1. 题目描述 2. 思路分析 可以先创建一个空链表然后依次从两个有序链表中选取最小的进行尾插操作。有点类似双指针的操作~ 我们可以用不带哨兵位和带哨兵位两种方法实现 不带哨兵位 如果两个链表有一个为空直接返回另一个链表即可。 如果两个链表都是非空的我们就创建一个结构体指针head和一个结构体指针tail都初始化为空指针NULL之后分别用来指向新链表的头和尾。 同时遍历两个链表当有一个链表遍历完时停止。这里使用while(list1list2)进行循环。 当空链表插入第一个结点也就是tailNULL时需要单独考虑让头指针head和尾指针next都指向此时值较小的那个结点即可。 其他情况正常尾插即可就是让tail-next指向值较小的结点。之后让tail指向当前插入的结点也就是让tail往后走一步然后让相对应的list1或者list2往后走一步即可。 因为有可能while循环结束时还有链表的结点没有被插入到新链表。所以我们要用if语句判断将剩余的结点直接插入到新链表。 最后我们返回头指针head即可。 带哨兵位 带哨兵位最大的好处是方便尾插不用单独考虑在新链表插入第一个结点时的情况了因为带哨兵位让每一个结点地位都一样了。 这里相比不带哨兵位多的一些操作就是要先用malloc()函数申请一个结点作为哨兵位让head和tail一开始都直接指向这个结点。 当完成合并操作后让头指针head往后走一步指向哨兵位后面一个结点。 然后使用free()释放掉哨兵位。 最后返回head即可。 3. 代码实现 不带哨兵位 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/ struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2){if(list1NULL)return list2;if(list2NULL)return list1;struct ListNode *headNULL,*tailNULL;while(list1list2){if(list1-vallist2-val){if(tailNULL){headtaillist1;}else{tail-nextlist1;tailtail-next;}list1list1-next;}else{if(tailNULL){headtaillist2;}else{tail-nextlist2;tailtail-next;}list2list2-next;}}if(list1)tail-nextlist1;if(list2)tail-nextlist2;return head; } 带哨兵位 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/ struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2){if(list1NULL)return list2;if(list2NULL)return list1;struct ListNode *headNULL,*tailNULL;//带一个哨兵位方便尾插headtail(struct ListNode*)malloc(sizeof(struct ListNode));while(list1list2){if(list1-vallist2-val){tail-nextlist1;tailtail-next;list1list1-next;}else{tail-nextlist2;tailtail-next;list2list2-next;}}if(list1)tail-nextlist1;if(list2)tail-nextlist2;struct ListNode *delhead;headhead-next;free(del);return head; }
http://www.zqtcl.cn/news/104220/

相关文章:

  • 网站制作中企动力优响应式网站建设有利于seo
  • 区块链媒体网站建设wordpress页脚内容居中
  • php手机网站开发工具成都的教育品牌网站建设
  • 苏州建网站要多少钱八爪鱼采集器 wordpress
  • 确定网站风格thinkphp相比Wordpress
  • 网站全屏代码wordpress无法连接ftp
  • 做ppt配图好用的网站重庆制作网站有哪些
  • 门户网站建设进度安卓手机开发者模式
  • 招商网站建设需要什么网站开发 在线数据库
  • 创建网站代码网站二级页怎么做
  • 网站建设 前沿文章建设网站网站建设公司
  • dede网站seo微信开店怎么注册开店流程
  • 苏华建设集团有限公司网站wordpress 普通文本 quot
  • 网站首页倒计时功能怎么做学网站开发技术
  • 上海网站备案流程欧宇公司网络建设方案
  • 网站营销型办公室装修费用会计分录
  • 个人网站网页设计模板学校ftp服务器做网站
  • 黄江网站建设外贸公司用的采购储运财务软件
  • 优化网站公司做网站建设
  • 门户网站的盈利模式网站建设中备案
  • 代码需求网站织梦怎么关闭网站
  • 浙江工信部网站备案查询东圃做网站
  • icp网站域名怎么填写官方网站建设银行年利息是多少钱
  • 沈阳做网站好的信息流优化师证书
  • 做招聘网站创业seo优化工作
  • 如何维护网站建设外卖网站建设价钱
  • 南宁保洁网站建设乌克兰服装网站建设
  • ppt链接网站怎么做的nas云存储做视频网站
  • 上海网站制作公司联系方式设计素材网站照片
  • 林州网站建设价格网络舆情是什么意思