博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Remove Duplicates from Sorted List II
阅读量:4074 次
发布时间:2019-05-25

本文共 1277 字,大约阅读时间需要 4 分钟。

Remove Duplicates from Sorted List II

Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numbers from the original list.

For example,
Given 1->2->3->3->4->4->5, return 1->2->5.
Given 1->1->1->2->3, return 2->3.

Java代码:

/** * Definition for singly-linked list. * public class ListNode { *     int val; *     ListNode next; *     ListNode(int x) { *         val = x; *         next = null; *     } * } */public class Solution {    public ListNode deleteDuplicates(ListNode head) {        if (null == head || null == head.next)			return head;		ListNode new_head = new ListNode(0);		new_head.next = head;		ListNode tmp = new_head;		while (true) {			if (tmp.next != null && tmp.next.next != null					&& tmp.next.next.next != null) {				if (tmp.next.val == tmp.next.next.val						&& tmp.next.val == tmp.next.next.next.val) {					tmp.next = tmp.next.next; // 跳过后一个				} else if (tmp.next.val == tmp.next.next.val) {					tmp.next = tmp.next.next.next; // 跳过后两个				} else {					tmp = tmp.next; // 跳过后一个				}			}else if(tmp.next != null && tmp.next.next !=null){				if(tmp.next.val ==tmp.next.next.val)					tmp.next =null;				else					tmp = tmp.next.next;			}else{				break;			}		}		head = new_head.next;		new_head = null;		return head;    }}
 

转载地址:http://cvuni.baihongyu.com/

你可能感兴趣的文章
Jenkins - sonarqube 代码审查
查看>>
Jenkins + Docker + SpringCloud 微服务持续集成(一)
查看>>
Jenkins + Docker + SpringCloud 微服务持续集成 - 单机部署(二)
查看>>
Jenkins + Docker + SpringCloud 微服务持续集成 - 高可用集群部署(三)
查看>>
Linux 粘滞位 suid sgid
查看>>
C#控件集DotNetBar安装及破解
查看>>
Winform皮肤控件IrisSkin4.dll使用
查看>>
Winform多线程
查看>>
C# 托管与非托管
查看>>
Node.js中的事件驱动编程详解
查看>>
mongodb管理与安全认证
查看>>
nodejs内存控制
查看>>
nodejs Stream使用中的陷阱
查看>>
MongoDB 数据文件备份与恢复
查看>>
MongoDB数据库插入、更新和删除操作详解
查看>>
MongoDB文档(Document)全局唯一ID的设计思路
查看>>
mongoDB简介
查看>>
Redis持久化存储(AOF与RDB两种模式)
查看>>
memcached工作原理与优化建议
查看>>
Redis与Memcached的区别
查看>>