<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>waimv.com &#187; 查找</title>
	<atom:link href="http://www.waimv.com/tag/%e6%9f%a5%e6%89%be/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.waimv.com</link>
	<description></description>
	<lastBuildDate>Fri, 09 Nov 2018 10:41:46 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>PHP查找（算法）</title>
		<link>http://www.waimv.com/php/48/</link>
		<comments>http://www.waimv.com/php/48/#comments</comments>
		<pubDate>Sun, 19 Sep 2010 02:13:58 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[查找]]></category>

		<guid isPermaLink="false">http://www.szpian.com/?p=48</guid>
		<description><![CDATA[php 顺序查找]]></description>
			<content:encoded><![CDATA[<p>1顺序查找（算法）</p>
<pre class="brush:php">
//$n为待查找的数组元素的个数，$k为待查找的元素
function seq_sch($array, $n, $k)
{
    $array[$n] = $k;
    for($i=0; $i<$n; $i++)
    {
        if($array[$i]==$k)
        {
    return true;
            break;
        }
    }
    if ($i<$n)   //判断是否到数组的末尾
    {
        return $i;
    }
    else
    {
        return false;
    }
}
$array = array(3, 6, 1, 9, 2, 10);
$n = count($array);
$k = 8;
if(seq_sch($array, $n, $k))
{
echo "顺序查找成功";
}
else
{
echo "顺序查找失败";
}
</pre>
<p>2.实现二分查找（折半查找）算法</p>
<p>二分查找又称折半查找，它是一种效率较高的查找方法。<br />
【二分查找要求】：1.必须采用顺序存储结构 2.必须按关键字大小有序排列。</p>
<pre class="brush:php">
//$k为要查找的关键字（注：待查找的数组元素为奇数个）
function bin_sch($array, $low, $high, $k)
{
    if ($low <= $high)
    {
        $mid = intval(($low+$high)/2);
        if ($array[$mid] == $k)
        {
            return true;
        }
        elseif ($k < $array[$mid])
        {
            return bin_sch($array, $low, $mid-1, $k);
        }
        else
        {
            return bin_sch($array, $mid+1, $high, $k);
        }
    }
    return false;
}
$array = array(1, 2, 4, 6, 8);
$low = min(1, 2, 4, 6, 8);
$high = max(1, 2, 4, 6, 8);
$k = 7;
if(bin_sch($array, $low, $high, $k))
{
echo "二分查找成功";
}
else{
echo "二分查找失败";
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.waimv.com/php/48/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
