Hierarchical clustering is a method of cluster analysis which seeks to build a hierarchy of clusters. It is commonly used in bioinformatics and genomics to group genes or samples that exhibit similar expression patterns. This method involves either a bottom-up approach (agglomerative) or a top-down approach (divisive), both of which involve the iterative merging or splitting of clusters based on their similarity.