标签:struct 野指针 lin 消失 ini 自己 highlight class 方法
目前我能想到的是最笨的办法,能以后想到更好的方法的时候在来继续做把
题目描述:
将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。
示例:
输入:1->2->4, 1->3->4
输出:1->1->2->3->4->4
遇到的错误:

解决方法,把以下两句原本用分号连接的语句改为用逗号连接,错误得到解决
错误原因分析:
逗号前后两句话原本是用分号连接的,如果改成逗号错误就消失了。说明这两句话的关系是并列的,result为新申明的节点,将t指向result,避免result成为野指针。
struct ListNode *result =(struct ListNode *)malloc(sizeof(struct ListNode)); *t=result;
最后显示通过

代码:
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* struct ListNode *next;
* };
*/
struct ListNode* mergeTwoLists(struct ListNode* l1, struct ListNode* l2){
if(!l1)
return l2;
else if(!l2)
return l1;
struct ListNode *result =(struct ListNode *)malloc(sizeof(struct ListNode)),*t=result;
while(l1&&l2)
{
if(l1->val<l2->val)
{
t->next=l1;
l1=l1->next;
}
else{
t->next=l2;
l2=l2->next;
}
t=t->next;
}
if(l1)
t->next=l1;
else if(l2)
t->next=l2;
return result->next;
}
这个想法之前在学习数据结构的时候就想到过,只是基础知识不扎实所以写不出来,今天写出来的这个也是看了别人发的然后跟着练了一下而已。关于同类题目要多多总结,形成自己的方法
主要问题:
基础知识不扎实,声明链表节点的时候不会写。
标签:struct 野指针 lin 消失 ini 自己 highlight class 方法
原文地址:https://www.cnblogs.com/redzzy/p/13276301.html