Backtracking Guide For Data Structures In C