二分查找 扫描文件夹
2016-11-01 14:50
225 查看
/** * 扫描文件夹 * * @author YING * @param void * @return void */ function my_scandir1($dir) { $files = array(); $dir_list = scandir($dir); foreach($dir_list as $file) { if ( $file != ".." && $file != "." ) { //是一个目录 if ( is_dir($dir . "/" . $file) ) { $files[$file] = my_scandir1($dir . "/" . $file); } else { $files[] = $file; } } } return $files; } print_r(my_scandir1("../../Twelve")); sprint_r(scandir("../../Twelve")); /** * 二分查找 * * @author YING * @param void * @return void */ function binarySearch($arr, 4000 $target) { //计算数组长度 $length=count($arr); //数组的最后下标 $end=$length-1; //定义数组开始下标 $start=0; //循环查找 while($start<=$end){ $mid=floor(($end+$start)/2); //计算中间位置 //相等 返回下标 if($arr[$mid]==$target){ return $mid; } //中间值大于目标值 向左走1; if($arr[$mid]>$target){ $end=$end-1; } //中间值小于目标值 向右走1; if($arr[$mid]<$target){ $start=$start+1; } } return -1; //没找到目标 } $arr=array(1,2,3,4,5,6,7,8,9,10,11); print_r(binarySearch($arr,11));
相关文章推荐
- 面试题_二分查找及其变形
- poj 2976 Dropping tests (二分查找)
- c#-二分查找-算法
- ZOJ 3640--Missile【二分查找 && 最大流dinic && 经典建图】
- LintCode-排序列表转换为二分查找树
- POJ 1905 - Expanding Rods(二分查找)
- 随机生成1024个数,用指针进行排序,并实现二分查找
- 二分查找及其变形
- 用python 实现的二分查找:
- Search in Rotated Sorted Array(二分查找)
- 二分查找以及冒泡排序
- hdu 3763 CD(二分查找)
- 一周一个算法(1)二分查找
- 数据结构上机实验之顺序查找(二分查找)
- 3_11_二分查找
- [数据结构]二分查找
- |算法讨论|二分查找 学习笔记
- POJ 3111(二分查找平均值)
- (二分查找思想)从有序递增旋转数组45679123 中找到数字6的位置
- 二分查找及其变种