【发布时间】:2018-09-19 13:15:56
【问题描述】:
**嗨,我正在尝试解决这个hackerrank问题,但我收到运行时错误“分段错误”。
请帮我解决这个错误。
问题链接** = https://www.hackerrank.com/challenges/find-the-merge-point-of-two-joined-linked-lists/problem
int findMergeNode(SinglyLinkedListNode* head1, SinglyLinkedListNode* head2) {
int length1 = 0;
int length2 = 0;
SinglyLinkedListNode* list1 = head1;
SinglyLinkedListNode* list2 = head2;
while(list1 != nullptr)
{
list1 = list1->next;
length1 ++;
}
while(list2 != nullptr)
{
list2 = list2 -> next;
length2 ++;
}
//I want to point list2 pointer to the largest list
if(length1 > length2)
{
SinglyLinkedListNode* temp = list1;
list1 = list2;
list2 = temp;
}
for(int i=0 ; i< abs(length1 - length2) ;i++)
{
list2 =list2 -> next;
}
while(list2 != list1)
{
list1 = list1->next;
list2 = list2->next;
}
return list1->data;
错误 = 我收到“分段错误”错误。
【问题讨论】:
-
欢迎来到 SO。这里的问题应该是完整的,并且包含理解它所需的所有内容,而无需参考其他网站。请参阅 How to Ask 和 minimal reproducible example。此时,您应该在您的问题中发布问题(编辑它)。然后要调试分段错误,请阅读cprogramming.com/debugging/segfaults.html 或其他网站和教程,向您展示如何做到这一点。将问题缩小到一段代码后,您可以编辑您的问题,让我们知道问题所在。
标签: c++ linked-list segmentation-fault