In the chaining approach, the hash table is an array of linked lists i.e., each index has its own linked list.
All key-value pairs mapping to the same index will be stored in the linked list of that index.
Through chaining, insertion in a hash table always occurs in O(1) since linked lists allow insertion in constant time.
Theoretically, a chained hash table can grow infinitely as long as there is enough space.
A hash table which uses chaining will never need to be resized.