前置知识,链表数据结构
1. 移除链表元素
移除链表元素不难,只需要把前一个结点的下一节点指向下一个节点的下一节点
如果当前遍历的节点与所给值相等,则需要移除此元素,移除元素是将上一节点的next域设置为当前节点的next,当前节点后移一位
如果当前遍历的节点值不等于所给值,则前驱指针指向下一节点,当前节点往后移一位
当前节点为空,即移到了链表的末尾,则完成遍历。以上在非头尾节点的逻辑,现在需要确定初始值如何设置,前驱节点prev,当前节点curr。因为存在当前节点为所给值的情况,所以当前节点初始值需要设置为head,前驱节点就需要设置一个空节点,并将此空节点的next域设置为head,最终的头节点为此空节点的next域。
代码如下
2.设计链表