Friday, December 2, 2011

Reverse a linked list iterative n recursive


  public static RevLinkedList reverse(RevLinkedList p){
   
    if(p.next==null){
      return p;
    }
    RevLinkedList q=reverse(p.next);
    p.next.next=p;
    p.next=null;
    return q;
  }

Iterative :


    public static void reverse(Iterative_reversal p){
      Iterative_reversal curr=p.next;
      Iterative_reversal head=p;
      Iterative_reversal temp=null;
      Iterative_reversal prev=p;
      while(curr.next!=null)
      {
        temp=curr.next;
        curr.next=prev;
        prev=curr;
        curr=temp;
      }
      curr.next=prev;
      head.next=null;
      Display(curr);
     
     
    }

No comments:

Post a Comment