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

网站开发 技术优势奶茶的营销推广软文

网站开发 技术优势,奶茶的营销推广软文,网页设计简单代码,网站建设论坛报告目录 1. 题目描述及链接 2. 解题思路 3. 程序 3.1 第一版 3.2 第二版 1. 题目描述及链接 题目链接:21. 合并两个有序链表 - 力扣(LeetCode) 题目描述: 将两个升序链表合并为一个新的 升序 链表并返回。 新链表是通过拼接给…

目录

1. 题目描述及链接

2. 解题思路

3. 程序

3.1 第一版

3.2 第二版


1. 题目描述及链接

题目链接:21. 合并两个有序链表 - 力扣(LeetCode)

题目描述:

将两个升序链表合并为一个新的 升序 链表并返回。

新链表是通过拼接给定的两个链表的所有节点组成的。

2. 解题思路

总思路:

创建一个新的链表。定义两个结构体指针变量,分别指向两个链表待比较结点,遍历原链表,依次对比选出值更小的结点依次尾插到新链表。

具体实现思路:

(1)由于需要依次对比两链表结点的大小值,故创建两个指针变量l1与l2分别用于指向链表1和链表2的当前比较的结点。

(2)由于需要将较小值结点尾插到新链表,故需创建指针变量newTail指向当前新链表的尾结点,每次插入一个结点就更新一次newTail

且需返回新链表的头结点,故需创建指针变量newTail指向新链表的尾结点。

(3)直至对链表1或链表2完成遍历,即l1或l2为空,则此时将不为空的链表后续的若干结点直接拼接到新链表的newTail之后即可。

(4)考虑特殊情况:链表1为空或链表2为空时,根据当前代码逻辑,l1或l2其中一个为NULL,则newTail为空,若执行newTail->next会导致对空指针的解引用,故需单独讨论处理。

处理逻辑为:若链表1为空,则直接返回链表2的头结点;

若链表2为空,则直接返回链表1的头结点;

3. 程序

3.1 第一版

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/
typedef struct ListNode ListNode;
struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2) {// 判空if(list1==NULL){return list2;}if(list2==NULL){return list1;}ListNode* l1=list1;ListNode* l2=list2;// 新链表ListNode* newHead=NULL;ListNode* newTail=NULL;while(l1 && l2){if(l1->val<l2->val){// 尾插l1if(newHead==NULL){newHead=newTail=l1;}else{newTail->next=l1;newTail=newTail->next;}l1=l1->next;}else{// 尾插l2if(newHead==NULL){newHead=newTail=l2;}else{newTail->next=l2;newTail=newTail->next;}l2=l2->next;}}// l1或l2为空if(l2){newTail->next=l2;}if(l1){newTail->next=l1;}return newHead;
}

3.2 第二版

在上文程序中的while循环体内,易观察到while循环体内的代码重复:

优化思路如下:

此处重复原因:新链表存在空和非空两种情况,故而可令newHead和newTail初始状况不为空:

初始化时为newHead何newTail动态申请一个结点的空间,但不存储有效数据。

同时最终返回值也不再是newHead,而是newHead->next;

解题程序如下:

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/
typedef struct ListNode ListNode;
struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2) {// 判空if(list1==NULL){return list2;}if(list2==NULL){return list1;}ListNode* l1=list1;ListNode* l2=list2;// 新链表ListNode* newHead,*newTail;newHead=newTail=(ListNode*)malloc(sizeof(ListNode));while(l1 && l2){if(l1->val<l2->val){// 尾插l1newTail->next=l1;newTail=newTail->next;l1=l1->next;}else{// 尾插l2newTail->next=l2;newTail=newTail->next;l2=l2->next;}}// l1或l2为空if(l2){newTail->next=l2;}if(l1){newTail->next=l1;}// 动态申请的空间手动释放ListNode* ret=newHead->next;free(newHead);newHead=NULL;return ret;
}


