Applications Of Depth First Search