Very important concepts for Data Structures and algorithms