import java.util.*; public class ListChain implements Collection { ChainLink firstElement; ChainLink lastElement; @Override public boolean add(E e) { if (firstElement == null) { firstElement = new ChainLink(e); lastElement = firstElement; } else { ChainLink newElement = new ChainLink(e); lastElement.setNext(newElement); lastElement = newElement; } return true; } @Override public boolean addAll(Collection c) { // TODO Auto-generated method stub return false; } @Override public void clear() { firstElement = null; lastElement = null; } @Override public boolean contains(Object o) { // TODO Auto-generated method stub return false; } @Override public boolean containsAll(Collection c) { // TODO Auto-generated method stub return false; } @Override public boolean isEmpty() { // TODO Auto-generated method stub return false; } @Override public Iterator iterator() { // TODO Auto-generated method stub return null; } @Override public boolean remove(Object o) { return false; } public boolean remove(int n) { ChainLink prev = firstElement; for (int i = 0; i < n-1; i++) { if (prev.getNext() != null) { prev = prev.getNext(); } else { return false; } } ChainLink toRemove = prev.getNext(); if (toRemove.getNext() == null) return false; prev.setNext(toRemove.getNext()); toRemove = null; return true; } public E get(int n) { ChainLink e = firstElement; for (int i = 0; i < n; i++) { if (e.getNext() != null) { e = e.getNext(); } } return e.getValue(); } @Override public boolean removeAll(Collection c) { // TODO Auto-generated method stub return false; } @Override public boolean retainAll(Collection c) { // TODO Auto-generated method stub return false; } @Override public int size() { // TODO Auto-generated method stub return 0; } @Override public Object[] toArray() { // TODO Auto-generated method stub return null; } @Override public T[] toArray(T[] a) { // TODO Auto-generated method stub return null; } }