public boolean delete(E e) {
		if (first == null) {
			return false;
		}
		LinkedNode<E> current = first;
		LinkedNode<E> previous = null;
		while (current != null) {
			if (current.value.compareTo(e) == 0) {
				if (previous == null) {
					first = current.next;
				} else {
					previous.next = current.next;
				}
				size--;
				return true;
			}
			previous = current;
			current = current.next;
		}
		return false;
	}