Mark And Sweep Algorithm