如何提高遍历文件夹的速度?!

画夕颜 2020-01-20 06:24:59
目前只知道一个递归扫描,一个非递归扫描,两者速度貌似差不多,只是后者消耗资源少一些。 要怎么样才能提高遍历多层文件夹及文件的速度?
...全文
437 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
刘行之 2020-02-12
  • 打赏
  • 举报
回复 1
非递归和递归之间
1速度。递归函数是在不断的调用本身的函数,一般函数的调用.返回,是比较费时间的,尤其是在递归深度较大时。所以个人觉得非递归的速度较好。
2.空间。递归函数很明显,始终是在入栈,只有在最后才出栈,大量的浪费了堆栈空间。在这一点上非递归肯定要比递归好。
总结。个人认为递归函数只是在程序书写上简单明了,但实际运行个人不看好。
一个是O(N) 一个是O(N*N)
sunyiz 2020-01-21
  • 打赏
  • 举报
回复
如果你能确定目录的最大层数,就能很放心的使用非递归扫描
如果不能确定时,你用非递归的话,那个逻辑写出来其实和递归也差不了多少了
所以其实对于这种“不确定层数”的逻辑,使用递归还是挺便利的
  • 打赏
  • 举报
回复
非递归扫描的速度肯定是要高于递归扫描的

62,628

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