由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 删除node从list, 这个有内存泄露么,怎么释放内存,对于那个被删除的节点?
相关主题
Leetcode 问题:remove Nth FromEnd 有一点儿不懂,謝謝指点!请问大牛们Leetcode Reorder List 中找中间节点怎么能现场想清楚?多谢!
java 链表里面dummy node 一问?谢谢请教一道单链表问题
【我自己写的LinkedList为什么总有错?】看不懂这题
大牛们帮忙,Rverse Nodes in k-Group明天电面,求建议
M家 onsite 悲剧,同胞们弄死烙印吧LeetCode:Partition List 哪位帮我看看, 为什么总是TLE
合并两个排序好的链表, 优解?谁能帮我看下insertion sort list这道题吗?
delete a node in linked listgoogle面试全过程(简装版)
如何删除 linked list 的最后一个元素 (转载)yelp 面经
相关话题的讨论汇总
话题: listnode话题: next话题: head话题: null话题: return
进入JobHunting版参与讨论
1 (共1页)
C*******n
发帖数: 193
1
class Solution {
public:
ListNode *removeNthFromEnd(ListNode *head, int n) {
if (n==0 || !head){
return NULL;
}

ListNode* res = new ListNode(0);
res->next = head;
head = res;

ListNode* p=head;
ListNode* q=head;

for (int i=0;i<=n;i++){
if (q){
q=q->next;
}else{
return NULL;
}
}

while (q){
p=p->next;
q=q->next;
}

p->next=p->next->next;

return head->next;
}
};
删除node从list, 这个有内存泄露么,怎么释放内存,对于那个被删除的节点?
J**9
发帖数: 835
2
What do you return?
The new list or the deleted node?
Assume you return the new list:
1) Free res before return
tmp = head->next;
head->next = NULL;
free(head);
return tmp;
2) tmp = p->next;
p->next=p->next->next;
free(tmp);
3)
The Nth one shall be the one after p, so
for (int i=0;i 4) return NULL; ==> return head->next?
1 (共1页)
进入JobHunting版参与讨论
相关主题
yelp 面经M家 onsite 悲剧,同胞们弄死烙印吧
一到电面题合并两个排序好的链表, 优解?
ms面试题目delete a node in linked list
透露两个G的onsite题如何删除 linked list 的最后一个元素 (转载)
Leetcode 问题:remove Nth FromEnd 有一点儿不懂,謝謝指点!请问大牛们Leetcode Reorder List 中找中间节点怎么能现场想清楚?多谢!
java 链表里面dummy node 一问?谢谢请教一道单链表问题
【我自己写的LinkedList为什么总有错?】看不懂这题
大牛们帮忙,Rverse Nodes in k-Group明天电面,求建议
相关话题的讨论汇总
话题: listnode话题: next话题: head话题: null话题: return