我尝试在 this link 上回答问题.
但是,我发现我的答案在少量输入上效果很好,但是 leetcode 网站在输入上给出了运行时错误
[4,77,57,79,24,47,21,42,38,54,26,28,30,85,32,40,62,28,89,37,24,3,51,72,59,49,7,60,44,7,27,48,37,37,27,13,36,49,55,26,55,33,55,85,19,39,25,33,68,14,70,44,70,73,68,29,22,27,89,66,35,69,67,24,58,94,37,46]
这是我的代码,有人能告诉我发生了什么吗?
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* struct ListNode *next;
* };
*/
struct ListNode* swapPairs(struct ListNode* head)
{
struct ListNode *dummy, *pi, *pj, *end;
dummy->next = head;
end = dummy;
while(true){
pi = end->next;
if(pi == NULL){
break;
}else{
pj = pi->next;
}
if(pj == NULL){
break;
}
end->next = pi->next;
pi->next = pj->next;
pj->next = pi;
end = pi;
}
return dummy->next;
}
最佳答案
struct ListNode *dummy, *pi, *pj, *end;
dummy->next = head;
你没有初始化dummy
ptr,但是你使用了它。
关于c - leetcode#24 Swap Nodes in Pairs 运行时错误(C语言),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37156435/