The idea of link list can be understood better with the following example:
Suppose Initially there is no data in the memory (RAM):

Fig. 0: Nomenclature used with reference to memory

Fig. 1: Initially empty memory (RAM)
int a;
Considering, our compiler takes 2 Bytes to store an integer value, after allocating memory to this data variable, memory may look like:

Fig. 2: Memory view after allocation of an integer
Now, suppose we have another instruction in our program as:
int b[3];
In the above statement, we are storing 3 integers in contiguous manner, (whose starting address is accessed by “array”).
The memory will look like:

Fig. 3: Memory view, after allocation of an array
The address of 2nd element will be b+2 bytes => b[1] = b+1 = 1+b = 1[b]. In programming languages like C/C++, compiler automatically performs b[1] = b+1 = b + 2 bytes (as this array is of type integer and an integer takes 2 bytes of memory).
Similarly, if the array is of type char (char c[2]), the compiler interprets c[1] as, c+1 = address of c + 1 bytes (assuming a char takes 1 bytes of memory).
In case of array, sufficient contiguous memory must be available to accommodate all the variables. If the system has memory as shown in fig. 4, it is not possible to store an array of 3 integers because of unavailability of contiguous memory.

Fig. 4: Memory view at some point of time

Fig. 5: Allocating 5 integers in non-contiguous manner

Fig. 6: Linked allocation of memory
Example: to store 3 integer values using non-contiguous memory allocation. It will look like:

Fig. 7: Linked List, memory view
Some important points about Link List
- The name link list comes from this concept: List means a node (data + address to next element) and all the nodes are connected with links (addresses).
- To access any node/element of link list, one has to traverse from the 1st element (start) up to the desired element (because we have the address of the 1st element/start of the link list ==> Link list is a linear data structure (means we can traverse elements in a linear manner only).
To further understand the Link List concept from the implementation point of view please click here.