ArrayList vs LinkedList
ArrayList: Uses a dynamic array, provides fast random access (O(1)), but slow insertions/deletions (O(n)) in the middle due to shifting.
LinkedList: Uses a doubly linked list, allows fast insertions/deletions (O(1)), but slow access (O(n)) as traversal is needed.
When to use?
Use ArrayList for frequent reads & random access.
Use LinkedList for frequent insertions/deletions in the middle.