网站建设资讯

NEWS

网站建设资讯

php遍历树的常用方法有哪些-创新互联

这篇文章主要介绍php遍历树的常用方法有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

成都创新互联公司专业为企业提供未央网站建设、未央做网站、未央网站设计、未央网站制作等企业网站建设、网页设计与制作、未央企业网站模板建站服务,10余年未央做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

具体如下:

一、递归的深度优先的算法:

----------------------- Test run for '.$func.'() ';
  flush();
  $time_start = microtime(true);
  $list = $func($trydir);
  //print_r($list);
  $time = microtime(true) - $time_start;
  echo 'Finished : '.count($list).' files
';   $mem2 = memory_get_peak_usage();   printf('
Max memory for '.$func.'() : %0.2f kbytes Running time for '.$func.'() : %0.f s
',   ($mem2-$mem1)/1024.0, $time);   return $list; } profile('rec_list_files', "D:\www\server"); ?>

二、递归的深度优先的算法(用了一个栈来实现)

----------------------- Test run for '.$func.'() ';
  flush();
  $time_start = microtime(true);
  $list = $func($trydir);
  //print_r($list);
  $time = microtime(true) - $time_start;
  echo 'Finished : '.count($list).' files
';   $mem2 = memory_get_peak_usage();   printf('
Max memory for '.$func.'() : %0.2f kbytes Running time for '.$func.'() : %0.f s
',   ($mem2-$mem1)/1024.0, $time);   return $list; } profile('deep_first_list_files', "D:\www\server"); ?>

三、非递归的广度优先算法(用了一个队列来实现)

 NEXT CHILD
  }
  return $files; // end of tree, file not found
}
function profile($func, $trydir)
{
  $mem1 = memory_get_usage();
  echo '
----------------------- Test run for '.$func.'() ';
  flush();
  $time_start = microtime(true);
  $list = $func($trydir);
  //print_r($list);
  $time = microtime(true) - $time_start;
  echo 'Finished : '.count($list).' files
';   $mem2 = memory_get_peak_usage();   printf('
Max memory for '.$func.'() : %0.2f kbytes Running time for '.$func.'() : %0.f s
',   ($mem2-$mem1)/1024.0, $time);   return $list; } profile('breadth_first_files', "D:\www\server"); ?>

以上是“php遍历树的常用方法有哪些”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


标题名称:php遍历树的常用方法有哪些-创新互联
路径分享:http://njwzjz.com/article/dshdeo.html