我很好奇删除双向链表中所有节点的正确方法是什么。
这是我的链表结构:
type ListNode struct {
Data branch
Next *ListNode
Prev *ListNode
}
type doublyLinkedList struct {
Head *ListNode
Tail *ListNode
Size int
}
如果我只是将 Head & Tail 节点指向 Nil,它会工作吗?
func deleteAllNodes(dl *doublyLinkedList) {
dl.Head = nil
dl.Tail = nil
dl.Size = 0
}
如果是这样,所有节点会发生什么?它会收集垃圾吗?
慕丝7291255
相关分类