【LeetCode】Remove Duplicates from Sorted List
来源:互联网 发布:js input 当前日期 编辑:程序博客网 时间:2024/06/15 08:25
问题地址:http://oj.leetcode.com/problems/remove-duplicates-from-sorted-list/
Given a sorted linked list, delete all duplicates such that each element appear only once.
For example,
Given 1->1->2
, return 1->2
.
Given 1->1->2->3->3
, return 1->2->3
.
思路:题目非常简单,这里做一个记录只是对链表有的新的理解和认识。之前对与链表其实没有完全理解,但是通过这道题目可以说是完全理解了,对于链表新的理解:
(1)链表的每一个单元是独立的,只不过是里面的next指针把他们连接起来而已。
(2)如下函数deleteDuplicates返回的是类型是ListNode,所有要想改变之后的链表形式,必须修改里面的next指针的指向单元,最终返回的也是这个链表的头节点(其实类似于C++中的头指针,只不过在java中没有指针的概念),我们让pre=head;那么就认为这两个对象指向同一片内存空间。
AC代码:
/** * 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) { Set<Integer> nodeSet = new HashSet<Integer>();ListNode pre = null;ListNode newHead = head;while (head != null) {if (!nodeSet.contains(head.val)) {nodeSet.add(head.val);pre=head;}else{pre.next=head.next;}head = head.next;}return newHead; }}
0 0
- Remove Duplicates from Sorted List :from LeetCode
- Leetcode - List - Remove Duplicates from Sorted List
- [leetcode][list] Remove Duplicates from Sorted List
- [leetcode][list] Remove Duplicates from Sorted List
- LeetCode: Remove Duplicates from Sorted List
- LeetCode: Remove Duplicates from Sorted List II
- [Leetcode] Remove Duplicates from Sorted List
- [Leetcode] Remove Duplicates from Sorted List II
- LeetCode: Remove Duplicates from Sorted List
- LeetCode: Remove Duplicates from Sorted List II
- [Leetcode] Remove Duplicates from Sorted List II
- leetcode 37: Remove Duplicates from Sorted List
- [leetcode] Remove Duplicates from Sorted List II
- [LeetCode] Remove Duplicates from Sorted List II
- [LeetCode] Remove Duplicates from Sorted List
- [leetcode] Remove Duplicates from Sorted List
- [leetcode] Remove Duplicates from Sorted List II
- [LeetCode]Remove Duplicates from Sorted List
- leetcode之Valid Palindrome
- Android 编译环境配置搭建(Ubuntu 12.04)及环境导致编译错误QA
- 进程间通信
- (二)android下拉刷新的两种方式之设置topMargin
- iOS 多线程之GCD的简单使用
- 【LeetCode】Remove Duplicates from Sorted List
- Web学习记录
- 淘宝双11的服务器架构分析(2)
- Tomcat 8(九)解读Tomcat组件的生命周期(Lifecycle)
- Linux IGMP 学习笔记 之一 IGMP协议格式
- 【C++基础】利用stringstream进行数据类型转换
- IOS6新特性
- 黑马程序员-高新类加载器及委托机制学习日记 .
- servlet的生命周期