멘붕... 

말로 설명해놓고 소스를 짜라는데

검색해도 안나오고.. 도움좀 부탁드려봅니다.

DepthFirstSearch(Origin, Destination)
{
        S.Create();                                                                //새로운 스택 만들기
        Mark All Nodes as Unvisited;                                        //일단 모든 도시를 안 가본 도시로 표시
        S.Push();                                                                        //출발지를 푸시
        Mark Origin as Visited;                                                //푸시된 도시는 가본 것으로 표시
        while(!S.IsEmpty() && Destination != S.GetTop())
        {
                if(All Adjacent Cities Are visited)                         //스택 탑의 인접도시가 모두 가 본 도시이면
                        S.Pop();                                                        //이전 도시로 되돌아 감
                else{
                        Select a New City C;
                        S.Push(C);                                                //새로운 도시를 선택해서 푸쉬
                        Mark C as Visited;                                        //그 도시를 가본 도시로 표시
                }
        }
        if(S.IsEmpty())
                return "No";                                                        //스택이 비어서 빠져나오면
        else                                                                                //가는 길 없다고 대답
                return "Yes";                                                        //현재의 스택 탑이 목적지와 일치하면
}                                                                                        //가는 길 있다고 대답


이해안되는게

가본도시 표시하기. 재방문 회피.
백트래킹. 더이상 갈곳없을때 백트래킹 하는법.

ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ 

검색해도 소스가 안나오넹. 
책에도 없어. 자료구조책인데 없어