Skip to main content

Reversed Linked List- Using Header Of Linked LIst

class node{
int data;
node next;
node(int data){
this.data=data;
}
}

class reverseLinkedList{
node head;
node tail;
node temp;

    //Constructor
reverseLinkedList(){
head=null;
}
    
    //Reverse Linked List Using Traverse And Add First To New List And Return a List
public reverseLinkedList reverse(node head){
reverseLinkedList r2=new reverseLinkedList();
while(head!=null){
r2.addFirst(head.data);
head=head.next;
}
return r2;
}
    
    //Add First Position
public void addFirst(int data){
if(head==null){
head=new node(data);
}
else{
temp=new node(data);
temp.next=head;
head=temp;
}
}
    
    //Add Node To Last Element
public void addNode(int data){
if(head==null){
head=new node(data);
tail=head;
}
else
{
tail.next=new node(data);
tail=tail.next;
}
}
    
    //Traverse a Linked List
public void traverse(node head){
while(head!=null){
System.out.println(head.data);
head=head.next;
}
}


    //Main Function
public static void main(String[] args){
reverseLinkedList r=new reverseLinkedList();
r.addNode(5);
r.addNode(10);
r.addNode(15);
r.addNode(20);
r.addNode(25);
r.addNode(30);
r.addNode(35);
r.addNode(40);
r.traverse(r.head);
System.out.println("Reversed!!!");
r.traverse(r.reverse(r.head).head);
}

}

Comments

Popular posts from this blog

LPS(Longest Prefix Which Is Also Suffix) Array Generation Using Java

import java.util.* ; //Longest Prefix Which Is Also Suffix Which Is Used To Found a Pattern Through Avoid Repeated Characters in Given String. We Will Discuss KMP ALGORITHM TO Find A Pattern In Given String Latter. class lbs{ public static void main( String [] args){ Scanner in= new Scanner(System.in); //Get Input From User String s=in.nextLine(); //Convert String Into Char Array char [] ch=s.toCharArray(); int n=s.length(); int [] lbsArr= new int [n]; int j= 0 ,i= 1 ; lbsArr[ 0 ]= 0 ; //LPS ARRAY ALGORITHM /* i=1; j=0; string s="aaab" while i<n if s[i]==s[j]: lpsArr[i]=j; j=j+1 i=i+1 else: if j==0: lbsArr[j]=0 i=i+1 else: ...

Stack is Linear Data Structure- Basic DSA In Java Programming

  /* Stack Is a Linear Data Structure.FIFO(First In First Out) or LIFO(Last In First Out). [ Elements ] [ Elements ] [ Elements ] [ Elements ] */ import java.util.*; class stack{ public static void main( String [] args){ Stack < Integer > s= new Stack < Integer >(); //Push Element To Stack s.push( 10 ); s.push( 5 ); s.push( 2 ); s.push( 1 ); System.out.println(s); /* After Push The Stack Like [ 1 ] <---Push And Pop In Top Of The Statck [ 2 ] [ 5 ] [ 10] */ //Pop Element From Statck s.pop(); System.out.println(s); /* After Pop From Stack [ 1 ]--> Pop From Top Of The Stack [ 5 ] [ 10] */ System.out.println(s.peek()); /* s.peek(); Shows Top Of The Stack */ /* s.empty() returns boolean V...

if control statement - Basic Programming Concepts With psudo Code

if( )  is a control statement. it based on some condition. if the condition can true the block of statements can execute other wise skip the statements. syntax if([condition]) { //statement; } example1, #include<stdio.h> #include<conio.h> main() int num=1; { if(num==1) { printf("\n its true"); } } from the above program we can declare the variable named as num and assign the value as 1. then, check the value 1 equal value of num through if statement.the statement can true.so, the block of statements can executed. example2, #include<stdio.h> #include<conio.h> main() int num=5; { if(num==1) { printf("\n its true"); } } suppose the value of num is 5.the block of if statement can skip to execution.