移除链表元素
class Solution {
public:
ListNode* removeElements(ListNode* head, int val) {
ListNode* dummyhead = new ListNode();
dummyhead -> next = head;
ListNode* pre = dummyhead;
while(head){
if(head-> val == val){
pre -> next = head -> next;
}
else{
pre = head;
}
head = head -> next;
}
return dummyhead -> next;
}
};
设计链表
关键是掌握链表结构体的定义和虚拟头结点
class MyLinkedList {
public:
struct ListNode{
ListNode* next;
int val;
ListNode(int _val){
next = nullptr;
val = _val;
}
};
ListNode* d