Array

Linked List

Size of the array is fixed Dynamic size
Less memory required More memory required
Stored in contiguous Memory Locations Stored in non-contiguous Memory Locations
Memory Should be allocated at Compile-Time Memory is allocated at Run-Time
Elements can be modified easily by identifying the index value Complex process for modifying the node
Elements cannot be added, deleted once it is declared Nodes in the linked list can be added and deleted from the list
Directly access any element in an array We can't directly access any element but we need to traverse over the entire list
Shuffling the elements of an array requires more time Shuffling the elements of a linked list requires less time
Access any element in an array take less time Access any element in an array take more time
Arrays can hold only one value at a time It can hold more than one at a time
array in c linked list in c