public static void main(String[] args){
remove();
}
public static void remove() {
int[] num = {1, 3, 3, 5, 6, 7, 9};
Node head = new Node(num[0]);
Node pre =head;
for (int i = 1;i< num.length;i++){
Node node = new Node(num[i]);
pre.next = node;
pre = node;
}
printlinkNode(head);
Node newHead = deleteDuNode(head);
printlinkNode(newHead);
}
public static void printlinkNode(Node node){
System.out.println(node.data);
if (node.next != null){
printlinkNode(node.next);
}
}
public static Node deleteDuNode(Node head) {
//首先判断链表是否为空
if (head == null) {
return head;
}
Node node0 = new Node(0);
node0.next = head;
Node pre = node0;
Node p = head;
while (p != null && p.next != null) {
if (p.data == p.next.data){
int val= p.data;
pre.next = p;
}else {
pre =p;
p = p.next;
}
}
return node0.next;
}
static class Node {
public int data;
public Node next;
public Node(int data) {
this.data = data;
}
}