📄 8_2.htm
字号:
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb_2312-80">
<META NAME="Generator" CONTENT="Microsoft Word 97">
<TITLE>第 2 章 线性表</TITLE>
</HEAD>
<BODY>
<B><FONT SIZE=3><P ALIGN="JUSTIFY">2. </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>折半查找的算法</P>
</FONT><FONT SIZE=3><P ALIGN="JUSTIFY">int </B> Search_Seq ( SSTable ST, KeyType key ) </FONT><B><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>{</P>
</B><P ALIGN="JUSTIFY">	</FONT><FONT SIZE=3>// </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>在有序表</FONT><FONT SIZE=3> <I>ST</I> </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>中折半查找其关键字等于</FONT><FONT SIZE=3> <I>key</I> </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>的数据元素。</P>
</FONT><FONT SIZE=3><P ALIGN="JUSTIFY">// </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>如果找到,则函数值为该元素在表中的位置,否则为</FONT><FONT SIZE=3> 0</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>。</P>
</FONT><FONT SIZE=3><P ALIGN="JUSTIFY"> low = 1;	high = ST.length;					// </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>置区间初值</P>
</FONT><FONT SIZE=3><P ALIGN="JUSTIFY"> <B>while</B> ( low <= high ) </FONT><B><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>{</P>
</B><P ALIGN="JUSTIFY">		</FONT><FONT SIZE=3>mid = ( low + high ) / 2;</P>
<P ALIGN="JUSTIFY">		<B>if</B> ( key = ST.elem[mid].key ) <B>return</B> mid;		// </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>找到待查记录</P>
<P ALIGN="JUSTIFY">		</FONT><B><FONT SIZE=3>else if</B> ( key < ST.elem[mid].key )</P><DIR>
<P ALIGN="JUSTIFY"> high = mid – 1;							// </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>继续在前半区间进行查找</P></DIR>
<P ALIGN="JUSTIFY">		</FONT><B><FONT SIZE=3>else</B> low = mid + 1;							// </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>继续在后半区间进行查找</P>
<P ALIGN="JUSTIFY">	</FONT><FONT SIZE=3> </FONT><B><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>}</B></FONT><FONT SIZE=3> // while </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>结束</P>
</FONT><FONT SIZE=3><P ALIGN="JUSTIFY"> <B>return</B> 0;									// </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>有序表中不存在待查记录</P>
<B><P ALIGN="JUSTIFY">}</B></FONT><FONT SIZE=3> //Search_Bin</P></FONT></BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -