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

Similar Messages

  • Hashing With Double Linked Chaining

    sigh I need to be enlightened in this field. I googled hashing/hash tables and read many sites on the subject... I still dont grasp them that well.
    Anyone able to help me out with hashing?
    Also, is double linked chaining the same as a double linked list?

    Okay, well here's the assignment word for word...
    Project V. Hashing With Double Linked Chaining
    Due Date is on/before noon on December 3, 2004
    Use the List ADT in the CODE folder to implement all project components.
    1. Include algorithm documentation in the head of each method.
    2. Implement an algorithm as a method or set of methods to load the data in a hash table with double linked chaining for data that map onto the same table cell. Load the information from a hard disk file called INFO.DAT into the table H. The data stored as one number per record in INFO.DAT are 32, 18, 20, 10, 226, 172, 50, 456, 691, 30, 100, 80, 340, 234, 349, 986, 234, 198, 275, 384.
    3. Implement an algorithm as methods to search for keys from the hard disk file INFOKEY.DAT in table H. The data stored as one number per record in INFOKEY.DAT are 2, 691, 234, 1000, 10.
    Post all the output in a GUI dialog box as sentences with one key per line. Implement methods to display error messages for possible errors.
    4. Implement an algorithm as methods to delete a key K from H. Mark the key with a delete tag and report the key deleted.
    My professor cannot teach material at all, he has poor communication skills. So all the previous assignments I just looked online and found help from people that have lots of experience in this.
    I'm sure I can code the assignment and complete it if I only knew what it was asking. Can anyone make anything of this?

  • [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

  • 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.

  • 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

  • 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.

  • 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 );     
         }

  • 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.

  • Help with Library link lists ..

    Hi ,
    I am working with Scott Mazur on a incorporating 8.1.7 in our code bace for our next product release. I am having problems with defining the library link list needed for builds. In the documentation it makes referance to $ORACLE_HOME/precomp/demo/proc which I cannot find. I have installed the 8.1.7 on 3 platforms (Solaris, AIX and NT ) and none of the system have this information. Can you please point me to where I may find some help in this area. We are in a critical path right now so I would appreciate any help you could give me. The sooner the better.
    Thank you for your time and help ,
    Cheryl Pollock
    Lockheed Martin Global Telecommunications .
    Formtek
    Pittsburgh office .
    (412) 937-4970
    null

    You actually shouldn't try to get the library link lists directly. Rather, you should use the $ORACLE_HOME/rdbms/demo/demo_rdbms.mk makefile like this:
    make -f $ORACLE_HOME/rdbms/demo/demo_rdbms.mk build EXE=yourexecutable OBJS="object list"
    where yourexecutable is the name for your executable and the OBJS= includes a quoted list of all your object and library files.
    null

  • Hi i need help with my linked list

    hello
    im having trouble with my list
    this is where i create the studentlinked list. within my constructor for my college.
    public class MyCollege {
         private int capacity;
         public MyCollege(){
              StudentLinkedList studentList = new StudentLinkedList();
         }now my problem is in my add student method
    here it is.
    at the end of the method where i add the student to the linked list (studentList.add(aStudent);)is my problem. it says that studentList cannot be resolved.
    i understand that it cant find studentList. but i am creating it.
    why isnt it working???????????????????
    public static void main(String[] args) {
              MyCollege mc1 = new MyCollege();
         public void addStudent(int i){
              try{
                   Student aStudent = new Student();
                   String name,studentNumber, programmeCode;
                   int yearBegan;
                   if(i < capacity){
                        // this defines the buffer that will hold the data to be input
                        BufferedReader theDataStream;
                        theDataStream = new BufferedReader(new InputStreamReader(System.in));
                        //enter the details of the student
                        System.out.println("Enter in the name of the student followed by their student number");
                        System.out.println("followed by the year they began in the college a and then the course code");
                        System.out.println(" hit enter after each one");
                        name = theDataStream.readLine();
                        studentNumber = theDataStream.readLine();
                        yearBegan = Integer.parseInt(theDataStream.readLine());
                        programmeCode = theDataStream.readLine();
                        aStudent.setName(name);
                        aStudent.setStudentNumber(studentNumber);
                        aStudent.setYearBegan(yearBegan);
                        aStudent.setProgrammeCode(programmeCode);
                        studentList.add(aStudent);
                   }//end if
              }//end try
              catch(IOException e) {
                   System.out.println(e.getMessage());
         }

    cheers got it striaght away
         private int capacity;
         private StudentLinkedList studentList;
         

Maybe you are looking for

  • Print HTML File Without Showing on Screen

    Hi Everyone Is there a way to print a file (in particular, an html file) from a java app without actually displaying the file on the screen. ie. print from command line. I am creating an html file from within java app and would like to print it in on

  • -69 Error Message After Update

    Has anyone else gotten the -69 error message since they downloaded the most recent update? I can't get any of my new downloads (movies or music) to transfer from the computer to my IPOD. I'm very frustrated and would appreciate any help that you can

  • Password protecting a gallery?

    Hello all, This is my first post in the Apple support discussions! I was wondering if there is a way to password a specific gallery in iWeb '08, and not the whole site? I'm a photographer and would like to be able to have client specific galleries th

  • Sort Images in Table

    Hi, I have  a coulm of images in table . and if i click on the header of that coulm , i should get it sorted..is there any way to sort images in coulmn.. Thanks in advance for a quick answer.. Regards AD

  • How to backup or archive a particular Container or Library?

    Hi, Is there a way to export a library or container such that it can use as a form of backup for recovery later in a disaster or to move to another server (eg. dev instance) ?? Thanks Steve