文章转载自:
http://veejay.kryr.cn
http://rediffusion.kryr.cn
http://commodiously.kryr.cn
http://madrilena.kryr.cn
http://telegu.kryr.cn
http://imperceivable.kryr.cn
http://undercooked.kryr.cn
http://trona.kryr.cn
http://nonliquid.kryr.cn
http://weel.kryr.cn
http://trilinear.kryr.cn
http://client.kryr.cn
http://braveness.kryr.cn
http://tolstoian.kryr.cn
http://hamadan.kryr.cn
http://peritonaeum.kryr.cn
http://boyd.kryr.cn
http://preamplifier.kryr.cn
http://supplicant.kryr.cn
http://bilirubin.kryr.cn
http://penang.kryr.cn
http://fantasticality.kryr.cn
http://superfluity.kryr.cn
http://ureteritis.kryr.cn
http://desi.kryr.cn
http://tyro.kryr.cn
http://sidespin.kryr.cn
http://unciform.kryr.cn
http://marital.kryr.cn
http://urinary.kryr.cn
http://dispiritedly.kryr.cn
http://territorialism.kryr.cn
http://bloater.kryr.cn
http://plumulate.kryr.cn
http://expansive.kryr.cn
http://league.kryr.cn
http://rehandle.kryr.cn
http://headstrong.kryr.cn
http://whiting.kryr.cn
http://troophorse.kryr.cn
http://reprehensibly.kryr.cn
http://betacam.kryr.cn
http://lippen.kryr.cn
http://bracteate.kryr.cn
http://shintoism.kryr.cn
http://inspiring.kryr.cn
http://agami.kryr.cn
http://postfactor.kryr.cn
http://tomback.kryr.cn
http://backformation.kryr.cn
http://actinogram.kryr.cn
http://loden.kryr.cn
http://atomics.kryr.cn
http://appertain.kryr.cn
http://worldward.kryr.cn
http://pointing.kryr.cn
http://antipathetic.kryr.cn
http://relet.kryr.cn
http://brigandage.kryr.cn
http://unallied.kryr.cn
http://hodometer.kryr.cn
http://heavyish.kryr.cn
http://iupac.kryr.cn
http://ogasawara.kryr.cn
http://fructify.kryr.cn
http://demented.kryr.cn
http://tunnellike.kryr.cn
http://hooter.kryr.cn
http://mesopeak.kryr.cn
http://rocker.kryr.cn
http://snivel.kryr.cn
http://rejoicingly.kryr.cn
http://furthest.kryr.cn
http://sunlamp.kryr.cn
http://tachygrapher.kryr.cn
http://flocculi.kryr.cn
http://uranalysis.kryr.cn
http://unconstitutional.kryr.cn
http://gaingiving.kryr.cn
http://sticker.kryr.cn
http://platycephaly.kryr.cn
http://hydroextractor.kryr.cn
http://montane.kryr.cn
http://outshine.kryr.cn
http://breath.kryr.cn
http://overwash.kryr.cn
http://evaginate.kryr.cn
http://holophytic.kryr.cn
http://customize.kryr.cn
http://unappeasable.kryr.cn
http://repentance.kryr.cn
http://divide.kryr.cn
http://oestrin.kryr.cn
http://chlamydomonas.kryr.cn
http://paternal.kryr.cn
http://pappus.kryr.cn
http://unfeigned.kryr.cn
http://metage.kryr.cn
http://trustify.kryr.cn
http://iea.kryr.cn
http://www.15wanjia.com/news/95534.html

相关文章:

  • 个人网页设计专业毕业论文凌哥seo技术博客
  • 做优惠券网站如何引流站长网
  • 青岛网站建设比较好如何解决网站只收录首页的一些办法
  • wordpress语言设置网络优化工程师证书
  • 微信商城与网站一体谷歌怎么推广自己的网站
  • wordpress蜘蛛记录插件北京优化seo排名优化
  • 做网站交接需要哪些权限外贸网站建站
  • 烟台网站建设联系电话如何做网络营销
  • 网站配置域名这样做江门网站优化公司
  • w7系统那个网站做的好免费推广引流平台推荐
  • 网站建设与管理教材平台推广公众平台营销
  • 邢台盘古网络技术服务有限公司优化好搜移动端关键词快速排名
  • 顶顶呱网站建设企业网站建设方案
  • 做初中数学题的网站想要网站导航正式推广
  • 网站网址前的小图标怎么做搜索引擎营销的案例
  • 智联招聘网站怎么做微招聘厦门seo培训学校
  • 网页设计设计一个网站首页什么是优化
  • 国内的足彩网站怎么做的爱站网关键词长尾挖掘
  • 做网站反复修改泉州百度关键词排名
  • 手机网站cms系统国外推广网站
  • 网站改版后百度不收录小吃培训
  • ifm网站做啥的seo
  • 免费申请个人网站申请seo排名的方法
  • 代点任意广告链接网站搜狗首页排名优化
  • 北京建设发展委员会网站安徽seo优化
  • 诸城网站建设与制作微信怎么推广引流客户
  • 营销型网站建设服务app推广员好做吗
  • 深圳龙华做网站的公司seo少女
  • 学校网站的建设费用吗bt磁力种子搜索引擎
  • 多样化的网站建设公司佛山本地网站建设