![]() |
|
|
|||||||
| The Gas Chamber Enter at your own risk ... let off some steam and vent some of that e-anger. Keep the flames low and lay off the noobs. If you're going to be easily offended then don't come to this forum cause someone will probably hurt your fragile feelings. Since spam is moderately tolerated your post count won't increase. READ THE RULES FIRST and don't whine because you've been warned. |
|
|
LinkBack | Thread Tools |
|
|
#4 (permalink) | |
|
Bleach Ranked
(24) Captain-Commander
|
If you take Computer Science.
// ************************************************** ** // Reference-based implementation of ADT list. // ************************************************** ** public class ListReferenceBased implements ListInterface { // reference to linked list of items private Node head; private int numItems; // number of items in list public ListReferenceBased() { numItems = 0; head = null; } // end default constructor public boolean isEmpty() { return numItems == 0; } // end isEmpty public int size() { return numItems; } // end size private Node find(int index) { // -------------------------------------------------- // Locates a specified node in a linked list. // Precondition: index is the number of the desired // node. Assumes that 1 <= index <= numItems+1 // Postcondition: Returns a reference to the desired // node. // -------------------------------------------------- Node curr = head; for (int skip = 1; skip < index; skip++) { curr = curr.getNext(); } // end for return curr; } // end find public Object get(int index) throws ListIndexOutOfBoundsException { if (index >= 1 && index <= numItems) { // get reference to node, then data in node Node curr = find(index); Object dataItem = curr.getItem(); return dataItem; } else { throw new ListIndexOutOfBoundsException( "List index out of bounds exception on get"); } // end if } // end get public void add(int index, Object item) throws ListIndexOutOfBoundsException { if (index >= 1 && index <= numItems+1) { if (index == 1) { // insert the new node containing item at // beginning of list Node newNode = new Node(item, head); head = newNode; } else { Node prev = find(index-1); // insert the new node containing item after // the node that prev references Node newNode = new Node(item, prev.getNext()); prev.setNext(newNode); } // end if numItems++; } else { throw new ListIndexOutOfBoundsException( "List index out of bounds exception on add"); } // end if } // end add public void remove(int index) throws ListIndexOutOfBoundsException { if (index >= 1 && index <= numItems) { if (index == 1) { // delete the first node from the list head = head.getNext(); } else { Node prev = find(index-1); // delete the node after the node that prev // references, save reference to node Node curr = prev.getNext(); prev.setNext(curr.getNext()); } // end if numItems--; } // end if else { throw new ListIndexOutOfBoundsException( "List index out of bounds exception on remove"); } // end if } // end remove public void removeAll() { // setting head to null causes list to be // unreachable and thus marked for garbage // collection head = null; numItems = 0; } // end removeAll } // end ListReferenceBased
__________________
Quote:
My Brawl Friend Code is 1848-3184-0718 |
|
|
|
|
|
|
#6 (permalink) | |
|
Bleach Ranked
(24) Captain-Commander
|
If you're in High School, I don't know if you'll have to worry about it much. I was blissfully unaware of their existence until my second semester of college. Screw nodes. I'll use an ArrayList.
__________________
Quote:
My Brawl Friend Code is 1848-3184-0718 |
|
|
|
|
|
|
#8 (permalink) | |
|
Beyond Birthday
Join Date: Sep 2004
Location: Surrounded by dickgirls
Posts: 1,655
Rep Power: 46
|
Quote:
__________________
"Words don't exist so that we can tell the truth; they exist so that we can conceal the truth" - ZOMBIEPOWDER. Volume 02 |
|
|
|
|
|
|
#10 (permalink) | |
|
Bleach Ranked
(24) Captain-Commander
|
That's just a class someone else made having to do with Nodes. If you look at the comments, it explains what's going on.
Once you learn the gist of Computer Science, it's fun.
__________________
Quote:
My Brawl Friend Code is 1848-3184-0718 |
|
|
|
|
|
|
#14 (permalink) | |
|
Bleach Ranked
(21) Onmitsukido Leader
Join Date: Nov 2007
Location: Sitting on the roof, staring at the bright cresent moon...
Posts: 1,682
Rep Power: 27
|
Quote:
AH! I see what you need to do: .setList = null; Problem solved.
__________________
|
|
|
|
|
|
|
#15 (permalink) | |
|
Bleach Ranked
(24) Captain-Commander
|
I suppose you could look at it that way. There is always a pattern, a structure, a purpose, however. Look a little deeper.
Edit: Eliwood, you and your never-ending node novity knowledge have failed this time! For this is the ListReferenceBased Class! HAHAHAHA! TRIUMPH! TRIUMPH!
__________________
Quote:
My Brawl Friend Code is 1848-3184-0718 |
|
|
|
|