今天和大家聊的问题叫做 移除链表元素,我们先来看题面:https://leetcode-cn.com/problems/remove-linked-list-elements/Remove all elements from a linked list of integers that have value val.
题意
删除链表中等于给定值 val 的所有节点。
示例
输入: 1->2->6->3->4->5->6, val = 6 输出: 1->2->3->4->5
解题
思路:设置哨兵节点x,以便能删除头节点。
class Solution { public: ListNode* removeElements(ListNode* head, int val) { ListNode* x = new ListNode(-1); x->next = head; ListNode* i = x; while(i->next) { if(i->next->val == val) { i->next = i->next->next; } else { i = i->next; } } return x->next; } };
好了,今天的文章就到这里,如果觉得有所收获,请顺手点个在看或者转发吧,你们的支持是我最大的动力 。