LinkList
學習算法
使用動態節點來代表head
- 接下來操作dummyhead來代替head
ListNode *dummyhead = new ListNode(0);
dummyhead->next = head;
- 將記憶體釋放
head = dummyhead->next;
delete dummyhead;
return head;
Leetcode203
class Solution
{
public:
ListNode *removeElements(ListNode *head, int val)
{
ListNode *dummyhead = new ListNode(0);
dummyhead->next = head;
ListNode *cur = dummyhead;
while (cur->next != NULL)
{
if (cur->next->val == val)
{
ListNode *tmp = cur->next;
cur->next = cur->next->next;
delete tmp;
}
else
{
cur = cur->next;
}
}
head = dummyhead->next;
delete dummyhead;
return head;
}
};