Online-Academy
Look, Read, Understand, Apply

Data Structure

Linked_LIST_Nov_27_2022

This code snippet shows how to create a simple linked list with very few nodes. A node class is defined, it has two attributes: data and next; methods: two constructors, and method to get value stored in a node.

class node{
    int data;
    node next;
    public node(int d){
        data = d;
        next = null;
    }
    public node(){
        data = 0;
        next = null;
    }
    public int getData(){
        return data; 
    }
}

Another class Linked_LIST is defined with objects of node class as attributes, a constructor, method to insert data after given node, method to delete node after given node.

 
class Linked_LIST{
    node n1,n2,n3,n4,n5;
    public Linked_LIST(){
        n1 = new node(33);
        n2 = new node(44);
        n3 = new node(55);
        n4 = new node(66);
        n5 = new node(99);
        n1.next = n2;
        n2.next = n3;
        n3.next = n4;
        n4.next = n5; 
    }
    public void insertAfter(int p, int d){
        int i; 
        node t = n1; 
        for(i=1;i<p;i++){t = t.next;}
        node nn = new node(d);
        nn.next = t.next; 
        t.next = nn;
    }
    public void deleteAfter(int p){
        int i; 
        node t = n1; 
        for(i=1;i<p;i++){t = t.next;}
        node temp = t.next;
        t.next = temp.next;
        temp = null;
    }
    public void show(){
        node t; int i=1;
        for(t = n1; t!=null;t=t.next){
            System.out.println(i+" : "+t.getData());
            ++i;
        }
    }
}
class Linked_List_Demo{
    public static void main(String[] owl){
        Linked_LIST l1 = new Linked_LIST();
        l1.show();
        l1.insertAfter(2, 200);
        l1.show();
        l1.deleteAfter(2);
        l1.show();
    }
}