# Linked List project in Java | Addition at specific index | Reverse List | Remove Sorted and UnSorted

Java Code Extension

Add the following methods to the list class on the file:

The method adds an item at a given position. The head has position 1, second item has position 2, etc.

The method removes all copies of the given item, assuming the list is sorted.

For example, if you have a list (1, 2, 2, 2, 3, 4)

And you remove 2

So, the output for this method will be (1, 3, 4)

The method removes all copies of the given item, assuming the list is not sorted.

For example, if you have a list (2, 3, 4, 2, 1, 2)

And you remove 2

So, the output for this method will be (3, 4, 1)

The method reverses the list. For a sorted list, reversal would result in a list reversely sorted.

For example, if you have a sorted list (1, 2, 3, 4, 5, 6)

So, the output for this method will be (6, 5, 4, 3, 2, 1)

For implementation, make sure that you use no existing methods to help. For example, if you use existing method “remove” to help, then “removeAll” would become trivial to implement as repeatedly calling “remove” would do.

Add the following methods to the list class on the file:

**public void addAt(int position, T item)**The method adds an item at a given position. The head has position 1, second item has position 2, etc.

**public void removeAllSorted(T item)**The method removes all copies of the given item, assuming the list is sorted.

For example, if you have a list (1, 2, 2, 2, 3, 4)

And you remove 2

So, the output for this method will be (1, 3, 4)

**public void removeAllUnsorted(T item)**The method removes all copies of the given item, assuming the list is not sorted.

For example, if you have a list (2, 3, 4, 2, 1, 2)

And you remove 2

So, the output for this method will be (3, 4, 1)

**public void reverseList()**The method reverses the list. For a sorted list, reversal would result in a list reversely sorted.

For example, if you have a sorted list (1, 2, 3, 4, 5, 6)

So, the output for this method will be (6, 5, 4, 3, 2, 1)

For implementation, make sure that you use no existing methods to help. For example, if you use existing method “remove” to help, then “removeAll” would become trivial to implement as repeatedly calling “remove” would do.

You'll get 1 file (4.1KB)