python中用队列模拟递归(广度遍历)

Posted 飞飞阿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中用队列模拟递归(广度遍历)相关的知识,希望对你有一定的参考价值。

用队列模拟递归(广度遍历)
import os
import collections

def getAllDirQU(path):
queue=collections.deque()
#进队
queue.append(path)

while len(queue)!=0:
#出队数据
dirPath=queue.popleft()
#找出dirPath所有的文件
filesList=os.listdir(dirPath)

for fileName in filesList:
#绝对路径
fileAbsPath=os.path.join(dirPath,fileName)
#判断是否是目录,是目录就进队,不是就打印
if os.path.isdir(fileAbsPath):
print("目录:"+fileName)
else:
print("普通文件:"+fileName)

getAllDirQU(r"D:fPythonpycharm234")

以上是关于python中用队列模拟递归(广度遍历)的主要内容,如果未能解决你的问题,请参考以下文章

队列模拟递归遍历目录(广度遍历)

binarytree二叉树节点BFS广度优先搜索遍历,基于队列,非递归,python

广度优先遍历和深度优先遍历的真正区别

Python二叉树的三种深度优先遍历

深度遍历与广度遍历

binarytree二叉树节点BFS广度优先搜索遍历,递归,python