📄 page579.html
字号:
<HTML><HEAD><TITLE>Implementation</TITLE></HEAD><BODY bgcolor="#FFFFFF"> <a href="../index.html" target="_top"><img src="../icons/usins.gif" alt="Logo" align=right></a><b>Data Structures and Algorithms with Object-Oriented Design Patterns in Python</b><br><A NAME="tex2html7808" HREF="page580.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="../icons/next_motif.gif"></A> <A NAME="tex2html7806" HREF="page578.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="../icons/up_motif.gif"></A> <A NAME="tex2html7800" HREF="page578.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="../icons/previous_motif.gif"></A> <A NAME="tex2html7810" HREF="page611.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="../icons/index_motif.gif"></A> <BR><HR><H3><A NAME="SECTION0016521000000000000000">Implementation</A></H3><P>An implementation of Kruskal's algorithmis shown in Program <A HREF="page579.html#progalgorithmsf"><IMG ALIGN=BOTTOM ALT="gif" SRC="../icons/cross_ref_motif.gif"></A>.The <tt>KruskalsAlgorithm</tt> method takes as its argumentan edge-weighted, undirected graph.This implementation assumes that the edge weights are <tt>int</tt>s.The method computes the minimum-costspanning tree and returns it in the form of an edge-weighted undirected graph.<P><P><A NAME="54638"> </A><A NAME="progalgorithmsf"> </A> <IMG WIDTH=575 HEIGHT=470 ALIGN=BOTTOM ALT="program54635" SRC="img2452.gif" ><BR><STRONG>Program:</STRONG> Kruskal's algorithm.<BR><P><P>The main data structures used by the method area priority queue to hold the edges,a partition to detect cycles and a graph for the result.This implementation uses a <tt>BinaryHeap</tt> (Section <A HREF="page353.html#secpqueuesbinheaps"><IMG ALIGN=BOTTOM ALT="gif" SRC="../icons/cross_ref_motif.gif"></A>)for the priority queue (line 9),a <tt>PartitionAsForest</tt> (Section <A HREF="page403.html#secsetspartitions"><IMG ALIGN=BOTTOM ALT="gif" SRC="../icons/cross_ref_motif.gif"></A>)for the partition (line 12)and a <tt>GraphAsLists</tt> for the spanning tree (line 5).<P><HR><A NAME="tex2html7808" HREF="page580.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="../icons/next_motif.gif"></A> <A NAME="tex2html7806" HREF="page578.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="../icons/up_motif.gif"></A> <A NAME="tex2html7800" HREF="page578.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="../icons/previous_motif.gif"></A> <A NAME="tex2html7810" HREF="page611.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="../icons/index_motif.gif"></A> <P><ADDRESS><img src="../icons/bruno.gif" alt="Bruno" align=right><a href="../copyright.html">Copyright © 2003</a> by <a href="../signature.html">Bruno R. Preiss, P.Eng.</a> All rights reserved.</ADDRESS></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -