递归算法
递归的基本思想就是--自己调用自己, 利用递归可以用简单的程序解决复杂的问题.
递归结构包括两个部分:
- 定义递归头: 解决什么时候不调用自身的方法, 如果没有头, 则陷入死循环, 也就是递归借宿的条件
- 递归体:什么时候需要调用自身的方法
1 import os 2 allfiles = [] 3 def getAllFiles(path,level): 4 childFiles = os.listdir(path) 5 for file in childFiles: 6 filepath = os.path.join(path,file) 7 if os.path.isdir(filepath): 8 getAllFiles(filepath,level+1) 9 allfiles.append('\t'*level+filepath) 10 11 getAllFiles('movi',0) 12 for f in reversed(allfiles): 13 print(f)