赞
踩
给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。
本题主要是一个移除链表元素的一个题
移除算法
//本元素
node=node.next
//next元素
node.next=node.next.next
然后就是判断该移除哪个元素
题目中说的是node.Val=val的元素,就用for循环遍历所有节点,移除其中node.Val=val的节点
func removeElements(head *ListNode, val int) *ListNode {
for ; head != nil && head.Val == val; head = head.Next {
}
p := head
for head != nil {
if head.Next!=nil&&head.Next.Val == val {
head.Next = head.Next.Next
}else{
head = head.Next
}
}
return p
}
更多解决方法请参考:https://leetcode.cn/problems/remove-linked-list-elements/solution/
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。