Arrays and Linked Lists both are linear data structures, but they both have some advantages and disadvantages over each other.
One advantage of the linked list is that elements can be added to it indefinitely, while an array will eventually get filled or have to be resized (a costly operation that isn't always possible).
Elements are also easily removed from a linked list whereas removing elements from an array leaves empty spaces that are a waste of computer memory.
Insertion in Array and Linked List
However, unlike arrays which allow random access to the elements contained within them, a link list only allows sequential access to its elements. Linked lists also use more storage space in a computer's memory as each node in the list contains both a data item and a reference to the next node.
It follows that linked lists should be used for large lists of data where the total number of items in the list is changing. Arrays, on the other hand, are better suited to small lists, where the maximum number of items that could be on the list is known.