Files
ortools-clone/docs/cpp_graph/connectivity_8h_source.html

78 lines
36 KiB
HTML
Raw Normal View History

2019-06-13 15:36:14 +02:00
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>OR-Tools</title>
<meta http-equiv="Content-Type" content="text/html;"/>
<meta charset="utf-8"/>
<!--<link rel='stylesheet' type='text/css' href="https://fonts.googleapis.com/css?family=Ubuntu:400,700,400italic"/>-->
2019-06-20 23:08:48 +02:00
<link rel="stylesheet" type="text/css" href="ortools.css" title="default" media="screen,print" />
2019-06-13 15:36:14 +02:00
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
</head>
<body>
<div id="banner-container">
<div id="banner">
2019-06-29 18:18:08 +02:00
<span id="sfml">OR-Tools 7.2</span>
2019-06-13 15:36:14 +02:00
</div>
</div>
2019-06-29 18:18:08 +02:00
<link rel="icon" href="https://developers.google.com/optimization/images/orLogo.png">
2019-06-13 15:36:14 +02:00
<div id="content">
<!-- Generated by Doxygen 1.8.15 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
</div><!-- top -->
2019-07-12 13:25:23 -07:00
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('connectivity_8h_source.html','');});
/* @license-end */
</script>
<div id="doc-content">
2019-06-13 15:36:14 +02:00
<div class="header">
<div class="headertitle">
<div class="title">connectivity.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="connectivity_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">// Copyright 2010-2018 Google LLC</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment">// Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment">// you may not use this file except in compliance with the License.</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment">// You may obtain a copy of the License at</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">// http://www.apache.org/licenses/LICENSE-2.0</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment">// Unless required by applicable law or agreed to in writing, software</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">// distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment">// See the License for the specific language governing permissions and</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment">// limitations under the License.</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment">// Graph connectivity algorithm for undirected graphs.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment">// Memory consumption: O(n) where m is the number of arcs and n the number</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment">// of nodes.</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment">// TODO(user): add depth-first-search based connectivity for directed graphs.</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment">// TODO(user): add depth-first-search based biconnectivity for directed graphs.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#ifndef OR_TOOLS_GRAPH_CONNECTIVITY_H_</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#define OR_TOOLS_GRAPH_CONNECTIVITY_H_</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#include &quot;ortools/base/integral_types.h&quot;</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &quot;ortools/base/logging.h&quot;</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</sp
<div class="ttc" id="classoperations__research_1_1ConnectedComponents_html_afcf39280b3d8dad94c80e2977415acac"><div class="ttname"><a href="classoperations__research_1_1ConnectedComponents.html#afcf39280b3d8dad94c80e2977415acac">operations_research::ConnectedComponents::ConnectedComponents</a></div><div class="ttdeci">ConnectedComponents()</div><div class="ttdef"><b>Definition:</b> <a href="connectivity_8h_source.html#l00069">connectivity.h:69</a></div></div>
<div class="ttc" id="namespaceutil_html_ae76339cb2dcd3bc05ad762146f91fdda"><div class="ttname"><a href="namespaceutil.html#ae76339cb2dcd3bc05ad762146f91fdda">util::Graph</a></div><div class="ttdeci">ListGraph Graph</div><div class="ttdoc">Defining the simplest Graph interface as Graph for convenience.</div><div class="ttdef"><b>Definition:</b> <a href="graph_8h_source.html#l02358">graph.h:2358</a></div></div>
<div class="ttc" id="classoperations__research_1_1ConnectedComponents_html_abe650442ae4ce0a544245721946abb89"><div class="ttname"><a href="classoperations__research_1_1ConnectedComponents.html#abe650442ae4ce0a544245721946abb89">operations_research::ConnectedComponents::GetNumberOfConnectedComponents</a></div><div class="ttdeci">NodeIndex GetNumberOfConnectedComponents()</div><div class="ttdoc">Returns the number of connected components.</div><div class="ttdef"><b>Definition:</b> <a href="connectivity_8h_source.html#l00129">connectivity.h:129</a></div></div>
<div class="ttc" id="classoperations__research_1_1ConnectedComponents_html_a8de720dd960dc6e2e831bb27c3500466"><div class="ttname"><a href="classoperations__research_1_1ConnectedComponents.html#a8de720dd960dc6e2e831bb27c3500466">operations_research::ConnectedComponents::MergeClasses</a></div><div class="ttdeci">void MergeClasses(NodeIndex node1, NodeIndex node2)</div><div class="ttdoc">Merges the equivalence classes of node1 and node2.</div><div class="ttdef"><b>Definition:</b> <a href="connectivity_8h_source.html#l00138">connectivity.h:138</a></div></div>
<div class="ttc" id="classoperations__research_1_1ConnectedComponents_html_aa3cdc15d5fad9ed6672bd4e436d987dd"><div class="ttname"><a href="classoperations__research_1_1ConnectedComponents.html#aa3cdc15d5fad9ed6672bd4e436d987dd">operations_research::ConnectedComponents::GetClassRepresentative</a></div><div class="ttdeci">NodeIndex GetClassRepresentative(NodeIndex node)</div><div class="ttdoc">Returns the equivalence class representative for node.</div><div class="ttdef"><b>Definition:</b> <a href="connectivity_8h_source.html#l00123">connectivity.h:123</a></div></div>
<div class="ttc" id="classoperations__research_1_1ConnectedComponents_html_a2b3b54f216c61506eaaace2d29819f79"><div class="ttname"><a href="classoperations__research_1_1ConnectedComponents.html#a2b3b54f216c61506eaaace2d29819f79">operations_research::ConnectedComponents::AddArc</a></div><div class="ttdeci">void AddArc(NodeIndex tail, NodeIndex head)</div><div class="ttdoc">Adds the information that NodeIndex tail and NodeIndex head are connected.</div><div class="ttdef"><b>Definition:</b> <a href="connectivity_8h_source.html#l00083">connectivity.h:83</a></div></div>
<div class="ttc" id="classoperations__research_1_1ConnectedComponents_html_a37aff82e0d7503f2dda86e1211cc89af"><div class="ttname"><a href="classoperations__research_1_1ConnectedComponents.html#a37aff82e0d7503f2dda86e1211cc89af">operations_research::ConnectedComponents::CompressPath</a></div><div class="ttdeci">NodeIndex CompressPath(NodeIndex node)</div><div class="ttdoc">Compresses the path for node.</div><div class="ttdef"><b>Definition:</b> <a href="connectivity_8h_source.html#l00106">connectivity.h:106</a></div></div>
<div class="ttc" id="classoperations__research_1_1ConnectedComponents_html"><div class="ttname"><a href="classoperations__research_1_1ConnectedComponents.html">operations_research::ConnectedComponents</a></div><div class="ttdoc">Template class implementing a Union-Find algorithm with path compression for maintaining the connecte...</div><div class="ttdef"><b>Definition:</b> <a href="connectivity_8h_source.html#l00067">connectivity.h:67</a></div></div>
2019-06-13 15:51:12 +02:00
<div class="ttc" id="namespaceoperations__research_html"><div class="ttname"><a href="namespaceoperations__research.html">operations_research</a></div><div class="ttdoc">Licensed under the Apache License, Version 2.0 (the &quot;License&quot;); you may not use this file except in c...</div><div class="ttdef"><b>Definition:</b> <a href="christofides_8h_source.html#l00033">christofides.h:33</a></div></div>
2019-06-13 15:36:14 +02:00
<div class="ttc" id="classoperations__research_1_1ConnectedComponents_html_a2d8283743a52c2e331309c33c798b23c"><div class="ttname"><a href="classoperations__research_1_1ConnectedComponents.html#a2d8283743a52c2e331309c33c798b23c">operations_research::ConnectedComponents::Init</a></div><div class="ttdeci">void Init(NodeIndex num_nodes)</div><div class="ttdoc">Reserves memory for num_nodes and resets the data structures.</div><div class="ttdef"><b>Definition:</b> <a href="connectivity_8h_source.html#l00072">connectivity.h:72</a></div></div>
<div class="ttc" id="namespaceoperations__research_html_a0e629e35bfa311b31dd7f5065eb834bb"><div class="ttname"><a href="namespaceoperations__research.html#a0e629e35bfa311b31dd7f5065eb834bb">operations_research::NodeIndex</a></div><div class="ttdeci">int32 NodeIndex</div><div class="ttdoc">Standard instantiation of ForwardEbertGraph (named 'ForwardStarGraph') of EbertGraph (named 'StarGrap...</div><div class="ttdef"><b>Definition:</b> <a href="ebert__graph_8h_source.html#l00192">ebert_graph.h:192</a></div></div>
</div><!-- fragment --></div><!-- contents -->
2019-07-12 13:25:23 -07:00
</div><!-- doc-content -->
2019-06-13 15:36:14 +02:00
</div>
<div id="footer-container">
<div id="footer">
</div>
</div>
</body>
</html>