9_3.htm

来自「《数据结构》所有相关程序的算法。有图、数组以及二叉数的问题。附有程序及结果。」· HTM 代码 · 共 24 行

HTM
24
字号
<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">3. </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>冒泡排序算法</P>
</B><P ALIGN="JUSTIFY">&#9;</FONT><B><FONT SIZE=3>void</B>  BubbleSort ( SqList  <B>&amp;</B>L )  </FONT><B><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>{</P>
</B><P ALIGN="JUSTIFY">&#9;</FONT><FONT SIZE=3>// </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>对顺序表</FONT><FONT SIZE=3> <I>L</I> </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>作冒泡排序。此算法和一趟直接插入排序相比,作了以下修改:</P>
<P ALIGN="JUSTIFY">&#9;</FONT><FONT SIZE=3>//  </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>前后记录为止的增量是</FONT><FONT SIZE=3> <I>dk</I></FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,而不是</FONT><FONT SIZE=3> 1</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>;</P>
<P ALIGN="JUSTIFY">&#9;</FONT><FONT SIZE=3>//  <I>r</I>[0] </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>只是暂存单元,而不是哨兵。当</FONT><FONT SIZE=3> <I>j</I> &lt;= 0 </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>时,插入位置已经找到。</P>
<P ALIGN="JUSTIFY">&#9;</FONT><FONT SIZE=3>  <B>for</B> ( i = 0;  i &lt;=L.length;  ++i )</P>
<P ALIGN="JUSTIFY">&#9;&#9;<B>for</B> ( j = n-2;  j &gt; i;  --j )</P>
</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3><P ALIGN="JUSTIFY">&#9;&#9;</FONT><FONT SIZE=3>  <B>if</B> ( L.r[j+1].key &lt; L.r[j].key )  </FONT><B><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>{&#9;&#9;&#9;</B></FONT><FONT SIZE=3>// </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>交换</P>
<P ALIGN="JUSTIFY">&#9;&#9;&#9;</FONT><FONT SIZE=3>temp = L.r[j+1];</P>
<P ALIGN="JUSTIFY">&#9;&#9;&#9;L.r[j+1] = L.r[j];</P>
<P ALIGN="JUSTIFY">&#9;&#9;&#9;L.r[j] = temp;</P>
<P ALIGN="JUSTIFY">&#9;&#9;  </FONT><B><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>}</B></FONT><FONT SIZE=3> // if </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>结束</P>
<P ALIGN="JUSTIFY">&#9;<B>}</B></FONT><FONT SIZE=3> // BubbleSort</P></FONT></BODY>
</HTML>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?