Private Sub DepthFirstSearchExample()
' Initialize Deque and add top-level directory.
Dim dqDirs As New Deque
dqDirs.StackPush "C:\Entisoft"
' Perform DFS Search for all sub-directories.
Dim strDir As String
Do While dqDirs.StackPop(strDir)
Debug.Print strDir
' Get list of all sub-directories within current directory.
Dim strFile As String
strFile = Dir$(strDir & "\*.*", vbDirectory)
Do Until strFile = ""
If strFile <> "." And strFile <> ".." Then
If GetAttr(strDir & "\" & strFile) And vbDirectory Then
dqDirs.StackPush strDir & "\" & strFile
End If
End If
strFile = Dir$()
Loop
LoopSee also: BreadthFirstSearchExample Topic
Copyright 1996-1999 Entisoft
Entisoft Tools is a trademark of Entisoft.