冰冻非一日之寒
上篇讲到,向index处添加结点时,需要特殊处理头结点,因为头结点没有前一个结点。那假设,我们为头结点设置前一个结点呢?
对于下面这个链表,头结点为head,设置头结点为空

向前移动head,变为dummyhead(虚头结点)

这样,我们向index处添加结点时,就不需要特殊处理头结点了
注意,for循环中index-1变为了index。
而向链表头部添加结点时,只需要调用向index处添加结点就好了。
冰冻非一日之寒
上篇讲到,向index处添加结点时,需要特殊处理头结点,因为头结点没有前一个结点。那假设,我们为头结点设置前一个结点呢?
对于下面这个链表,头结点为head,设置头结点为空
向前移动head,变为dummyhead(虚头结点)
这样,我们向index处添加结点时,就不需要特殊处理头结点了
注意,for循环中index-1变为了index。
而向链表头部添加结点时,只需要调用向index处添加结点就好了。
本文标题:链表—虚拟头结点
本文链接:https://www.haomeiwen.com/subject/uoxsnqtx.html
网友评论