Advantages of Linked List :
– Can be expanded in constant time. Dynamic allocation of storage. To create array we must allocate memory for certain number of elements. To add more elements we must create a new array and copy the old array into nw.
Insertion at beginning of linked list is O(1)
Disadvantages of Linked List:
– Access time to individual elements O(n). Array takes O(1)
– Arrays have “Locality in memory”. Arrays are contiguous blocks of memory. Any array element will be physically near its neighbors. This benefits from modern CPU caching mechanisms. Linked List elements can be scattered.
– Linked List are harder to manipulate. You need to change pointers if deleting from middle or end, etc.
– Wasted memory in terms of extra reference points