当前位置:   article > 正文

Golang Leetcode 203. Remove Linked List Elements.go_leetcode 203 golang

leetcode 203 golang

思路

用一个指针负责跟踪head的前一个节点
发现目标之后,直接跳过该节点

code

func removeElements(head *ListNode, val int) *ListNode {
	if head == nil {
		return head
	}
	var p1 ListNode
	p1.Next = head
	p2 := &p1
	for head != nil {
		if head.Val == val {
			p2.Next, head = head.Next, head.Next
		} else {
			p2, head = head, head.Next
		}
	}
	return p1.Next
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

更多内容请移步我的repo: https://github.com/anakin/golang-leetcode

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/运维做开发/article/detail/850458
推荐阅读
相关标签
  

闽ICP备14008679号