总结:一般碰到去重,hashtable是一个非常好的选择
package 剑指offer;
import java.util.Hashtable;
public class t121删除链表中的重复元素forlearn {
/**
* 利用hashtable 来找重复元素
* 定义两个指针
* @param head 链表
*
*/
public void deleteDuplecate(ListNode head){
if(head == null){
return;
}
//新建当前指针
ListNode cur = head;
//前一节点指针
ListNode pre =null;
//新建一个 hash表
Hashtable<Integer, Integer> hashtable=new Hashtable<Integer, Integer>();
while(cur != null){
if(hashtable.containsKey(cur.val)){
//如果hashtable有 就删除
pre.next=cur.next;
}else {
//否则就进入hashtable
hashtable.put(cur.val,1);
pre=cur;
}
//cur指针后移
cur=cur.next;
}
}
}