Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class main {
- public static void main(String[] args) {
- LinkedList ll = new LinkedList();
- ll.append(1);
- ll.append(2);
- ll.append(3);
- ll.append(4);
- ll.append(5);
- ll.append(3);
- ll.retrieve();
- ll.remove(1);
- ll.retrieve();
- ll.removeDups();
- ll.retrieve();
- }
- }
- class LinkedList {
- Node header;
- static class Node {
- int data;
- Node next = null;
- Node before = null;
- }
- LinkedList() {
- header = new Node();
- }
- void append(int data) {
- Node end = new Node();
- end.data = data;
- Node n = header;
- while(n.next != null) {
- n = n.next;
- }
- end.before = n;
- n.next = end;
- }
- void remove(int data) {
- Node n = header;
- while(n.next != null) {
- if(n.next.data == data) {
- n.next = n.next.next;
- n.next.before = n;
- } else {
- n = n.next;
- }
- }
- }
- void retrieve() {
- Node n = header.next;
- System.out.print("next: ");
- while(n.next != null) {
- System.out.print(n.data + "->");
- n=n.next;
- }
- System.out.println(n.data);
- System.out.print("before: ");
- while(n.before != null) {
- System.out.print(n.data + "->");
- n=n.before;
- }
- System.out.println();
- }
- void removeDups() {
- Node n = header;
- while(n != null && n.next != null) {
- Node r = n;
- while(r.next != null) {
- if(n.data == r.next.data) {
- r.next = r.next.next;
- } else {
- r = r.next;
- }
- }
- n = n.next;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement