第一种方法转自别人的博客:
1.桟初始化
2.输出起始顶点;起始顶点改为“已访问”标志;将起始顶点进桟;
3.重复下列操作直到桟为空:
3.1取桟顶元素顶点;(注意不出桟)
3.2桟顶元素顶点存在未访问过的邻接节点w:
3.2.1输出顶点w
3.2.2将顶点w改为“已访问”标志
3.2.3将顶点w进桟
3.3否则,当前顶点出桟
第二种方法:
1.桟初始化
2.输出起始顶点;起始顶点改为“已访问”标志;将起始顶点进桟;
3.重复下列操作直到桟为空:
3.1取桟顶元素顶点,并且出栈
3.2重复操作,直到桟顶元素顶点不存在未访问过的邻接节点w:
3.2.1输出顶点w
3.2.2将顶点w改为“已访问”标志
3.2.3将顶点w进桟
在记录路径的时候,第一种方法可以用一个list来存储路径的位置,但是第二种方法在存储路径的时候,必须把路径存储在节点之中,可以在每个节点建立一个链表或list来表示经过的路径。