leetcode19Remove Nth Node From End of List
思路:
class Solution {
public:
ListNode* removeNthFromEnd(ListNode* head, int n) {
int length = 0;
ListNode *h1 = head;
ListNode *tempHead = new ListNode(0);
while(h1!=NULL) {length++;h1 = h1->next;}
int nthFromStart = length - n + 1;
tempHead->next = head;
head = tempHead;
h1 = head;
while(nthFromStart-->1) h1 = h1->next;
h1->next = h1->next->next;
head = head->next;
return head;
}
};
本文介绍了解决LeetCode第19题“从链表末尾删除第N个节点”的算法实现。通过计算链表长度,使用双指针技巧找到待删除节点,并完成删除操作。最后返回更新后的链表头。
659

被折叠的 条评论
为什么被折叠?



