data-structure-with-c-zero-to-hero