java——删除单链表中所有重复的结点

2022-10-26 14:24:34 浏览数 (1)

思路分析

1.创建一个单链表,如图所示:

具体单链表的实现请参考本博客中文章,下面提供创建单链表的实现代码

主函数部分:

2.寻找并去除 重复的结点 先定义一个引用cur,当链表不为空、不能发生空指针异常,且cur.next.data 等于cur.data的时候,让cur往后走一步,直到不相等的时候,将结点连接到新建节点node后,此时删除重复节点之后的链表就是所得到的值。

下面是这一部分的代码

3.将最后一个结点置为空 走到链表的末尾,需要将tmp引用的下一个节点置为空,此时返回链表才不会出错; **注:**最后返回值应为 node.next(因为不确定this.head是否为重复的需要删除的结点) 下面是代码:

完整代码

0 人点赞