Documentation for 6376bf46af

This commit is contained in:
github-actions
2023-09-27 18:42:32 +00:00
parent d28eba1fef
commit b5b4d78981
5708 changed files with 52275 additions and 51112 deletions

View File

@@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.7"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: dsu Class Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.7 -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -115,65 +115,65 @@ Collaboration diagram for dsu:</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a126e3002a464e53cd54b07ba56482a72"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a126e3002a464e53cd54b07ba56482a72">dsu</a> (uint64_t n)</td></tr>
<tr class="memitem:a126e3002a464e53cd54b07ba56482a72" id="r_a126e3002a464e53cd54b07ba56482a72"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a126e3002a464e53cd54b07ba56482a72">dsu</a> (uint64_t n)</td></tr>
<tr class="memdesc:a126e3002a464e53cd54b07ba56482a72"><td class="mdescLeft">&#160;</td><td class="mdescRight">contructor for initialising all data members. <br /></td></tr>
<tr class="separator:a126e3002a464e53cd54b07ba56482a72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16851f78fe390fc1430905c83d6a2f1c"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a16851f78fe390fc1430905c83d6a2f1c">findSet</a> (uint64_t i)</td></tr>
<tr class="memitem:a16851f78fe390fc1430905c83d6a2f1c" id="r_a16851f78fe390fc1430905c83d6a2f1c"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a16851f78fe390fc1430905c83d6a2f1c">findSet</a> (uint64_t i)</td></tr>
<tr class="memdesc:a16851f78fe390fc1430905c83d6a2f1c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method to find the representative of the set to which i belongs to, T(n) = O(1) <br /></td></tr>
<tr class="separator:a16851f78fe390fc1430905c83d6a2f1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ac30c07abca2aaa3b291504c25c3559"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a6ac30c07abca2aaa3b291504c25c3559">UnionSet</a> (uint64_t i, uint64_t j)</td></tr>
<tr class="memitem:a6ac30c07abca2aaa3b291504c25c3559" id="r_a6ac30c07abca2aaa3b291504c25c3559"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a6ac30c07abca2aaa3b291504c25c3559">UnionSet</a> (uint64_t i, uint64_t j)</td></tr>
<tr class="memdesc:a6ac30c07abca2aaa3b291504c25c3559"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method that combines two disjoint sets to which i and j belongs to and make a single set having a common representative. <br /></td></tr>
<tr class="separator:a6ac30c07abca2aaa3b291504c25c3559"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64d25c5986742f7c234ed449b2ff7303"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a64d25c5986742f7c234ed449b2ff7303">isSame</a> (uint64_t i, uint64_t j)</td></tr>
<tr class="memitem:a64d25c5986742f7c234ed449b2ff7303" id="r_a64d25c5986742f7c234ed449b2ff7303"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a64d25c5986742f7c234ed449b2ff7303">isSame</a> (uint64_t i, uint64_t j)</td></tr>
<tr class="memdesc:a64d25c5986742f7c234ed449b2ff7303"><td class="mdescLeft">&#160;</td><td class="mdescRight">A utility function which check whether i and j belongs to same set or not. <br /></td></tr>
<tr class="separator:a64d25c5986742f7c234ed449b2ff7303"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ce2672c570f4235eafddb0c9a58115a"><td class="memItemLeft" align="right" valign="top"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">vector</a>&lt; uint64_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a0ce2672c570f4235eafddb0c9a58115a">get</a> (uint64_t i)</td></tr>
<tr class="memitem:a0ce2672c570f4235eafddb0c9a58115a" id="r_a0ce2672c570f4235eafddb0c9a58115a"><td class="memItemLeft" align="right" valign="top"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">vector</a>&lt; uint64_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a0ce2672c570f4235eafddb0c9a58115a">get</a> (uint64_t i)</td></tr>
<tr class="memdesc:a0ce2672c570f4235eafddb0c9a58115a"><td class="mdescLeft">&#160;</td><td class="mdescRight">prints the minimum, maximum and size of the set to which i belongs to <br /></td></tr>
<tr class="separator:a0ce2672c570f4235eafddb0c9a58115a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c24228b0f2f49220133fb8c3566a55c"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a1c24228b0f2f49220133fb8c3566a55c">size</a> (uint64_t i)</td></tr>
<tr class="memitem:a1c24228b0f2f49220133fb8c3566a55c" id="r_a1c24228b0f2f49220133fb8c3566a55c"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a1c24228b0f2f49220133fb8c3566a55c">size</a> (uint64_t i)</td></tr>
<tr class="memdesc:a1c24228b0f2f49220133fb8c3566a55c"><td class="mdescLeft">&#160;</td><td class="mdescRight">A utility function that returns the size of the set to which i belongs to. <br /></td></tr>
<tr class="separator:a1c24228b0f2f49220133fb8c3566a55c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a696141b8b092466767f4bfe1c5e46cde"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a696141b8b092466767f4bfe1c5e46cde">get_max</a> (uint64_t i)</td></tr>
<tr class="memitem:a696141b8b092466767f4bfe1c5e46cde" id="r_a696141b8b092466767f4bfe1c5e46cde"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a696141b8b092466767f4bfe1c5e46cde">get_max</a> (uint64_t i)</td></tr>
<tr class="memdesc:a696141b8b092466767f4bfe1c5e46cde"><td class="mdescLeft">&#160;</td><td class="mdescRight">A utility function that returns the max element of the set to which i belongs to. <br /></td></tr>
<tr class="separator:a696141b8b092466767f4bfe1c5e46cde"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac713a5b496d0405c82e2808a85e58415"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#ac713a5b496d0405c82e2808a85e58415">get_min</a> (uint64_t i)</td></tr>
<tr class="memitem:ac713a5b496d0405c82e2808a85e58415" id="r_ac713a5b496d0405c82e2808a85e58415"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#ac713a5b496d0405c82e2808a85e58415">get_min</a> (uint64_t i)</td></tr>
<tr class="memdesc:ac713a5b496d0405c82e2808a85e58415"><td class="mdescLeft">&#160;</td><td class="mdescRight">A utility function that returns the min element of the set to which i belongs to. <br /></td></tr>
<tr class="separator:ac713a5b496d0405c82e2808a85e58415"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a126e3002a464e53cd54b07ba56482a72"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a126e3002a464e53cd54b07ba56482a72">dsu</a> (uint64_t n)</td></tr>
<tr class="memitem:a126e3002a464e53cd54b07ba56482a72" id="r_a126e3002a464e53cd54b07ba56482a72"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a126e3002a464e53cd54b07ba56482a72">dsu</a> (uint64_t n)</td></tr>
<tr class="memdesc:a126e3002a464e53cd54b07ba56482a72"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor for initialising all data members <br /></td></tr>
<tr class="separator:a126e3002a464e53cd54b07ba56482a72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16851f78fe390fc1430905c83d6a2f1c"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a16851f78fe390fc1430905c83d6a2f1c">findSet</a> (uint64_t i)</td></tr>
<tr class="memitem:a16851f78fe390fc1430905c83d6a2f1c" id="r_a16851f78fe390fc1430905c83d6a2f1c"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a16851f78fe390fc1430905c83d6a2f1c">findSet</a> (uint64_t i)</td></tr>
<tr class="memdesc:a16851f78fe390fc1430905c83d6a2f1c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method to find the representative of the set to which i belongs to, T(n) = O(logN) <br /></td></tr>
<tr class="separator:a16851f78fe390fc1430905c83d6a2f1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a81897528bdb53fd5e796d75d7dbc430f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a81897528bdb53fd5e796d75d7dbc430f">unionSet</a> (uint64_t i, uint64_t j)</td></tr>
<tr class="memitem:a81897528bdb53fd5e796d75d7dbc430f" id="r_a81897528bdb53fd5e796d75d7dbc430f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a81897528bdb53fd5e796d75d7dbc430f">unionSet</a> (uint64_t i, uint64_t j)</td></tr>
<tr class="memdesc:a81897528bdb53fd5e796d75d7dbc430f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method that combines two disjoint sets to which i and j belongs to and make a single set having a common representative. <br /></td></tr>
<tr class="separator:a81897528bdb53fd5e796d75d7dbc430f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64d25c5986742f7c234ed449b2ff7303"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a64d25c5986742f7c234ed449b2ff7303">isSame</a> (uint64_t i, uint64_t j)</td></tr>
<tr class="memitem:a64d25c5986742f7c234ed449b2ff7303" id="r_a64d25c5986742f7c234ed449b2ff7303"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#a64d25c5986742f7c234ed449b2ff7303">isSame</a> (uint64_t i, uint64_t j)</td></tr>
<tr class="memdesc:a64d25c5986742f7c234ed449b2ff7303"><td class="mdescLeft">&#160;</td><td class="mdescRight">A utility function which check whether i and j belongs to same set or not. <br /></td></tr>
<tr class="separator:a64d25c5986742f7c234ed449b2ff7303"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab8ee27083a3c2e2df80755165a2ec280"><td class="memItemLeft" align="right" valign="top"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">vector</a>&lt; uint64_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#ab8ee27083a3c2e2df80755165a2ec280">getParents</a> (uint64_t i)</td></tr>
<tr class="memitem:ab8ee27083a3c2e2df80755165a2ec280" id="r_ab8ee27083a3c2e2df80755165a2ec280"><td class="memItemLeft" align="right" valign="top"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">vector</a>&lt; uint64_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1f/classdsu.html#ab8ee27083a3c2e2df80755165a2ec280">getParents</a> (uint64_t i)</td></tr>
<tr class="memdesc:ab8ee27083a3c2e2df80755165a2ec280"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method to print all the parents of i, or the path from i to representative. <br /></td></tr>
<tr class="separator:ab8ee27083a3c2e2df80755165a2ec280"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-attribs" name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:a1ef0b0462a0dda63514f641cbb7dd8cb"><td class="memItemLeft" align="right" valign="top"><a id="a1ef0b0462a0dda63514f641cbb7dd8cb" name="a1ef0b0462a0dda63514f641cbb7dd8cb"></a>
<tr class="memitem:a1ef0b0462a0dda63514f641cbb7dd8cb" id="r_a1ef0b0462a0dda63514f641cbb7dd8cb"><td class="memItemLeft" align="right" valign="top"><a id="a1ef0b0462a0dda63514f641cbb7dd8cb" name="a1ef0b0462a0dda63514f641cbb7dd8cb"></a>
<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">vector</a>&lt; uint64_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>p</b></td></tr>
<tr class="memdesc:a1ef0b0462a0dda63514f641cbb7dd8cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">keeps track of the parent of ith element <br /></td></tr>
<tr class="separator:a1ef0b0462a0dda63514f641cbb7dd8cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4bf54d33fba178998dbbe4c57f2e9429"><td class="memItemLeft" align="right" valign="top"><a id="a4bf54d33fba178998dbbe4c57f2e9429" name="a4bf54d33fba178998dbbe4c57f2e9429"></a>
<tr class="memitem:a4bf54d33fba178998dbbe4c57f2e9429" id="r_a4bf54d33fba178998dbbe4c57f2e9429"><td class="memItemLeft" align="right" valign="top"><a id="a4bf54d33fba178998dbbe4c57f2e9429" name="a4bf54d33fba178998dbbe4c57f2e9429"></a>
<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">vector</a>&lt; uint64_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>depth</b></td></tr>
<tr class="memdesc:a4bf54d33fba178998dbbe4c57f2e9429"><td class="mdescLeft">&#160;</td><td class="mdescRight">tracks the <a class="el" href="../../dd/d1f/classdsu.html#a4bf54d33fba178998dbbe4c57f2e9429" title="tracks the depth(rank) of i in the tree">depth(rank)</a> of i in the tree <br /></td></tr>
<tr class="separator:a4bf54d33fba178998dbbe4c57f2e9429"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0dc3e17e49fe19b159b4ea4096d7b55"><td class="memItemLeft" align="right" valign="top"><a id="ac0dc3e17e49fe19b159b4ea4096d7b55" name="ac0dc3e17e49fe19b159b4ea4096d7b55"></a>
<tr class="memitem:ac0dc3e17e49fe19b159b4ea4096d7b55" id="r_ac0dc3e17e49fe19b159b4ea4096d7b55"><td class="memItemLeft" align="right" valign="top"><a id="ac0dc3e17e49fe19b159b4ea4096d7b55" name="ac0dc3e17e49fe19b159b4ea4096d7b55"></a>
<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">vector</a>&lt; uint64_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>setSize</b></td></tr>
<tr class="memdesc:ac0dc3e17e49fe19b159b4ea4096d7b55"><td class="mdescLeft">&#160;</td><td class="mdescRight">size of each chunk(set) <br /></td></tr>
<tr class="separator:ac0dc3e17e49fe19b159b4ea4096d7b55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ade6f16c418fc98b54452f7b0252a53"><td class="memItemLeft" align="right" valign="top"><a id="a4ade6f16c418fc98b54452f7b0252a53" name="a4ade6f16c418fc98b54452f7b0252a53"></a>
<tr class="memitem:a4ade6f16c418fc98b54452f7b0252a53" id="r_a4ade6f16c418fc98b54452f7b0252a53"><td class="memItemLeft" align="right" valign="top"><a id="a4ade6f16c418fc98b54452f7b0252a53" name="a4ade6f16c418fc98b54452f7b0252a53"></a>
<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">vector</a>&lt; uint64_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>maxElement</b></td></tr>
<tr class="memdesc:a4ade6f16c418fc98b54452f7b0252a53"><td class="mdescLeft">&#160;</td><td class="mdescRight">maximum of each set to which i belongs to <br /></td></tr>
<tr class="separator:a4ade6f16c418fc98b54452f7b0252a53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d77aad7fc39fe7140d834cd347e5c63"><td class="memItemLeft" align="right" valign="top"><a id="a1d77aad7fc39fe7140d834cd347e5c63" name="a1d77aad7fc39fe7140d834cd347e5c63"></a>
<tr class="memitem:a1d77aad7fc39fe7140d834cd347e5c63" id="r_a1d77aad7fc39fe7140d834cd347e5c63"><td class="memItemLeft" align="right" valign="top"><a id="a1d77aad7fc39fe7140d834cd347e5c63" name="a1d77aad7fc39fe7140d834cd347e5c63"></a>
<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">vector</a>&lt; uint64_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>minElement</b></td></tr>
<tr class="memdesc:a1d77aad7fc39fe7140d834cd347e5c63"><td class="mdescLeft">&#160;</td><td class="mdescRight">minimum of each set to which i belongs to <br /></td></tr>
<tr class="separator:a1d77aad7fc39fe7140d834cd347e5c63"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -916,7 +916,7 @@ Here is the call graph for this function:</div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dd/d1f/classdsu.html">dsu</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.7 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8 </li>
</ul>
</div>
</body>