Java, LinkedList of Strings. Insert in alphabetical order

Posted by user69514 on Stack Overflow See other posts from Stack Overflow or by user69514
Published on 2010-04-24T09:41:06Z Indexed on 2010/04/24 9:43 UTC
Read the original article Hit count: 444

Filed under:
|
|
|

I have a simple linked list. The node contains a string (value) and an int (count).

In the linkedlist when I insert I need to insert the new Node in alphabetical order. If there is a node with the same value in the list, then I simply increment the count of the node.

I think I got my method really screwed up.

 public void addToList(Node node){
        //check if list is empty, if so insert at head
        if(count == 0 ){
            head = node;
            head.setNext(null);
            count++;
        }
        else{
            Node temp = head;
            for(int i=0; i<count; i++){
                //if value is greater, insert after
                if(node.getItem().getValue().compareTo(temp.getItem().getValue()) > 0){
                    node.setNext(temp.getNext());
                    temp.setNext(node);                   
                }
                //if value is equal just increment the counter
                else if(node.getItem().getValue().compareTo(temp.getItem().getValue()) == 0){
                    temp.getItem().setCount(temp.getItem().getCount() + 1);
                }
                //else insert before
                else{
                    node.setNext(temp);
                }
            }
        }      

    }

© Stack Overflow or respective owner

Related posts about java

Related posts about linkedlist