Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package linkedlist;
- public class LinkList {
- private Node head;
- private int listCount;
- // LinkedList constructor
- public LinkList() {
- // this is an empty list, so the reference to the head node
- // is set to a new node with no data
- head = new Node(null);
- listCount = 0;
- }
- public void add(Object data) // appends the specified element to the end of this list.
- {
- Node temp = new Node(data);
- Node current = head;
- // starting at the head node, crawl to the end of the list
- System.out.println("belep");
- while (current.getNext() != null) {
- System.out.println("bent van");
- current = current.getNext();
- }
- // the last node's "next" reference set to our new node
- current.setNext(temp);
- listCount++;// increment the number of elements variable
- }
- public void add(Object data, int index) // inserts the specified element at the specified position in this list
- {
- Node temp = new Node(data);
- Node current = head;
- // crawl to the requested index or the last element in the list,
- // whichever comes first
- for (int i = 1; i < index && current.getNext() != null; i++) {
- current = current.getNext();
- }
- // set the new node's next-node reference to this node's next-node
- // reference
- temp.setNext(current.getNext());
- // now set this node's next-node reference to the new node
- current.setNext(temp);
- listCount++;// increment the number of elements variable
- }
- public Object get(int index) // returns the element at the specified position in this list.
- {
- // index must be 1 or higher
- if (index <= 0) {
- return null;
- }
- Node current = head.getNext();
- for (int i = 1; i < index; i++) {
- if (current.getNext() == null) {
- return null;
- }
- current = current.getNext();
- }
- return current.getData();
- }
- public boolean remove(int index) // removes the element at the specified position in this list.
- {
- // if the index is out of range, exit
- if (index < 1 || index > size()) {
- return false;
- }
- Node current = head;
- for (int i = 1; i < index; i++) {
- if (current.getNext() == null) {
- return false;
- }
- current = current.getNext();
- }
- current.setNext(current.getNext().getNext());
- listCount--; // decrement the number of elements variable
- return true;
- }
- public int size() // returns the number of elements in this list.
- {
- return listCount;
- }
- @Override
- public String toString() {
- Node current = head.getNext();
- String output = "";
- while (current != null) {
- output += "[" + current.getData().toString() + "]";
- current = current.getNext();
- }
- return output;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement