Double Linked Lists

Hi everyone,
I have some problems about Double Linked Lists which I can not overcome. When I execute the following codes, there is an exception occured that is called NullPointer Exception in inser method.
So how can I fix it ??
class DoublyLinkedNode {
     // properties
     DoublyLinkedNode nextNode;
     DoublyLinkedNode previousNode;
     int size;
     int data;
     // constructors
     public DoublyLinkedNode(int data,DoublyLinkedNode nextNode, DoublyLinkedNode previousNode){
          this.data = data;
          this.nextNode = nextNode;
          this.previousNode = previousNode;
          size = 0;
     // methods
     public void setNext(DoublyLinkedNode next){
          nextNode = next;
     public void setPrevious(DoublyLinkedNode pre){
          previousNode = pre;
     public DoublyLinkedNode getNext(){
          return nextNode;
     public DoublyLinkedNode getPrevious(){
          return previousNode;
     public int getData(){
          return data;
     public void setData(int value){
          data = value;
class DoubleLinkedList {
     // properties
     int size;
     DoublyLinkedNode tail;
     DoublyLinkedNode head;
     String s = "";     
     // constructors
     public DoubleLinkedList(){
          head = null;
          tail = null;
          size = 0;
     // methods
     public boolean isEmpty(){
          if(head == null)
               return true;
          else
               return false;
     public DoublyLinkedNode next(){          
          return head.getNext();
     public DoublyLinkedNode previous(){
          return head.getPrevious();     
     public void insert(int data){
          head = new DoublyLinkedNode(data, head.getNext(),head.getPrevious());
          size++;
     public String toString(){
          s += head.getData() + "";
          head = head.getNext();
          if(isEmpty())
               return s;
          else
               return toString();               
     public static void main(String args[]){
          DoubleLinkedList list = new DoubleLinkedList();
          list.insert(111);
          list.insert(21);          
          list.insert(311);
          list.insert(41);
          list.insert(51);                    
          list.insert(16);
          list.insert(117);
          System.out.println(list.toString());
//          for(int a = 0; a < 5; a++){
//               list.previous();
}

Again, I changed insert method which is now correct I think.
But now, toString cause only appear the last object on the console.
So how can I fix toString method ???
     public void insert(int data){
          DoublyLinkedNode pointer = head.getPrevious();
          DoublyLinkedNode pointer2 = pointer.getNext();
          head = new DoublyLinkedNode(data,pointer2, pointer );     
     }

Similar Messages

  • [svn:bz-trunk] 18926: bug fix BLZ-570 Double linked list with lot of objects result in BlazeDS Error deserializing error  : StackOverflowError

    Revision: 18926
    Revision: 18926
    Author:   [email protected]
    Date:     2010-12-01 14:07:19 -0800 (Wed, 01 Dec 2010)
    Log Message:
    bug fix BLZ-570 Double linked list with lot of objects result in BlazeDS Error deserializing error : StackOverflowError
    We put hard limit to the max object nest level to prevent StackOverFlowError. the default max object nest level is 1024 and it can be configured in the endpoint/serialziation section in service-config.xml.
    This needs documentation.
    Checkintests pass
    Ticket Links:
        http://bugs.adobe.com/jira/browse/BLZ-570
    Modified Paths:
        blazeds/trunk/modules/common/src/flex/messaging/errors.properties
        blazeds/trunk/modules/core/src/flex/messaging/endpoints/AbstractEndpoint.java
        blazeds/trunk/modules/core/src/flex/messaging/io/SerializationContext.java
        blazeds/trunk/modules/core/src/flex/messaging/io/amf/Amf0Input.java
        blazeds/trunk/modules/core/src/flex/messaging/io/amf/Amf3Input.java
        blazeds/trunk/modules/core/src/flex/messaging/io/amf/AmfIO.java

  • [svn:bz-4.0.0_fixes] 20451: backporting bug fix BLZ-570/ BLZ-620 Double linked list with lot of objects result in BlazeDS Error deserializing error  : StackOverflowError  We put hard limit to the max object nest level to prevent StackOverFlowError .

    Revision: 20451
    Revision: 20451
    Author:   [email protected]
    Date:     2011-02-24 08:33:31 -0800 (Thu, 24 Feb 2011)
    Log Message:
    backporting bug fix BLZ-570/BLZ-620 Double linked list with lot of objects result in BlazeDS Error deserializing error : StackOverflowError  We put hard limit to the max object nest level to prevent StackOverFlowError. the default max object nest level is 1024 and it can be configured in the endpoint/serialziation section in service-config.xml. This needs documentation.  Checkintests pass
    Ticket Links:
        http://bugs.adobe.com/jira/browse/BLZ-570
        http://bugs.adobe.com/jira/browse/BLZ-620
    Modified Paths:
        blazeds/branches/4.0.0_fixes/modules/common/src/flex/messaging/errors.properties
        blazeds/branches/4.0.0_fixes/modules/core/src/flex/messaging/endpoints/AbstractEndpoint.j ava
        blazeds/branches/4.0.0_fixes/modules/core/src/flex/messaging/io/SerializationContext.java
        blazeds/branches/4.0.0_fixes/modules/core/src/flex/messaging/io/amf/Amf0Input.java
        blazeds/branches/4.0.0_fixes/modules/core/src/flex/messaging/io/amf/Amf3Input.java
        blazeds/branches/4.0.0_fixes/modules/core/src/flex/messaging/io/amf/AmfIO.java

    Dear Pallavi,
    Very useful post!
    I am looking for similar accelerators for
    Software Inventory Accelerator
    Hardware Inventory Accelerator
    Interfaces Inventory
    Customization Assessment Accelerator
    Sizing Tool
    Which helps us to come up with the relevant Bill of Matetials for every area mentioned above, and the ones which I dont know...
    Request help on such accelerators... Any clues?
    Any reply, help is highly appreciated.
    Regards
    Manish Madhav

  • [svn:bz-3.x] 20443: back porting bug fix BLZ-570/ BLZ-620 Double linked list with lot of objects result in BlazeDS Error deserializing error  : StackOverflowError  We put hard limit to the max object nest level to prevent StackOverFlowError .

    Revision: 20443
    Revision: 20443
    Author:   [email protected]
    Date:     2011-02-23 21:19:22 -0800 (Wed, 23 Feb 2011)
    Log Message:
    back porting bug fix BLZ-570/BLZ-620 Double linked list with lot of objects result in BlazeDS Error deserializing error : StackOverflowError  We put hard limit to the max object nest level to prevent StackOverFlowError. the default max object nest level is 1024 and it can be configured in the endpoint/serialziation section in service-config.xml. This needs documentation.  Checkintests pass
    Ticket Links:
        http://bugs.adobe.com/jira/browse/BLZ-570
        http://bugs.adobe.com/jira/browse/BLZ-620
    Modified Paths:
        blazeds/branches/3.x/modules/common/src/java/flex/messaging/errors.properties
        blazeds/branches/3.x/modules/core/src/java/flex/messaging/endpoints/AbstractEndpoint.java
        blazeds/branches/3.x/modules/core/src/java/flex/messaging/io/SerializationContext.java
        blazeds/branches/3.x/modules/core/src/java/flex/messaging/io/amf/Amf0Input.java
        blazeds/branches/3.x/modules/core/src/java/flex/messaging/io/amf/Amf3Input.java
        blazeds/branches/3.x/modules/core/src/java/flex/messaging/io/amf/AmfIO.java

  • Search in Double link list in java

    Can any body give me the code implementation for searching an element in double link list in java as soon as possible...

    Can any body give me the code implementation for
    searching an element in double link list in java as
    soon as possible...Psuedo code...
    current = head of list
    found = null
    while(current is not null)
       if doesItMatch(current, target)
            break
       current = current->next
    if (current is null)  Out("no match")
    else Out("found it")

  • Implementing Double Linked Lists

    I have been set a task creating a java class to implement the data cells of a double linked list, then improving on this class so that it will implemt the interface of a LinearList using a double linked list.
    HELP?!?!?!?!

    i have implemented a small method.u can implement the remaining methods as u want. I have not tested the code. Just for idea i am giving it. try it.
    public class Node{
         Node leftNode;
         Node rightNode;
         int data;
         public Node addNode(Node node,int data,int position){
              Node originalCopy=node;
              for(int i=0;i<position;i++){
                   Node tempNode=new Node();
                   tempNode.data=data;
                   tempNode.leftNode=node;
                   tempNode.rightNode=node.rightNode;
                   node=node.rightNode;
              return originalCopy;
    This class represents a Doubly linked list and it provides operations on it.

  • *** glibc detected *** corrupted double-linked list: 0x004ec848 ***

    hi,
    I am using Berkeley DB database and facing a problem while retrieving records. After building database i'm retrieving records from that database.After retrieving some records it gives the error as
    *** glibc detected *** corrupted double-linked list: 0x004ec848 *** Aborted. What can i do solve this problem.
    Thank you,
    ravi

    Hi Ravi,
    Have you googled for the error message? What are the results?
    A good thing to do is to provide me a test program and more details about your operating system environment. Also, try to update your glibc version.
    Regards,
    Bogdan Coman

  • *** glibc detected *** corrupted double-linked list: 0x0027f878 ***

    users are getting this error
    {noformat}*** glibc detected *** corrupted double-linked list: 0x0027f878 ***{noformat}{noformat} {noformat}
    what could the issue for above error,
    in concurrent reqest out put,
    Apps:12i
    os: Linux

    Sawwan,
    Request language is :
    AMERICAN
    Request territory is :
    AMERICA
    Previous NLS_LANG Environment Variable was :
    AMERICAN_AMERICA.WE8ISO8859P15
    Current NLS_LANG and NLS_NUMERIC_CHARACTERS Environment Variables are :
    AMERICAN_AMERICA.WE8ISO8859P15
    stat_low = 6
    stat_high = 0
    emsg:was terminated by signal 6
    Enter Password:
    *** glibc detected *** corrupted double-linked list: 0x0027f878 ***
    Report Builder: Release 10.1.2.0.2 - Production on Wed Mar 18 09:02:51 2009
    Copyright (c) 1982, 2005, Oracle. All rights reserved.
    Start of log messages from FND_FILE
    End of log messages from FND_FILE
    Reset original NLS_LANG in environment as :
    AMERICAN_AMERICA.WE8ISO8859P15
    Program was terminated by signal 6
    Concurrent Manager encountered an error while running Oracle*Report for your concurrent request xxxxxxx

  • Corrupted double-linked list

    I have been upgrading wine and I keep running into problems running Guildwars. Every time I upgrade wine to a newer version using pacman the program will not work correctly and freezes. So I have to downgrade to wine 1.1.20.  When I run wine thru  terminal I get
    *** glibc detected *** c:\Program Files\Guild Wars\Gw.exe: corrupted double-linked list: 0x7d4bc4f8 ***
    ======= Backtrace: =========                                                                           
    /lib/libc.so.6(+0x6b6c1)[0xb75dc6c1]                                                                   
    /lib/libc.so.6(+0x6d003)[0xb75de003]                                                                   
    /lib/libc.so.6(cfree+0x6d)[0xb75e0f8d]                                                                 
    /usr/lib/libGLcore.so.1(+0x5964af)[0xb6b8d4af]                                                         
    [0x200000]                                                                                             
    /usr/lib/libGLcore.so.1(+0x5ed980)[0xb6be4980]                                                         
    [0x138808b]                 
    I think this is because somehow libc.so.6 and libGlcore.so.1 is double linked. If so how do I find where they are linked to and how do I get rid of the wrong link. I can only find one /lib/libc.so.6 and only one /usr/lib/libGLcore.so.1 so there are not two of each. Am I going in the right direction?

    That error does not mean a link as in a symbolic link, but as in a data structure in the code.  See http://en.wikipedia.org/wiki/Linked_list for the idea.  The trace is saying that somewhere in libGLcore, there is a linked list which is being corrupted somehow.  This is an error inside the code, and not with your filesystem, so that would not be a way to fix it.  Check out the wine app database at http://appdb.winehq.org/ to see if anyone has had your problem.

  • Delphi Double Linked List to Java

    Does a Delphi Double Linked List correspond to any data type in Java?
    Thanks for your time,
    Nate

    Look at the documentationf for java.util.*, in particular the collections therein.
    java.util.LinkedList is probably closest to what you want.

  • Circular Double Linked List

    If the circular double linked list has only one item, will that item's next/previous node references point to itself?

    Yeah, it would make sense. But I'm wondering if there's any standard?
    It could also make sense for the references to simply be null.

  • Hashing with double linked list....

    Okay, everything compiles great but I'm getting a NullPointerException upon running the program.
    'line' is a string from a file to let you know that much. 'firstnode', 'nownode', and 'lastnode' are pointers in my array linked list 'anArray'. I know clever names. lol But hey, my professor uses variable names like 'X' 'T' and 'G' all the time, confusing bastard. :-) Anywho... I put a note in the code so you can see where this exception is taking place. Any help is 100% welcomed and appreciated!
         while( line != null )
         int hashindex = hash(line, 20);
         if(firstnode[hashindex] == null)
                 firstnode[hashindex] = nownode[hashindex] = lastnode[hashindex] = new ListNode( line );
         else
                 nownode[hashindex] = new ListNode( line );
    //This line is the exception, if I comment it out, the next line throws it
              anArray[hashindex].CONS(nownode[hashindex], lastnode[hashindex]);
              anArray[hashindex].LCONS(lastnode[hashindex], nownode[hashindex]);
    //If I comment out the 2 lines above this line DOES NOT throw an exception, weird
              lastnode[hashindex] = nownode[hashindex];
         line = input.readLine();
         }

    Okay, here's some more code... Just the top portion of the program. Keep in mind that methods like CONS, LCONS, CDR, and LCDR are just using the ListNode methods such as .ptr and stuff... My professor makes us use this ADT he provided. I can post ALL code if you would like but I dont think all that is necessary.
    static BufferedReader input, console;
    static List hashtable = new List();
    static List[] anArray = new List[20];
    static ListNode[] nownode, firstnode, lastnode;
    static String message = "";
    static int nodecount = 0;
    public static void openFile()
    //Opens the file for input and throws and exception if the file is not there
         File taskFile = new File("prices.txt");
         try
             input = new BufferedReader(new FileReader( taskFile ));
         catch( FileNotFoundException fileNotFoundException )
         outputStuff("Error", "The file does not exist!", "error");
    public synchronized static void setupTable() throws IOException
         firstnode = new ListNode[20];
         nownode = new ListNode[20];
         lastnode = new ListNode[20];
         String line = input.readLine();
         firstnode[0] = nownode[0] = lastnode[0] = new ListNode( line );
         while( line != null )
         hashindex = hash(line, 20);
         if(firstnode[hashindex] == null)
                 firstnode[hashindex] = nownode[hashindex] = lastnode[hashindex] = new ListNode( line );
         else
                 nownode[hashindex] = new ListNode( line );
              anArray[hashindex].CONS(nownode[hashindex], lastnode[hashindex]);
              anArray[hashindex].LCONS(lastnode[hashindex], nownode[hashindex]);
              lastnode[hashindex] = nownode[hashindex];
         line = input.readLine();
         for(int i = 0; i <= 20; i++)
              while( nownode[i] != null)
              message += "String = " + anArray.info( nownode[i], 0 ) + "\tIndex = " + i + "\n";
         nownode[i] = anArray[i].CDR(nownode[i]);
         outputStuff("test", message, "blah");
    }//End setupTable

  • Sorted Double Linked List.

    public class DLinkedList {
    class Node {
    String data;
    Node next = null;
    Node prev = null;
    public Node(String o, Node n, Node p){
    data = o;
    next = n;
    prev = p;
    private int max;
    private Node head;
    private Node current = null;
    public DLinkedList(int max_size) {
    head = null;
    current = null;
    max = max_size;
    public boolean isEmpty() {
    public void insert(String o) {
    Node n;
    while (current != null && o.compareToIgnoreCase(current.data) > 0)
    current.prev = current;
    current = current.next;
    if (current.prev == null)
    // First Item in List
    n = new Node(o, current, null);
    else
    current.prev.next = new Node(o, current, current.prev);
    I am working on the insert and keep getting a null pointer exception. Can someone point me in the right direction.
    Thanks

    if (current.prev == null)
      // First Item in List
      n = new Node(o, current, null);
    }This code right here will cause a NullPointerException if current is still null, which is one of the possible exit conditions in your loop.

  • Double linked list

    Dear Forum
    I have to tables (ENTRY and SECTION) which are linked with each other forth and backward:
    ENTRY to SECTION:
         @ManyToOne(cascade = CascadeType.ALL)
         @JoinColumn(name = "ENTRY_PREV_SEC_ID")
         private Section previousSection;
         @ManyToOne(cascade = CascadeType.ALL)
         @JoinColumn(name = "ENTRY_NEXT_SEC_ID")
         private Section nextSection;
    SECTION to ENTRY:
         @ManyToOne(cascade = CascadeType.ALL)
         @JoinColumn(name = "SEC_NEXT_ENTRY_ID")
    private Entry nextEntry;

    Dear Forum
    I unwillingly posted this thread too early - here is the whole stuff again:
    I have to tables (ENTRY and SECTION) which are linked with each other forth and backward:
    ENTRY to SECTION:
    @ManyToOne(cascade = CascadeType.ALL)
    @JoinColumn(name = "ENTRY_PREV_SEC_ID")
    private Section previousSection;
    @ManyToOne(cascade = CascadeType.ALL)
    @JoinColumn(name = "ENTRY_NEXT_SEC_ID")
    private Section nextSection;
    SECTION to ENTRY:
         @ManyToOne(cascade = CascadeType.ALL)
         @JoinColumn(name = "SEC_PREV_ENTRY_ID")
    private Entry previousEntry;
    @ManyToOne(cascade = CascadeType.ALL)
    @JoinColumn(name = "SEC_NEXT_ENTRY_ID")
    private Entry nextEntry;
    This works with toplink.But for bulk inserts I created a second model without any relationships modeled that is instead of the Classes a Long for the foreign key was annotated.
    But this resulted in an Oracle integrity constraint violation error "parent key not found". How does toplink succeed in avoiding that errors which seem obvious!
    Best regards
    Wolfgang

  • *** glibc detected *** corrupted double-linked list: 0x093c3e18 ***????????

    Hai,
    i got this message at command prompt.
    o/s version : rhel es 4.0
    what was this error. i was running oracle applications on this operating system.
    please advice me

    Hai,
    .......It seems like it iscaused by some programming error.
    hat commands/programs were you executing when seeing
    this error?
    at os level or ??????????/////...
    What commands/programs were you executing when seeing this error?

Maybe you are looking for

  • WebdynproJava Components giving error while migrating from NWDS SP03 toSP09

    Hi, The original DC's were developed in lower NWDS patch level, currently i have upgraded the patch level of NWDS to 09 and importing the Wed Dynpro components from NWDI; but some of the DC's are proper but some are giving error. I tried Project buil

  • Password change request/cant see my icloud or apple TV

    Out of the blue, my apple TV request I input my password, then when I did, it said I input it too many times and to change it (after 1 try) eventually I got on my computer and changed my password, but now my Apple TV still wont let me view anything,

  • SAP QUERY/INFOSET with OUTER JOIN

    Hi, I have created an infoset (SQ02) using two tables for SAP query. Table: AGR_TEXTS. Fields: AGR_NAME, SPRAS, LINE, TEXT. TABLE: AGR_FLAGS. Fields: AGR_NAME, FLAG_TYPE, FLAG_VALUE. Joined these two tables using outer join.  Defined the join conditi

  • How we can get Uppercase Macron entities in XML...

    Hi good morning to everybody, We are currently working in XML job in InDesignCS2 MAC. In the job Times postscript font is the base font. And we need macron entities for this job. In this Times Postscript font special entity characters are not availab

  • Defining a backup strategy

    Hello all, I have to help someone to implement a backup strategy on a database. Before defining the backup strategy I'm doing a document with some questions that the clients needs to answer, so I can recommend the most adequate backup strategy. I wil