顺序查找
程序员文章站
2024-03-17 17:10:28
...
顺序查找就是用数组中的每一个值依次与给定的key值进行比较,如果相等,则查找到。
下面给出两种顺序查找方案:
方案一:
<?php
function search($arr,$key){
for($i = 0;$i < count($arr);$i++){ //遍历该数组
if($arr[$i] == $key){ //数组中的值依次与key值比较,找到则返回数组下标
return $i;
}
}
return -1; //找不到返回-1
}
$arr = array(1,234,4,35,45,62,65,74,43,90);
echo search($arr, 90);
第一种方法,在进行循环遍历数组时会进行两次判断,第一次判断是否与key值相等,第二次判断是否越界。我们通过在数组最后添加一个值,告诉循环,不可能越界,否则就返回-1。
方案二:
<?php
function search($arr, $k) //search函数,$array为数组,$k为要查找的值
{
$n = count($arr); //count函数用于计算数组中的元素个数
$arr[$n] = $k; //新建一个元素,并将k存放进去
for($i=0; $i<$n; $i++) //逐一比较
{
if($arr[$i]==$k)
{
break;
}
}
if ($i<$n) //如果在新元素的前面找到了要找的值,则返回该值
{
return $i;
}
else //否则,返回-1
{
return -1;
}
}
$arr = array(1,234,4,35,45,62,65,74,43,90);
echo search($arr, 90); //调用search函数并输出查找结果
第二种方法是优化之后的顺序查找,运行效率更高。上一篇: JDBC连接的基本步骤
下一篇: unity3d UI性能优化。