mirror of
https://github.com/TheAlgorithms/C-Plus-Plus.git
synced 2026-04-29 21:14:35 +08:00
Documentation for 446e0a5ce8
This commit is contained in:
@@ -149,14 +149,14 @@ Functions</h2></td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>Implementation of the <a href="https://www.geeksforgeeks.org/sublist-search-search-a-linked-list-in-another-list">Sublist Search Algorithm</a> </p>
|
||||
<h3><a class="anchor" id="autotoc_md89"></a>
|
||||
<h3><a class="anchor" id="autotoc_md92"></a>
|
||||
Algorithm</h3>
|
||||
<ul>
|
||||
<li>Sublist search is used to detect a presence of one list in another list.</li>
|
||||
<li>Suppose we have a single-node list (let's say the first list), and we want to ensure that the list is present in another list (let's say the second list), then we can perform the sublist search to find it.</li>
|
||||
<li>For instance, the first list contains these elements: 23 -> 30 -> 41, and the second list contains these elements: 10 -> 15 -> 23 -> 30 -> 41 -> 49. At a glance, we see that the first list presents in the second list.</li>
|
||||
</ul>
|
||||
<h3><a class="anchor" id="autotoc_md90"></a>
|
||||
<h3><a class="anchor" id="autotoc_md93"></a>
|
||||
Working</h3>
|
||||
<ul>
|
||||
<li>The sublist search algorithm works by comparing the first element of the first list with the first element of the second list.</li>
|
||||
|
||||
@@ -159,7 +159,7 @@ Functions</h2></td></tr>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="../../d5/d83/lcm__sum_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4_cgraph.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d5/d83/lcm__sum_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4_cgraph.svg" width="308" height="88"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -190,18 +190,18 @@ Here is the call graph for this function:</div>
|
||||
<p>Function for testing lcmSum function. test cases and assert statement. </p><dl class="section return"><dt>Returns</dt><dd><code>void</code> </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  {</div>
|
||||
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  uint64_t n = 2;</div>
|
||||
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  uint64_t <a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817">test_1</a> = <a class="code" href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244">math::lcmSum</a>(n);</div>
|
||||
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  assert(<a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817">test_1</a> == 4);</div>
|
||||
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  uint64_t test_1 = <a class="code" href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244">math::lcmSum</a>(n);</div>
|
||||
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  assert(test_1 == 4);</div>
|
||||
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Passed Test 1!"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  </div>
|
||||
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  n = 5;</div>
|
||||
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  uint64_t <a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d">test_2</a> = <a class="code" href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244">math::lcmSum</a>(n);</div>
|
||||
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  assert(<a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d">test_2</a> == 55);</div>
|
||||
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  uint64_t test_2 = <a class="code" href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244">math::lcmSum</a>(n);</div>
|
||||
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  assert(test_2 == 55);</div>
|
||||
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Passed Test 2!"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  </div>
|
||||
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  n = 10;</div>
|
||||
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  uint64_t <a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a">test_3</a> = <a class="code" href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244">math::lcmSum</a>(n);</div>
|
||||
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  assert(<a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a">test_3</a> == 320);</div>
|
||||
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  uint64_t test_3 = <a class="code" href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244">math::lcmSum</a>(n);</div>
|
||||
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  assert(test_3 == 320);</div>
|
||||
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Passed Test 3!"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  </div>
|
||||
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  n = 11;</div>
|
||||
@@ -216,14 +216,11 @@ Here is the call graph for this function:</div>
|
||||
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> }</div>
|
||||
<div class="ttc" id="abasic_ostream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div></div>
|
||||
<div class="ttc" id="aendl_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a></div><div class="ttdeci">T endl(T... args)</div></div>
|
||||
<div class="ttc" id="aheavy__light__decomposition_8cpp_html_a34b8683a2b429de5cce57e6d733ec817"><div class="ttname"><a href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817">test_1</a></div><div class="ttdeci">static void test_1()</div><div class="ttdef"><b>Definition:</b> heavy_light_decomposition.cpp:505</div></div>
|
||||
<div class="ttc" id="aheavy__light__decomposition_8cpp_html_a458410412185a5f09199deaff7157a8d"><div class="ttname"><a href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d">test_2</a></div><div class="ttdeci">static void test_2()</div><div class="ttdef"><b>Definition:</b> heavy_light_decomposition.cpp:549</div></div>
|
||||
<div class="ttc" id="aheavy__light__decomposition_8cpp_html_af31ec5409537703d9c8a47350386b32a"><div class="ttname"><a href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a">test_3</a></div><div class="ttdeci">static void test_3()</div><div class="ttdef"><b>Definition:</b> heavy_light_decomposition.cpp:592</div></div>
|
||||
<div class="ttc" id="anamespacemath_html_a04065193d190d605e1f0d0d93a87e244"><div class="ttname"><a href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244">math::lcmSum</a></div><div class="ttdeci">uint64_t lcmSum(const uint16_t &num)</div><div class="ttdef"><b>Definition:</b> lcm_sum.cpp:29</div></div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="../../d5/d83/lcm__sum_8cpp_aa8dca7b867074164d5f45b0f3851269d_cgraph.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d5/d83/lcm__sum_8cpp_aa8dca7b867074164d5f45b0f3851269d_cgraph.svg" width="210" height="88"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -1,27 +1,5 @@
|
||||
<map id="test" name="test">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,251,49,278"/>
|
||||
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="115,150,187,177"/>
|
||||
<area shape="rect" id="node3" href="$dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244" title=" " alt="" coords="97,201,204,227"/>
|
||||
<area shape="rect" id="node4" href="$d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817" title=" " alt="" coords="121,399,180,426"/>
|
||||
<area shape="rect" id="node24" href="$d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d" title=" " alt="" coords="121,251,180,278"/>
|
||||
<area shape="rect" id="node25" href="$d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a" title=" " alt="" coords="121,302,180,329"/>
|
||||
<area shape="rect" id="node5" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a79ab4601c4a95c0902ac04e779e5f54d" title="Adds an undirected edge from node u to node v in the tree." alt="" coords="252,353,403,409"/>
|
||||
<area shape="rect" id="node6" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/push_back.html#" title=" " alt="" coords="451,321,607,347"/>
|
||||
<area shape="rect" id="node7" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#ae9e979edd69678b85665c01e2ee97828" title="This function must be called after the tree adjacency list and node values are populated The function..." alt="" coords="252,614,403,670"/>
|
||||
<area shape="rect" id="node15" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a4dfbf5d9df825eeb63b294c6849bdcab" title="This function returns the sum of node values in the simple path from from node_1 to node_2." alt="" coords="252,483,403,539"/>
|
||||
<area shape="rect" id="node20" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a04cd96efaba147b19d3afc769b90ff70" title="Set the values for all the nodes." alt="" coords="252,222,403,278"/>
|
||||
<area shape="rect" id="node21" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/size.html#" title=" " alt="" coords="471,205,586,231"/>
|
||||
<area shape="rect" id="node22" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a9f1cb54ed09fde931bf3220d75ee4c57" title="This function updates the value at node with val." alt="" coords="252,91,403,147"/>
|
||||
<area shape="rect" id="node8" href="$d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74" title="Function that specifies the type of operation involved when segments are combined." alt="" coords="655,574,805,630"/>
|
||||
<area shape="rect" id="node9" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#af64848d6630c39d0f09ce2359cc7c4f8" title="Utility function to assign heavy child to each node (-1 for a leaf node)" alt="" coords="453,839,604,895"/>
|
||||
<area shape="rect" id="node10" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a0579062b384e54b611b80c6337c7f2c8" title="Utility function to lable the nodes so that heavy chains have a contigous lable." alt="" coords="453,549,604,605"/>
|
||||
<area shape="rect" id="node11" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a2dfbda148aad0bfaba2ebfda9ebc915a" title="Utility function to assign highest parent that can be reached though heavy chains." alt="" coords="453,679,604,735"/>
|
||||
<area shape="rect" id="node12" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ad22d760a5a33545a70e7ea5e1786c8dc" title="This function must be called after the tree adjacency list and node values are populated The function..." alt="" coords="453,759,604,815"/>
|
||||
<area shape="rect" id="node13" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae8de7aefcb6635d3dacdd174cd4890c4" title="Utility function to populate the t_par vector." alt="" coords="655,799,805,855"/>
|
||||
<area shape="rect" id="node14" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa339c31ec74cd86a4842a8b09653d460" title="Utility function to compute sub-tree sizes." alt="" coords="655,719,805,775"/>
|
||||
<area shape="rect" id="node16" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a7d5b40c076347a6aabfb37a0590f2f24" title="Utility function to break down a path query into two chain queries." alt="" coords="453,469,604,525"/>
|
||||
<area shape="rect" id="node18" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae2b407e64aaf9878fbee7ee6efe9c7d4" title="The function returns the least common ancestor of two nodes." alt="" coords="453,389,604,445"/>
|
||||
<area shape="rect" id="node17" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/swap.html#" title=" " alt="" coords="691,483,769,510"/>
|
||||
<area shape="rect" id="node19" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ac7761255f2ba06b398b9aae5e4dce5f3" title="The function lifts a node, k units up the tree. The lifting is done in place, and the result is store..." alt="" coords="655,389,805,445"/>
|
||||
<area shape="rect" id="node23" href="$d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a3c75bf5770790f8eba8cc92227b5400c" title="Update the value at a node." alt="" coords="453,91,604,147"/>
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,31,49,57"/>
|
||||
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="115,5,187,32"/>
|
||||
<area shape="rect" id="node3" href="$dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244" title=" " alt="" coords="97,56,204,83"/>
|
||||
</map>
|
||||
|
||||
@@ -1 +1 @@
|
||||
42405adb78342cfb193015ccbc96d261
|
||||
76fa7b582dcdc0b8d8ad6b718ddc7992
|
||||
@@ -4,63 +4,17 @@
|
||||
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
|
||||
-->
|
||||
<!-- Title: test Pages: 1 -->
|
||||
<!--zoomable 676 -->
|
||||
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
|
||||
<style type="text/css"><![CDATA[
|
||||
.edge:hover path { stroke: red; }
|
||||
.edge:hover polygon { stroke: red; fill: red; }
|
||||
]]></style>
|
||||
<script type="text/javascript"><![CDATA[
|
||||
var edges = document.getElementsByTagName('g');
|
||||
if (edges && edges.length) {
|
||||
for (var i=0;i<edges.length;i++) {
|
||||
if (edges[i].id.substr(0,4)=='edge') {
|
||||
edges[i].setAttribute('class','edge');
|
||||
}
|
||||
}
|
||||
}
|
||||
]]></script>
|
||||
<defs>
|
||||
<circle id="rim" cx="0" cy="0" r="7"/>
|
||||
<circle id="rim2" cx="0" cy="0" r="3.5"/>
|
||||
<g id="zoomPlus">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/>
|
||||
</use>
|
||||
<path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
|
||||
</g>
|
||||
<g id="zoomMin">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/>
|
||||
</use>
|
||||
<path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
|
||||
</g>
|
||||
<g id="dirArrow">
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="resetDef">
|
||||
<use xlink:href="#rim2" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/>
|
||||
</use>
|
||||
</g>
|
||||
</defs>
|
||||
|
||||
<script type="text/javascript">
|
||||
var viewWidth = 608;
|
||||
var viewHeight = 676;
|
||||
var sectionId = 'dynsection-2';
|
||||
</script>
|
||||
<script xlink:href="../../svgpan.js"/>
|
||||
<svg id="graph" class="graph">
|
||||
<g id="viewport">
|
||||
<svg width="157pt" height="66pt"
|
||||
viewBox="0.00 0.00 157.00 66.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 62)">
|
||||
<title>test</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-671.51 604,-671.51 604,4 -4,4"/>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-62 153,-62 153,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title=" ">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-463.5 0,-482.5 33,-482.5 33,-463.5 0,-463.5"/>
|
||||
<text text-anchor="middle" x="16.5" y="-470.5" font-family="Helvetica,sans-Serif" font-size="10.00">test</text>
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-19.5 0,-38.5 33,-38.5 33,-19.5 0,-19.5"/>
|
||||
<text text-anchor="middle" x="16.5" y="-26.5" font-family="Helvetica,sans-Serif" font-size="10.00">test</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
@@ -68,537 +22,31 @@ var sectionId = 'dynsection-2';
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="82,-539.5 82,-558.5 136,-558.5 136,-539.5 82,-539.5"/>
|
||||
<text text-anchor="middle" x="109" y="-546.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
<polygon fill="white" stroke="black" points="82,-38.5 82,-57.5 136,-57.5 136,-38.5 82,-38.5"/>
|
||||
<text text-anchor="middle" x="109" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M24.26,-482.51C33.33,-494.73 50.45,-516.05 69,-530 71.05,-531.54 73.25,-533.01 75.52,-534.4"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="74.02,-537.57 84.47,-539.34 77.4,-531.44 74.02,-537.57"/>
|
||||
<path fill="none" stroke="midnightblue" d="M33.26,-32.31C43.92,-34.55 58.43,-37.59 71.84,-40.41"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="71.29,-43.87 81.79,-42.5 72.73,-37.02 71.29,-43.87"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="69,-501.5 69,-520.5 149,-520.5 149,-501.5 69,-501.5"/>
|
||||
<text text-anchor="middle" x="109" y="-508.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::lcmSum</text>
|
||||
<polygon fill="white" stroke="black" points="69,-0.5 69,-19.5 149,-19.5 149,-0.5 69,-0.5"/>
|
||||
<text text-anchor="middle" x="109" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::lcmSum</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node1->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.26,-479.62C44.95,-484.53 61.28,-491.38 75.7,-497.44"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="74.72,-500.82 85.29,-501.47 77.43,-494.37 74.72,-500.82"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="87,-352.5 87,-371.5 131,-371.5 131,-352.5 87,-352.5"/>
|
||||
<text text-anchor="middle" x="109" y="-359.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_1</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node1->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M25.53,-463.15C40.87,-444.34 74.5,-403.09 93.74,-379.49"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="96.51,-381.63 100.12,-371.67 91.08,-377.21 96.51,-381.63"/>
|
||||
</g>
|
||||
<!-- Node24 -->
|
||||
<g id="node24" class="node">
|
||||
<title>Node24</title>
|
||||
<g id="a_node24"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="87,-463.5 87,-482.5 131,-482.5 131,-463.5 87,-463.5"/>
|
||||
<text text-anchor="middle" x="109" y="-470.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_2</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node24 -->
|
||||
<g id="edge26" class="edge">
|
||||
<title>Node1->Node24</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.26,-473C45.24,-473 62.11,-473 76.79,-473"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="76.99,-476.5 86.99,-473 76.99,-469.5 76.99,-476.5"/>
|
||||
</g>
|
||||
<!-- Node25 -->
|
||||
<g id="node25" class="node">
|
||||
<title>Node25</title>
|
||||
<g id="a_node25"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="87,-425.5 87,-444.5 131,-444.5 131,-425.5 87,-425.5"/>
|
||||
<text text-anchor="middle" x="109" y="-432.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_3</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node25 -->
|
||||
<g id="edge34" class="edge">
|
||||
<title>Node1->Node25</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.26,-466.38C45.48,-461.25 62.77,-453.99 77.64,-447.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="79.12,-450.92 86.99,-443.82 76.41,-444.47 79.12,-450.92"/>
|
||||
</g>
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a79ab4601c4a95c0902ac04e779e5f54d" target="_top" xlink:title="Adds an undirected edge from node u to node v in the tree.">
|
||||
<polygon fill="white" stroke="black" points="185,-365.5 185,-406.5 298,-406.5 298,-365.5 185,-365.5"/>
|
||||
<text text-anchor="start" x="193" y="-394.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-383.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="241.5" y="-372.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::add_edge</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node5 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node4->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.26,-365.91C143.34,-368.13 159.19,-371.05 175.05,-373.96"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="174.43,-377.41 184.9,-375.77 175.7,-370.52 174.43,-377.41"/>
|
||||
</g>
|
||||
<!-- Node6 -->
|
||||
<g id="node6" class="node">
|
||||
<title>Node6</title>
|
||||
<g id="a_node6"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/push_back.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="334,-411.5 334,-430.5 451,-430.5 451,-411.5 334,-411.5"/>
|
||||
<text text-anchor="middle" x="392.5" y="-418.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node6 -->
|
||||
<g id="edge14" class="edge">
|
||||
<title>Node4->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M113.38,-352.48C121.65,-330.87 145.17,-278.38 185,-258 229.71,-235.12 258.06,-227.55 298,-258 346.02,-294.6 296.71,-341.51 334,-389 339.69,-396.25 347.5,-402.1 355.53,-406.73"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="354.1,-409.93 364.59,-411.43 357.33,-403.72 354.1,-409.93"/>
|
||||
</g>
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#ae9e979edd69678b85665c01e2ee97828" target="_top" xlink:title="This function must be called after the tree adjacency list and node values are populated The function...">
|
||||
<polygon fill="white" stroke="black" points="185,-169.5 185,-210.5 298,-210.5 298,-169.5 185,-169.5"/>
|
||||
<text text-anchor="start" x="193" y="-198.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-187.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="241.5" y="-176.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node7 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>Node4->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M113.34,-352.33C121.98,-328.37 147.11,-265.3 185,-225 187.73,-222.1 190.75,-219.33 193.93,-216.72"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="196.22,-219.38 202.1,-210.57 192.01,-213.79 196.22,-219.38"/>
|
||||
</g>
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a4dfbf5d9df825eeb63b294c6849bdcab" target="_top" xlink:title="This function returns the sum of node values in the simple path from from node_1 to node_2.">
|
||||
<polygon fill="white" stroke="black" points="185,-267.5 185,-308.5 298,-308.5 298,-267.5 185,-267.5"/>
|
||||
<text text-anchor="start" x="193" y="-296.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-285.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="241.5" y="-274.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node15 -->
|
||||
<g id="edge15" class="edge">
|
||||
<title>Node4->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M126.79,-352.48C144.07,-342.68 171.72,-327 195.43,-313.55"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="197.33,-316.5 204.3,-308.53 193.87,-310.42 197.33,-316.5"/>
|
||||
</g>
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a04cd96efaba147b19d3afc769b90ff70" target="_top" xlink:title="Set the values for all the nodes.">
|
||||
<polygon fill="white" stroke="black" points="185,-463.5 185,-504.5 298,-504.5 298,-463.5 185,-463.5"/>
|
||||
<text text-anchor="start" x="193" y="-492.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-481.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="241.5" y="-470.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::set_node_val</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node20 -->
|
||||
<g id="edge21" class="edge">
|
||||
<title>Node4->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M120.24,-371.57C139.55,-389.62 181.98,-429.29 210.91,-456.34"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="208.62,-458.99 218.32,-463.26 213.4,-453.88 208.62,-458.99"/>
|
||||
</g>
|
||||
<!-- Node21 -->
|
||||
<g id="node21" class="node">
|
||||
<title>Node21</title>
|
||||
<g id="a_node21"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/size.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="349.5,-498.5 349.5,-517.5 435.5,-517.5 435.5,-498.5 349.5,-498.5"/>
|
||||
<text text-anchor="middle" x="392.5" y="-505.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node21 -->
|
||||
<g id="edge23" class="edge">
|
||||
<title>Node4->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.01,-354.1C168.15,-341.59 246.34,-321.93 298,-356 331.91,-378.36 312.65,-405.45 334,-440 345.57,-458.73 362.07,-477.67 374.43,-490.79"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="372.05,-493.37 381.5,-498.15 377.1,-488.51 372.05,-493.37"/>
|
||||
</g>
|
||||
<!-- Node22 -->
|
||||
<g id="node22" class="node">
|
||||
<title>Node22</title>
|
||||
<g id="a_node22"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a9f1cb54ed09fde931bf3220d75ee4c57" target="_top" xlink:title="This function updates the value at node with val.">
|
||||
<polygon fill="white" stroke="black" points="185,-561.5 185,-602.5 298,-602.5 298,-561.5 185,-561.5"/>
|
||||
<text text-anchor="start" x="193" y="-590.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-579.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="241.5" y="-568.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node22 -->
|
||||
<g id="edge24" class="edge">
|
||||
<title>Node4->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M118.36,-371.8C126.92,-382.23 140.2,-399.46 149,-416 170.79,-456.97 162.01,-473.69 185,-514 192.97,-527.98 203.82,-542 213.8,-553.65"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="211.3,-556.1 220.53,-561.3 216.56,-551.48 211.3,-556.1"/>
|
||||
</g>
|
||||
<!-- Node5->Node6 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node5->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M298.41,-399.13C312.22,-402.38 326.96,-405.84 340.53,-409.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="340.11,-412.52 350.64,-411.4 341.71,-405.71 340.11,-412.52"/>
|
||||
</g>
|
||||
<!-- Node8 -->
|
||||
<g id="node8" class="node">
|
||||
<title>Node8</title>
|
||||
<g id="a_node8"><a xlink:href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74" target="_top" xlink:title="Function that specifies the type of operation involved when segments are combined.">
|
||||
<polygon fill="white" stroke="black" points="487,-199.5 487,-240.5 600,-240.5 600,-199.5 487,-199.5"/>
|
||||
<text text-anchor="start" x="495" y="-228.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="495" y="-217.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="543.5" y="-206.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::combine</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node8 -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>Node7->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M298.3,-194.65C340.31,-198.25 399.31,-203.54 451,-209 459.35,-209.88 468.12,-210.86 476.79,-211.87"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="476.54,-215.36 486.88,-213.05 477.36,-208.41 476.54,-215.36"/>
|
||||
</g>
|
||||
<!-- Node9 -->
|
||||
<g id="node9" class="node">
|
||||
<title>Node9</title>
|
||||
<g id="a_node9"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#af64848d6630c39d0f09ce2359cc7c4f8" target="_top" xlink:title="Utility function to assign heavy child to each node (-1 for a leaf node)">
|
||||
<polygon fill="white" stroke="black" points="336,-0.5 336,-41.5 449,-41.5 449,-0.5 336,-0.5"/>
|
||||
<text text-anchor="start" x="344" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="344" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="392.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_hc</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node9 -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>Node7->Node9</title>
|
||||
<path fill="none" stroke="midnightblue" d="M251.94,-169.25C266.18,-139.81 295.63,-85.67 334,-51 335.29,-49.83 336.64,-48.7 338.03,-47.59"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="340.27,-50.29 346.37,-41.62 336.2,-44.6 340.27,-50.29"/>
|
||||
</g>
|
||||
<!-- Node10 -->
|
||||
<g id="node10" class="node">
|
||||
<title>Node10</title>
|
||||
<g id="a_node10"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a0579062b384e54b611b80c6337c7f2c8" target="_top" xlink:title="Utility function to lable the nodes so that heavy chains have a contigous lable.">
|
||||
<polygon fill="white" stroke="black" points="336,-218.5 336,-259.5 449,-259.5 449,-218.5 336,-218.5"/>
|
||||
<text text-anchor="start" x="344" y="-247.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="344" y="-236.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="392.5" y="-225.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_labels</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node10 -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>Node7->Node10</title>
|
||||
<path fill="none" stroke="midnightblue" d="M298.41,-208.39C307.48,-211.37 316.94,-214.48 326.21,-217.53"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="325.18,-220.88 335.78,-220.67 327.37,-214.23 325.18,-220.88"/>
|
||||
</g>
|
||||
<!-- Node11 -->
|
||||
<g id="node11" class="node">
|
||||
<title>Node11</title>
|
||||
<g id="a_node11"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a2dfbda148aad0bfaba2ebfda9ebc915a" target="_top" xlink:title="Utility function to assign highest parent that can be reached though heavy chains.">
|
||||
<polygon fill="white" stroke="black" points="336,-120.5 336,-161.5 449,-161.5 449,-120.5 336,-120.5"/>
|
||||
<text text-anchor="start" x="344" y="-149.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="344" y="-138.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="392.5" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_par</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node11 -->
|
||||
<g id="edge10" class="edge">
|
||||
<title>Node7->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M298.41,-171.61C307.48,-168.63 316.94,-165.52 326.21,-162.47"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="327.37,-165.77 335.78,-159.33 325.18,-159.12 327.37,-165.77"/>
|
||||
</g>
|
||||
<!-- Node12 -->
|
||||
<g id="node12" class="node">
|
||||
<title>Node12</title>
|
||||
<g id="a_node12"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ad22d760a5a33545a70e7ea5e1786c8dc" target="_top" xlink:title="This function must be called after the tree adjacency list and node values are populated The function...">
|
||||
<polygon fill="white" stroke="black" points="336,-60.5 336,-101.5 449,-101.5 449,-60.5 336,-60.5"/>
|
||||
<text text-anchor="start" x="344" y="-89.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="344" y="-78.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="392.5" y="-67.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node12 -->
|
||||
<g id="edge11" class="edge">
|
||||
<title>Node7->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M263.53,-169.34C281.38,-152.45 308.13,-128.57 334,-111 336.12,-109.56 338.32,-108.14 340.56,-106.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="342.56,-109.63 349.38,-101.52 338.99,-103.61 342.56,-109.63"/>
|
||||
</g>
|
||||
<!-- Node13 -->
|
||||
<g id="node13" class="node">
|
||||
<title>Node13</title>
|
||||
<g id="a_node13"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae8de7aefcb6635d3dacdd174cd4890c4" target="_top" xlink:title="Utility function to populate the t_par vector.">
|
||||
<polygon fill="white" stroke="black" points="487,-30.5 487,-71.5 600,-71.5 600,-30.5 487,-30.5"/>
|
||||
<text text-anchor="start" x="495" y="-59.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="495" y="-48.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="543.5" y="-37.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node12->Node13 -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>Node12->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M449.41,-69.74C458.38,-67.94 467.74,-66.05 476.92,-64.2"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="477.66,-67.62 486.78,-62.22 476.28,-60.76 477.66,-67.62"/>
|
||||
</g>
|
||||
<!-- Node14 -->
|
||||
<g id="node14" class="node">
|
||||
<title>Node14</title>
|
||||
<g id="a_node14"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa339c31ec74cd86a4842a8b09653d460" target="_top" xlink:title="Utility function to compute sub-tree sizes.">
|
||||
<polygon fill="white" stroke="black" points="487,-90.5 487,-131.5 600,-131.5 600,-90.5 487,-90.5"/>
|
||||
<text text-anchor="start" x="495" y="-119.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="495" y="-108.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="543.5" y="-97.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node12->Node14 -->
|
||||
<g id="edge13" class="edge">
|
||||
<title>Node12->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M449.41,-92.26C458.38,-94.06 467.74,-95.95 476.92,-97.8"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="476.28,-101.24 486.78,-99.78 477.66,-94.38 476.28,-101.24"/>
|
||||
</g>
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a7d5b40c076347a6aabfb37a0590f2f24" target="_top" xlink:title="Utility function to break down a path query into two chain queries.">
|
||||
<polygon fill="white" stroke="black" points="336,-278.5 336,-319.5 449,-319.5 449,-278.5 336,-278.5"/>
|
||||
<text text-anchor="start" x="344" y="-307.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="344" y="-296.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="392.5" y="-285.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::chain_query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node15->Node16 -->
|
||||
<g id="edge16" class="edge">
|
||||
<title>Node15->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M298.41,-292.13C307.29,-292.78 316.54,-293.47 325.62,-294.14"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="325.55,-297.64 335.78,-294.89 326.06,-290.66 325.55,-297.64"/>
|
||||
</g>
|
||||
<!-- Node18 -->
|
||||
<g id="node18" class="node">
|
||||
<title>Node18</title>
|
||||
<g id="a_node18"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae2b407e64aaf9878fbee7ee6efe9c7d4" target="_top" xlink:title="The function returns the least common ancestor of two nodes.">
|
||||
<polygon fill="white" stroke="black" points="336,-338.5 336,-379.5 449,-379.5 449,-338.5 336,-338.5"/>
|
||||
<text text-anchor="start" x="344" y="-367.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="344" y="-356.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="392.5" y="-345.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node15->Node18 -->
|
||||
<g id="edge19" class="edge">
|
||||
<title>Node15->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M285.6,-308.54C302.2,-316.45 321.36,-325.58 338.77,-333.88"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="337.71,-337.25 348.24,-338.39 340.72,-330.93 337.71,-337.25"/>
|
||||
</g>
|
||||
<!-- Node16->Node8 -->
|
||||
<g id="edge17" class="edge">
|
||||
<title>Node16->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M433.12,-278.4C439.12,-275.26 445.23,-272.05 451,-269 465.38,-261.4 480.98,-253.07 495.17,-245.47"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="497.1,-248.41 504.26,-240.59 493.8,-242.24 497.1,-248.41"/>
|
||||
</g>
|
||||
<!-- Node17 -->
|
||||
<g id="node17" class="node">
|
||||
<title>Node17</title>
|
||||
<g id="a_node17"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/algorithm/swap.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="514,-289.5 514,-308.5 573,-308.5 573,-289.5 514,-289.5"/>
|
||||
<text text-anchor="middle" x="543.5" y="-296.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::swap</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node16->Node17 -->
|
||||
<g id="edge18" class="edge">
|
||||
<title>Node16->Node17</title>
|
||||
<path fill="none" stroke="midnightblue" d="M449.41,-299C467.42,-299 486.99,-299 503.52,-299"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="503.89,-302.5 513.89,-299 503.89,-295.5 503.89,-302.5"/>
|
||||
</g>
|
||||
<!-- Node19 -->
|
||||
<g id="node19" class="node">
|
||||
<title>Node19</title>
|
||||
<g id="a_node19"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ac7761255f2ba06b398b9aae5e4dce5f3" target="_top" xlink:title="The function lifts a node, k units up the tree. The lifting is done in place, and the result is store...">
|
||||
<polygon fill="white" stroke="black" points="487,-338.5 487,-379.5 600,-379.5 600,-338.5 487,-338.5"/>
|
||||
<text text-anchor="start" x="495" y="-367.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="495" y="-356.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="543.5" y="-345.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lift</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node18->Node19 -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>Node18->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M449.41,-359C458.29,-359 467.54,-359 476.62,-359"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="476.78,-362.5 486.78,-359 476.78,-355.5 476.78,-362.5"/>
|
||||
</g>
|
||||
<!-- Node20->Node21 -->
|
||||
<g id="edge22" class="edge">
|
||||
<title>Node20->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M298.41,-493C311.83,-495.17 326.11,-497.47 339.36,-499.6"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="338.82,-503.06 349.25,-501.2 339.94,-496.15 338.82,-503.06"/>
|
||||
</g>
|
||||
<!-- Node23 -->
|
||||
<g id="node23" class="node">
|
||||
<title>Node23</title>
|
||||
<g id="a_node23"><a xlink:href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a3c75bf5770790f8eba8cc92227b5400c" target="_top" xlink:title="Update the value at a node.">
|
||||
<polygon fill="white" stroke="black" points="336,-561.5 336,-602.5 449,-602.5 449,-561.5 336,-561.5"/>
|
||||
<text text-anchor="start" x="344" y="-590.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="344" y="-579.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="392.5" y="-568.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node22->Node23 -->
|
||||
<g id="edge25" class="edge">
|
||||
<title>Node22->Node23</title>
|
||||
<path fill="none" stroke="midnightblue" d="M298.41,-582C307.29,-582 316.54,-582 325.62,-582"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="325.78,-585.5 335.78,-582 325.78,-578.5 325.78,-585.5"/>
|
||||
</g>
|
||||
<!-- Node24->Node5 -->
|
||||
<g id="edge27" class="edge">
|
||||
<title>Node24->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.03,-463.64C136.96,-460.76 143.34,-457.44 149,-454 169.2,-441.72 190.47,-426.09 207.42,-412.92"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="209.66,-415.6 215.36,-406.67 205.34,-410.1 209.66,-415.6"/>
|
||||
</g>
|
||||
<!-- Node24->Node6 -->
|
||||
<g id="edge29" class="edge">
|
||||
<title>Node24->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.17,-479.53C137.66,-482.44 144.32,-486.49 149,-492 185.06,-534.43 140.33,-578.76 185,-612 225.29,-641.98 257.81,-642.11 298,-612 343.58,-577.85 307.03,-539.17 334,-489 344.43,-469.6 361.05,-450.74 373.75,-437.82"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="376.41,-440.11 381.06,-430.59 371.49,-435.14 376.41,-440.11"/>
|
||||
</g>
|
||||
<!-- Node24->Node7 -->
|
||||
<g id="edge28" class="edge">
|
||||
<title>Node24->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.13,-466.94C137.77,-464.04 144.54,-459.88 149,-454 202.57,-383.47 147.83,-338.39 185,-258 191.65,-243.62 202.06,-229.7 212.07,-218.24"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="214.76,-220.48 218.89,-210.72 209.58,-215.78 214.76,-220.48"/>
|
||||
</g>
|
||||
<!-- Node24->Node15 -->
|
||||
<g id="edge30" class="edge">
|
||||
<title>Node24->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.38,-466.11C137.73,-463.21 144.25,-459.25 149,-454 180.11,-419.57 162.01,-396.31 185,-356 192.97,-342.02 203.82,-328 213.8,-316.35"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="216.56,-318.52 220.53,-308.7 211.3,-313.9 216.56,-318.52"/>
|
||||
</g>
|
||||
<!-- Node24->Node20 -->
|
||||
<g id="edge31" class="edge">
|
||||
<title>Node24->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.26,-474.79C143.23,-475.8 158.89,-477.12 174.6,-478.45"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="174.64,-481.96 184.9,-479.31 175.23,-474.99 174.64,-481.96"/>
|
||||
</g>
|
||||
<!-- Node24->Node21 -->
|
||||
<g id="edge32" class="edge">
|
||||
<title>Node24->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.37,-479.37C137.87,-482.27 144.49,-486.35 149,-492 192.61,-546.57 130.24,-601.63 185,-645 224.37,-676.18 256.57,-673.39 298,-645 334.56,-619.95 307.41,-587.46 334,-552 342.57,-540.57 354.86,-530.62 365.88,-523.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="367.87,-525.97 374.35,-517.58 364.06,-520.1 367.87,-525.97"/>
|
||||
</g>
|
||||
<!-- Node24->Node22 -->
|
||||
<g id="edge33" class="edge">
|
||||
<title>Node24->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.11,-480.76C137.3,-483.68 143.8,-487.42 149,-492 170.92,-511.31 164.17,-526.52 185,-547 188.02,-549.96 191.32,-552.81 194.78,-555.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="192.88,-558.44 203.02,-561.49 196.99,-552.78 192.88,-558.44"/>
|
||||
</g>
|
||||
<!-- Node25->Node5 -->
|
||||
<g id="edge35" class="edge">
|
||||
<title>Node25->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.26,-427.02C143.63,-422.37 159.96,-416.24 176.21,-410.14"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="177.61,-413.35 185.74,-406.56 175.15,-406.8 177.61,-413.35"/>
|
||||
</g>
|
||||
<!-- Node25->Node6 -->
|
||||
<g id="edge37" class="edge">
|
||||
<title>Node25->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.16,-433.95C171.49,-431.94 260.94,-427.49 323.68,-424.37"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="324.09,-427.86 333.9,-423.86 323.74,-420.87 324.09,-427.86"/>
|
||||
</g>
|
||||
<!-- Node25->Node7 -->
|
||||
<g id="edge36" class="edge">
|
||||
<title>Node25->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M118.58,-425.31C127.33,-414.98 140.77,-397.83 149,-381 174.04,-329.84 158.46,-308.4 185,-258 192.44,-243.87 203.09,-229.91 213.08,-218.35"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="215.8,-220.56 219.84,-210.76 210.57,-215.9 215.8,-220.56"/>
|
||||
</g>
|
||||
<!-- Node25->Node15 -->
|
||||
<g id="edge38" class="edge">
|
||||
<title>Node25->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M118.56,-425.35C137.93,-403.53 185.74,-349.69 215.41,-316.26"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="218.15,-318.44 222.17,-308.64 212.92,-313.8 218.15,-318.44"/>
|
||||
</g>
|
||||
<!-- Node25->Node20 -->
|
||||
<g id="edge39" class="edge">
|
||||
<title>Node25->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.26,-442.98C143.63,-447.63 159.96,-453.76 176.21,-459.86"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="175.15,-463.2 185.74,-463.44 177.61,-456.65 175.15,-463.2"/>
|
||||
</g>
|
||||
<!-- Node25->Node21 -->
|
||||
<g id="edge40" class="edge">
|
||||
<title>Node25->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.22,-442.64C137.42,-445.55 143.89,-449.32 149,-454 171.93,-475.01 157.94,-498.68 185,-514 237.26,-543.59 309.51,-531.9 353.24,-520.28"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="354.22,-523.64 362.91,-517.58 352.34,-516.89 354.22,-523.64"/>
|
||||
</g>
|
||||
<!-- Node25->Node22 -->
|
||||
<g id="edge41" class="edge">
|
||||
<title>Node25->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.33,-441.93C137.68,-444.84 144.21,-448.79 149,-454 179,-486.63 156.83,-512.78 185,-547 187.35,-549.85 189.99,-552.54 192.81,-555.06"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="190.65,-557.82 200.64,-561.35 195.04,-552.36 190.65,-557.82"/>
|
||||
<path fill="none" stroke="midnightblue" d="M33.26,-25.69C40.48,-24.18 49.47,-22.29 58.68,-20.35"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="59.62,-23.73 68.69,-18.25 58.19,-16.88 59.62,-23.73"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
<g id="navigator" transform="translate(0 0)" fill="#404254">
|
||||
<rect fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width=".5" x="0" y="0" width="60" height="60"/>
|
||||
<use id="zoomplus" xlink:href="#zoomPlus" x="17" y="9" onmousedown="handleZoom(evt,'in')"/>
|
||||
<use id="zoomminus" xlink:href="#zoomMin" x="42" y="9" onmousedown="handleZoom(evt,'out')"/>
|
||||
<use id="reset" xlink:href="#resetDef" x="30" y="36" onmousedown="handleReset()"/>
|
||||
<g id="arrowUp" xlink:href="#dirArrow" transform="translate(30 24)" onmousedown="handlePan(0,-1)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowUp.mouseover" end="arrowUp.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowRight" xlink:href="#dirArrow" transform="rotate(90) translate(36 -43)" onmousedown="handlePan(1,0)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowRight.mouseover" end="arrowRight.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowDown" xlink:href="#dirArrow" transform="rotate(180) translate(-30 -48)" onmousedown="handlePan(0,1)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowDown.mouseover" end="arrowDown.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowLeft" xlink:href="#dirArrow" transform="rotate(270) translate(-36 17)" onmousedown="handlePan(-1,0)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowLeft.mouseover" end="arrowLeft.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
</g>
|
||||
<svg viewBox="0 0 15 15" width="100%" height="30px" preserveAspectRatio="xMaxYMin meet">
|
||||
<g id="arrow_out" transform="scale(0.3 0.3)">
|
||||
<a xlink:href="lcm__sum_8cpp_aa8dca7b867074164d5f45b0f3851269d_cgraph_org.svg" target="_base">
|
||||
<rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
|
||||
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
|
||||
<path id="arrow"
|
||||
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
|
||||
style="fill:#404040;"/>
|
||||
</a>
|
||||
</g>
|
||||
</svg>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 2.3 KiB |
@@ -1,516 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
||||
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
|
||||
-->
|
||||
<!-- Title: test Pages: 1 -->
|
||||
<svg width="608pt" height="676pt"
|
||||
viewBox="0.00 0.00 608.00 675.51" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 671.51)">
|
||||
<title>test</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-671.51 604,-671.51 604,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title=" ">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-463.5 0,-482.5 33,-482.5 33,-463.5 0,-463.5"/>
|
||||
<text text-anchor="middle" x="16.5" y="-470.5" font-family="Helvetica,sans-Serif" font-size="10.00">test</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="82,-539.5 82,-558.5 136,-558.5 136,-539.5 82,-539.5"/>
|
||||
<text text-anchor="middle" x="109" y="-546.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M24.26,-482.51C33.33,-494.73 50.45,-516.05 69,-530 71.05,-531.54 73.25,-533.01 75.52,-534.4"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="74.02,-537.57 84.47,-539.34 77.4,-531.44 74.02,-537.57"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="69,-501.5 69,-520.5 149,-520.5 149,-501.5 69,-501.5"/>
|
||||
<text text-anchor="middle" x="109" y="-508.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::lcmSum</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node1->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.26,-479.62C44.95,-484.53 61.28,-491.38 75.7,-497.44"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="74.72,-500.82 85.29,-501.47 77.43,-494.37 74.72,-500.82"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="87,-352.5 87,-371.5 131,-371.5 131,-352.5 87,-352.5"/>
|
||||
<text text-anchor="middle" x="109" y="-359.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_1</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node1->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M25.53,-463.15C40.87,-444.34 74.5,-403.09 93.74,-379.49"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="96.51,-381.63 100.12,-371.67 91.08,-377.21 96.51,-381.63"/>
|
||||
</g>
|
||||
<!-- Node24 -->
|
||||
<g id="node24" class="node">
|
||||
<title>Node24</title>
|
||||
<g id="a_node24"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="87,-463.5 87,-482.5 131,-482.5 131,-463.5 87,-463.5"/>
|
||||
<text text-anchor="middle" x="109" y="-470.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_2</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node24 -->
|
||||
<g id="edge26" class="edge">
|
||||
<title>Node1->Node24</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.26,-473C45.24,-473 62.11,-473 76.79,-473"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="76.99,-476.5 86.99,-473 76.99,-469.5 76.99,-476.5"/>
|
||||
</g>
|
||||
<!-- Node25 -->
|
||||
<g id="node25" class="node">
|
||||
<title>Node25</title>
|
||||
<g id="a_node25"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="87,-425.5 87,-444.5 131,-444.5 131,-425.5 87,-425.5"/>
|
||||
<text text-anchor="middle" x="109" y="-432.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_3</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node25 -->
|
||||
<g id="edge34" class="edge">
|
||||
<title>Node1->Node25</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.26,-466.38C45.48,-461.25 62.77,-453.99 77.64,-447.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="79.12,-450.92 86.99,-443.82 76.41,-444.47 79.12,-450.92"/>
|
||||
</g>
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a79ab4601c4a95c0902ac04e779e5f54d" target="_top" xlink:title="Adds an undirected edge from node u to node v in the tree.">
|
||||
<polygon fill="white" stroke="black" points="185,-365.5 185,-406.5 298,-406.5 298,-365.5 185,-365.5"/>
|
||||
<text text-anchor="start" x="193" y="-394.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-383.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="241.5" y="-372.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::add_edge</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node5 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node4->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.26,-365.91C143.34,-368.13 159.19,-371.05 175.05,-373.96"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="174.43,-377.41 184.9,-375.77 175.7,-370.52 174.43,-377.41"/>
|
||||
</g>
|
||||
<!-- Node6 -->
|
||||
<g id="node6" class="node">
|
||||
<title>Node6</title>
|
||||
<g id="a_node6"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/push_back.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="334,-411.5 334,-430.5 451,-430.5 451,-411.5 334,-411.5"/>
|
||||
<text text-anchor="middle" x="392.5" y="-418.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node6 -->
|
||||
<g id="edge14" class="edge">
|
||||
<title>Node4->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M113.38,-352.48C121.65,-330.87 145.17,-278.38 185,-258 229.71,-235.12 258.06,-227.55 298,-258 346.02,-294.6 296.71,-341.51 334,-389 339.69,-396.25 347.5,-402.1 355.53,-406.73"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="354.1,-409.93 364.59,-411.43 357.33,-403.72 354.1,-409.93"/>
|
||||
</g>
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#ae9e979edd69678b85665c01e2ee97828" target="_top" xlink:title="This function must be called after the tree adjacency list and node values are populated The function...">
|
||||
<polygon fill="white" stroke="black" points="185,-169.5 185,-210.5 298,-210.5 298,-169.5 185,-169.5"/>
|
||||
<text text-anchor="start" x="193" y="-198.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-187.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="241.5" y="-176.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node7 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>Node4->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M113.34,-352.33C121.98,-328.37 147.11,-265.3 185,-225 187.73,-222.1 190.75,-219.33 193.93,-216.72"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="196.22,-219.38 202.1,-210.57 192.01,-213.79 196.22,-219.38"/>
|
||||
</g>
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a4dfbf5d9df825eeb63b294c6849bdcab" target="_top" xlink:title="This function returns the sum of node values in the simple path from from node_1 to node_2.">
|
||||
<polygon fill="white" stroke="black" points="185,-267.5 185,-308.5 298,-308.5 298,-267.5 185,-267.5"/>
|
||||
<text text-anchor="start" x="193" y="-296.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-285.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="241.5" y="-274.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node15 -->
|
||||
<g id="edge15" class="edge">
|
||||
<title>Node4->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M126.79,-352.48C144.07,-342.68 171.72,-327 195.43,-313.55"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="197.33,-316.5 204.3,-308.53 193.87,-310.42 197.33,-316.5"/>
|
||||
</g>
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a04cd96efaba147b19d3afc769b90ff70" target="_top" xlink:title="Set the values for all the nodes.">
|
||||
<polygon fill="white" stroke="black" points="185,-463.5 185,-504.5 298,-504.5 298,-463.5 185,-463.5"/>
|
||||
<text text-anchor="start" x="193" y="-492.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-481.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="241.5" y="-470.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::set_node_val</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node20 -->
|
||||
<g id="edge21" class="edge">
|
||||
<title>Node4->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M120.24,-371.57C139.55,-389.62 181.98,-429.29 210.91,-456.34"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="208.62,-458.99 218.32,-463.26 213.4,-453.88 208.62,-458.99"/>
|
||||
</g>
|
||||
<!-- Node21 -->
|
||||
<g id="node21" class="node">
|
||||
<title>Node21</title>
|
||||
<g id="a_node21"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/size.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="349.5,-498.5 349.5,-517.5 435.5,-517.5 435.5,-498.5 349.5,-498.5"/>
|
||||
<text text-anchor="middle" x="392.5" y="-505.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node21 -->
|
||||
<g id="edge23" class="edge">
|
||||
<title>Node4->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.01,-354.1C168.15,-341.59 246.34,-321.93 298,-356 331.91,-378.36 312.65,-405.45 334,-440 345.57,-458.73 362.07,-477.67 374.43,-490.79"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="372.05,-493.37 381.5,-498.15 377.1,-488.51 372.05,-493.37"/>
|
||||
</g>
|
||||
<!-- Node22 -->
|
||||
<g id="node22" class="node">
|
||||
<title>Node22</title>
|
||||
<g id="a_node22"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a9f1cb54ed09fde931bf3220d75ee4c57" target="_top" xlink:title="This function updates the value at node with val.">
|
||||
<polygon fill="white" stroke="black" points="185,-561.5 185,-602.5 298,-602.5 298,-561.5 185,-561.5"/>
|
||||
<text text-anchor="start" x="193" y="-590.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-579.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="241.5" y="-568.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node22 -->
|
||||
<g id="edge24" class="edge">
|
||||
<title>Node4->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M118.36,-371.8C126.92,-382.23 140.2,-399.46 149,-416 170.79,-456.97 162.01,-473.69 185,-514 192.97,-527.98 203.82,-542 213.8,-553.65"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="211.3,-556.1 220.53,-561.3 216.56,-551.48 211.3,-556.1"/>
|
||||
</g>
|
||||
<!-- Node5->Node6 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node5->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M298.41,-399.13C312.22,-402.38 326.96,-405.84 340.53,-409.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="340.11,-412.52 350.64,-411.4 341.71,-405.71 340.11,-412.52"/>
|
||||
</g>
|
||||
<!-- Node8 -->
|
||||
<g id="node8" class="node">
|
||||
<title>Node8</title>
|
||||
<g id="a_node8"><a xlink:href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74" target="_top" xlink:title="Function that specifies the type of operation involved when segments are combined.">
|
||||
<polygon fill="white" stroke="black" points="487,-199.5 487,-240.5 600,-240.5 600,-199.5 487,-199.5"/>
|
||||
<text text-anchor="start" x="495" y="-228.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="495" y="-217.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="543.5" y="-206.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::combine</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node8 -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>Node7->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M298.3,-194.65C340.31,-198.25 399.31,-203.54 451,-209 459.35,-209.88 468.12,-210.86 476.79,-211.87"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="476.54,-215.36 486.88,-213.05 477.36,-208.41 476.54,-215.36"/>
|
||||
</g>
|
||||
<!-- Node9 -->
|
||||
<g id="node9" class="node">
|
||||
<title>Node9</title>
|
||||
<g id="a_node9"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#af64848d6630c39d0f09ce2359cc7c4f8" target="_top" xlink:title="Utility function to assign heavy child to each node (-1 for a leaf node)">
|
||||
<polygon fill="white" stroke="black" points="336,-0.5 336,-41.5 449,-41.5 449,-0.5 336,-0.5"/>
|
||||
<text text-anchor="start" x="344" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="344" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="392.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_hc</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node9 -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>Node7->Node9</title>
|
||||
<path fill="none" stroke="midnightblue" d="M251.94,-169.25C266.18,-139.81 295.63,-85.67 334,-51 335.29,-49.83 336.64,-48.7 338.03,-47.59"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="340.27,-50.29 346.37,-41.62 336.2,-44.6 340.27,-50.29"/>
|
||||
</g>
|
||||
<!-- Node10 -->
|
||||
<g id="node10" class="node">
|
||||
<title>Node10</title>
|
||||
<g id="a_node10"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a0579062b384e54b611b80c6337c7f2c8" target="_top" xlink:title="Utility function to lable the nodes so that heavy chains have a contigous lable.">
|
||||
<polygon fill="white" stroke="black" points="336,-218.5 336,-259.5 449,-259.5 449,-218.5 336,-218.5"/>
|
||||
<text text-anchor="start" x="344" y="-247.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="344" y="-236.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="392.5" y="-225.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_labels</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node10 -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>Node7->Node10</title>
|
||||
<path fill="none" stroke="midnightblue" d="M298.41,-208.39C307.48,-211.37 316.94,-214.48 326.21,-217.53"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="325.18,-220.88 335.78,-220.67 327.37,-214.23 325.18,-220.88"/>
|
||||
</g>
|
||||
<!-- Node11 -->
|
||||
<g id="node11" class="node">
|
||||
<title>Node11</title>
|
||||
<g id="a_node11"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a2dfbda148aad0bfaba2ebfda9ebc915a" target="_top" xlink:title="Utility function to assign highest parent that can be reached though heavy chains.">
|
||||
<polygon fill="white" stroke="black" points="336,-120.5 336,-161.5 449,-161.5 449,-120.5 336,-120.5"/>
|
||||
<text text-anchor="start" x="344" y="-149.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="344" y="-138.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="392.5" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_par</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node11 -->
|
||||
<g id="edge10" class="edge">
|
||||
<title>Node7->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M298.41,-171.61C307.48,-168.63 316.94,-165.52 326.21,-162.47"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="327.37,-165.77 335.78,-159.33 325.18,-159.12 327.37,-165.77"/>
|
||||
</g>
|
||||
<!-- Node12 -->
|
||||
<g id="node12" class="node">
|
||||
<title>Node12</title>
|
||||
<g id="a_node12"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ad22d760a5a33545a70e7ea5e1786c8dc" target="_top" xlink:title="This function must be called after the tree adjacency list and node values are populated The function...">
|
||||
<polygon fill="white" stroke="black" points="336,-60.5 336,-101.5 449,-101.5 449,-60.5 336,-60.5"/>
|
||||
<text text-anchor="start" x="344" y="-89.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="344" y="-78.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="392.5" y="-67.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node12 -->
|
||||
<g id="edge11" class="edge">
|
||||
<title>Node7->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M263.53,-169.34C281.38,-152.45 308.13,-128.57 334,-111 336.12,-109.56 338.32,-108.14 340.56,-106.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="342.56,-109.63 349.38,-101.52 338.99,-103.61 342.56,-109.63"/>
|
||||
</g>
|
||||
<!-- Node13 -->
|
||||
<g id="node13" class="node">
|
||||
<title>Node13</title>
|
||||
<g id="a_node13"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae8de7aefcb6635d3dacdd174cd4890c4" target="_top" xlink:title="Utility function to populate the t_par vector.">
|
||||
<polygon fill="white" stroke="black" points="487,-30.5 487,-71.5 600,-71.5 600,-30.5 487,-30.5"/>
|
||||
<text text-anchor="start" x="495" y="-59.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="495" y="-48.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="543.5" y="-37.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node12->Node13 -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>Node12->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M449.41,-69.74C458.38,-67.94 467.74,-66.05 476.92,-64.2"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="477.66,-67.62 486.78,-62.22 476.28,-60.76 477.66,-67.62"/>
|
||||
</g>
|
||||
<!-- Node14 -->
|
||||
<g id="node14" class="node">
|
||||
<title>Node14</title>
|
||||
<g id="a_node14"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa339c31ec74cd86a4842a8b09653d460" target="_top" xlink:title="Utility function to compute sub-tree sizes.">
|
||||
<polygon fill="white" stroke="black" points="487,-90.5 487,-131.5 600,-131.5 600,-90.5 487,-90.5"/>
|
||||
<text text-anchor="start" x="495" y="-119.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="495" y="-108.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="543.5" y="-97.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node12->Node14 -->
|
||||
<g id="edge13" class="edge">
|
||||
<title>Node12->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M449.41,-92.26C458.38,-94.06 467.74,-95.95 476.92,-97.8"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="476.28,-101.24 486.78,-99.78 477.66,-94.38 476.28,-101.24"/>
|
||||
</g>
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a7d5b40c076347a6aabfb37a0590f2f24" target="_top" xlink:title="Utility function to break down a path query into two chain queries.">
|
||||
<polygon fill="white" stroke="black" points="336,-278.5 336,-319.5 449,-319.5 449,-278.5 336,-278.5"/>
|
||||
<text text-anchor="start" x="344" y="-307.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="344" y="-296.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="392.5" y="-285.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::chain_query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node15->Node16 -->
|
||||
<g id="edge16" class="edge">
|
||||
<title>Node15->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M298.41,-292.13C307.29,-292.78 316.54,-293.47 325.62,-294.14"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="325.55,-297.64 335.78,-294.89 326.06,-290.66 325.55,-297.64"/>
|
||||
</g>
|
||||
<!-- Node18 -->
|
||||
<g id="node18" class="node">
|
||||
<title>Node18</title>
|
||||
<g id="a_node18"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae2b407e64aaf9878fbee7ee6efe9c7d4" target="_top" xlink:title="The function returns the least common ancestor of two nodes.">
|
||||
<polygon fill="white" stroke="black" points="336,-338.5 336,-379.5 449,-379.5 449,-338.5 336,-338.5"/>
|
||||
<text text-anchor="start" x="344" y="-367.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="344" y="-356.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="392.5" y="-345.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node15->Node18 -->
|
||||
<g id="edge19" class="edge">
|
||||
<title>Node15->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M285.6,-308.54C302.2,-316.45 321.36,-325.58 338.77,-333.88"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="337.71,-337.25 348.24,-338.39 340.72,-330.93 337.71,-337.25"/>
|
||||
</g>
|
||||
<!-- Node16->Node8 -->
|
||||
<g id="edge17" class="edge">
|
||||
<title>Node16->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M433.12,-278.4C439.12,-275.26 445.23,-272.05 451,-269 465.38,-261.4 480.98,-253.07 495.17,-245.47"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="497.1,-248.41 504.26,-240.59 493.8,-242.24 497.1,-248.41"/>
|
||||
</g>
|
||||
<!-- Node17 -->
|
||||
<g id="node17" class="node">
|
||||
<title>Node17</title>
|
||||
<g id="a_node17"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/algorithm/swap.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="514,-289.5 514,-308.5 573,-308.5 573,-289.5 514,-289.5"/>
|
||||
<text text-anchor="middle" x="543.5" y="-296.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::swap</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node16->Node17 -->
|
||||
<g id="edge18" class="edge">
|
||||
<title>Node16->Node17</title>
|
||||
<path fill="none" stroke="midnightblue" d="M449.41,-299C467.42,-299 486.99,-299 503.52,-299"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="503.89,-302.5 513.89,-299 503.89,-295.5 503.89,-302.5"/>
|
||||
</g>
|
||||
<!-- Node19 -->
|
||||
<g id="node19" class="node">
|
||||
<title>Node19</title>
|
||||
<g id="a_node19"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ac7761255f2ba06b398b9aae5e4dce5f3" target="_top" xlink:title="The function lifts a node, k units up the tree. The lifting is done in place, and the result is store...">
|
||||
<polygon fill="white" stroke="black" points="487,-338.5 487,-379.5 600,-379.5 600,-338.5 487,-338.5"/>
|
||||
<text text-anchor="start" x="495" y="-367.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="495" y="-356.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="543.5" y="-345.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lift</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node18->Node19 -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>Node18->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M449.41,-359C458.29,-359 467.54,-359 476.62,-359"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="476.78,-362.5 486.78,-359 476.78,-355.5 476.78,-362.5"/>
|
||||
</g>
|
||||
<!-- Node20->Node21 -->
|
||||
<g id="edge22" class="edge">
|
||||
<title>Node20->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M298.41,-493C311.83,-495.17 326.11,-497.47 339.36,-499.6"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="338.82,-503.06 349.25,-501.2 339.94,-496.15 338.82,-503.06"/>
|
||||
</g>
|
||||
<!-- Node23 -->
|
||||
<g id="node23" class="node">
|
||||
<title>Node23</title>
|
||||
<g id="a_node23"><a xlink:href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a3c75bf5770790f8eba8cc92227b5400c" target="_top" xlink:title="Update the value at a node.">
|
||||
<polygon fill="white" stroke="black" points="336,-561.5 336,-602.5 449,-602.5 449,-561.5 336,-561.5"/>
|
||||
<text text-anchor="start" x="344" y="-590.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="344" y="-579.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="392.5" y="-568.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node22->Node23 -->
|
||||
<g id="edge25" class="edge">
|
||||
<title>Node22->Node23</title>
|
||||
<path fill="none" stroke="midnightblue" d="M298.41,-582C307.29,-582 316.54,-582 325.62,-582"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="325.78,-585.5 335.78,-582 325.78,-578.5 325.78,-585.5"/>
|
||||
</g>
|
||||
<!-- Node24->Node5 -->
|
||||
<g id="edge27" class="edge">
|
||||
<title>Node24->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.03,-463.64C136.96,-460.76 143.34,-457.44 149,-454 169.2,-441.72 190.47,-426.09 207.42,-412.92"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="209.66,-415.6 215.36,-406.67 205.34,-410.1 209.66,-415.6"/>
|
||||
</g>
|
||||
<!-- Node24->Node6 -->
|
||||
<g id="edge29" class="edge">
|
||||
<title>Node24->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.17,-479.53C137.66,-482.44 144.32,-486.49 149,-492 185.06,-534.43 140.33,-578.76 185,-612 225.29,-641.98 257.81,-642.11 298,-612 343.58,-577.85 307.03,-539.17 334,-489 344.43,-469.6 361.05,-450.74 373.75,-437.82"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="376.41,-440.11 381.06,-430.59 371.49,-435.14 376.41,-440.11"/>
|
||||
</g>
|
||||
<!-- Node24->Node7 -->
|
||||
<g id="edge28" class="edge">
|
||||
<title>Node24->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.13,-466.94C137.77,-464.04 144.54,-459.88 149,-454 202.57,-383.47 147.83,-338.39 185,-258 191.65,-243.62 202.06,-229.7 212.07,-218.24"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="214.76,-220.48 218.89,-210.72 209.58,-215.78 214.76,-220.48"/>
|
||||
</g>
|
||||
<!-- Node24->Node15 -->
|
||||
<g id="edge30" class="edge">
|
||||
<title>Node24->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.38,-466.11C137.73,-463.21 144.25,-459.25 149,-454 180.11,-419.57 162.01,-396.31 185,-356 192.97,-342.02 203.82,-328 213.8,-316.35"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="216.56,-318.52 220.53,-308.7 211.3,-313.9 216.56,-318.52"/>
|
||||
</g>
|
||||
<!-- Node24->Node20 -->
|
||||
<g id="edge31" class="edge">
|
||||
<title>Node24->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.26,-474.79C143.23,-475.8 158.89,-477.12 174.6,-478.45"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="174.64,-481.96 184.9,-479.31 175.23,-474.99 174.64,-481.96"/>
|
||||
</g>
|
||||
<!-- Node24->Node21 -->
|
||||
<g id="edge32" class="edge">
|
||||
<title>Node24->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.37,-479.37C137.87,-482.27 144.49,-486.35 149,-492 192.61,-546.57 130.24,-601.63 185,-645 224.37,-676.18 256.57,-673.39 298,-645 334.56,-619.95 307.41,-587.46 334,-552 342.57,-540.57 354.86,-530.62 365.88,-523.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="367.87,-525.97 374.35,-517.58 364.06,-520.1 367.87,-525.97"/>
|
||||
</g>
|
||||
<!-- Node24->Node22 -->
|
||||
<g id="edge33" class="edge">
|
||||
<title>Node24->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.11,-480.76C137.3,-483.68 143.8,-487.42 149,-492 170.92,-511.31 164.17,-526.52 185,-547 188.02,-549.96 191.32,-552.81 194.78,-555.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="192.88,-558.44 203.02,-561.49 196.99,-552.78 192.88,-558.44"/>
|
||||
</g>
|
||||
<!-- Node25->Node5 -->
|
||||
<g id="edge35" class="edge">
|
||||
<title>Node25->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.26,-427.02C143.63,-422.37 159.96,-416.24 176.21,-410.14"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="177.61,-413.35 185.74,-406.56 175.15,-406.8 177.61,-413.35"/>
|
||||
</g>
|
||||
<!-- Node25->Node6 -->
|
||||
<g id="edge37" class="edge">
|
||||
<title>Node25->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.16,-433.95C171.49,-431.94 260.94,-427.49 323.68,-424.37"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="324.09,-427.86 333.9,-423.86 323.74,-420.87 324.09,-427.86"/>
|
||||
</g>
|
||||
<!-- Node25->Node7 -->
|
||||
<g id="edge36" class="edge">
|
||||
<title>Node25->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M118.58,-425.31C127.33,-414.98 140.77,-397.83 149,-381 174.04,-329.84 158.46,-308.4 185,-258 192.44,-243.87 203.09,-229.91 213.08,-218.35"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="215.8,-220.56 219.84,-210.76 210.57,-215.9 215.8,-220.56"/>
|
||||
</g>
|
||||
<!-- Node25->Node15 -->
|
||||
<g id="edge38" class="edge">
|
||||
<title>Node25->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M118.56,-425.35C137.93,-403.53 185.74,-349.69 215.41,-316.26"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="218.15,-318.44 222.17,-308.64 212.92,-313.8 218.15,-318.44"/>
|
||||
</g>
|
||||
<!-- Node25->Node20 -->
|
||||
<g id="edge39" class="edge">
|
||||
<title>Node25->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.26,-442.98C143.63,-447.63 159.96,-453.76 176.21,-459.86"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="175.15,-463.2 185.74,-463.44 177.61,-456.65 175.15,-463.2"/>
|
||||
</g>
|
||||
<!-- Node25->Node21 -->
|
||||
<g id="edge40" class="edge">
|
||||
<title>Node25->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.22,-442.64C137.42,-445.55 143.89,-449.32 149,-454 171.93,-475.01 157.94,-498.68 185,-514 237.26,-543.59 309.51,-531.9 353.24,-520.28"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="354.22,-523.64 362.91,-517.58 352.34,-516.89 354.22,-523.64"/>
|
||||
</g>
|
||||
<!-- Node25->Node22 -->
|
||||
<g id="edge41" class="edge">
|
||||
<title>Node25->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.33,-441.93C137.68,-444.84 144.21,-448.79 149,-454 179,-486.63 156.83,-512.78 185,-547 187.35,-549.85 189.99,-552.54 192.81,-555.06"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="190.65,-557.82 200.64,-561.35 195.04,-552.36 190.65,-557.82"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 31 KiB |
@@ -1,28 +1,6 @@
|
||||
<map id="main" name="main">
|
||||
<area shape="rect" id="node1" title="Main function." alt="" coords="5,251,56,278"/>
|
||||
<area shape="rect" id="node2" href="$d5/d83/lcm__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d" title=" " alt="" coords="104,251,148,278"/>
|
||||
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="213,150,285,177"/>
|
||||
<area shape="rect" id="node4" href="$dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244" title=" " alt="" coords="196,201,303,227"/>
|
||||
<area shape="rect" id="node5" href="$d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817" title=" " alt="" coords="220,399,279,426"/>
|
||||
<area shape="rect" id="node25" href="$d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d" title=" " alt="" coords="220,251,279,278"/>
|
||||
<area shape="rect" id="node26" href="$d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a" title=" " alt="" coords="220,302,279,329"/>
|
||||
<area shape="rect" id="node6" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a79ab4601c4a95c0902ac04e779e5f54d" title="Adds an undirected edge from node u to node v in the tree." alt="" coords="351,353,501,409"/>
|
||||
<area shape="rect" id="node7" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/push_back.html#" title=" " alt="" coords="549,321,705,347"/>
|
||||
<area shape="rect" id="node8" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#ae9e979edd69678b85665c01e2ee97828" title="This function must be called after the tree adjacency list and node values are populated The function..." alt="" coords="351,614,501,670"/>
|
||||
<area shape="rect" id="node16" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a4dfbf5d9df825eeb63b294c6849bdcab" title="This function returns the sum of node values in the simple path from from node_1 to node_2." alt="" coords="351,483,501,539"/>
|
||||
<area shape="rect" id="node21" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a04cd96efaba147b19d3afc769b90ff70" title="Set the values for all the nodes." alt="" coords="351,222,501,278"/>
|
||||
<area shape="rect" id="node22" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/size.html#" title=" " alt="" coords="570,205,685,231"/>
|
||||
<area shape="rect" id="node23" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a9f1cb54ed09fde931bf3220d75ee4c57" title="This function updates the value at node with val." alt="" coords="351,91,501,147"/>
|
||||
<area shape="rect" id="node9" href="$d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74" title="Function that specifies the type of operation involved when segments are combined." alt="" coords="753,574,904,630"/>
|
||||
<area shape="rect" id="node10" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#af64848d6630c39d0f09ce2359cc7c4f8" title="Utility function to assign heavy child to each node (-1 for a leaf node)" alt="" coords="552,839,703,895"/>
|
||||
<area shape="rect" id="node11" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a0579062b384e54b611b80c6337c7f2c8" title="Utility function to lable the nodes so that heavy chains have a contigous lable." alt="" coords="552,549,703,605"/>
|
||||
<area shape="rect" id="node12" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a2dfbda148aad0bfaba2ebfda9ebc915a" title="Utility function to assign highest parent that can be reached though heavy chains." alt="" coords="552,679,703,735"/>
|
||||
<area shape="rect" id="node13" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ad22d760a5a33545a70e7ea5e1786c8dc" title="This function must be called after the tree adjacency list and node values are populated The function..." alt="" coords="552,759,703,815"/>
|
||||
<area shape="rect" id="node14" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae8de7aefcb6635d3dacdd174cd4890c4" title="Utility function to populate the t_par vector." alt="" coords="753,799,904,855"/>
|
||||
<area shape="rect" id="node15" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa339c31ec74cd86a4842a8b09653d460" title="Utility function to compute sub-tree sizes." alt="" coords="753,719,904,775"/>
|
||||
<area shape="rect" id="node17" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a7d5b40c076347a6aabfb37a0590f2f24" title="Utility function to break down a path query into two chain queries." alt="" coords="552,469,703,525"/>
|
||||
<area shape="rect" id="node19" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae2b407e64aaf9878fbee7ee6efe9c7d4" title="The function returns the least common ancestor of two nodes." alt="" coords="552,389,703,445"/>
|
||||
<area shape="rect" id="node18" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/swap.html#" title=" " alt="" coords="789,483,868,510"/>
|
||||
<area shape="rect" id="node20" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ac7761255f2ba06b398b9aae5e4dce5f3" title="The function lifts a node, k units up the tree. The lifting is done in place, and the result is store..." alt="" coords="753,389,904,445"/>
|
||||
<area shape="rect" id="node24" href="$d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a3c75bf5770790f8eba8cc92227b5400c" title="Update the value at a node." alt="" coords="552,91,703,147"/>
|
||||
<area shape="rect" id="node1" title="Main function." alt="" coords="5,31,56,57"/>
|
||||
<area shape="rect" id="node2" href="$d5/d83/lcm__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d" title=" " alt="" coords="104,31,148,57"/>
|
||||
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="213,5,285,32"/>
|
||||
<area shape="rect" id="node4" href="$dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244" title=" " alt="" coords="196,56,303,83"/>
|
||||
</map>
|
||||
|
||||
@@ -1 +1 @@
|
||||
83b08824d4fcdf886c7dd319d4a04e26
|
||||
5e5751c0edbf3c72cc6f338d69c2ebba
|
||||
@@ -4,63 +4,17 @@
|
||||
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
|
||||
-->
|
||||
<!-- Title: main Pages: 1 -->
|
||||
<!--zoomable 676 -->
|
||||
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
|
||||
<style type="text/css"><![CDATA[
|
||||
.edge:hover path { stroke: red; }
|
||||
.edge:hover polygon { stroke: red; fill: red; }
|
||||
]]></style>
|
||||
<script type="text/javascript"><![CDATA[
|
||||
var edges = document.getElementsByTagName('g');
|
||||
if (edges && edges.length) {
|
||||
for (var i=0;i<edges.length;i++) {
|
||||
if (edges[i].id.substr(0,4)=='edge') {
|
||||
edges[i].setAttribute('class','edge');
|
||||
}
|
||||
}
|
||||
}
|
||||
]]></script>
|
||||
<defs>
|
||||
<circle id="rim" cx="0" cy="0" r="7"/>
|
||||
<circle id="rim2" cx="0" cy="0" r="3.5"/>
|
||||
<g id="zoomPlus">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/>
|
||||
</use>
|
||||
<path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
|
||||
</g>
|
||||
<g id="zoomMin">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/>
|
||||
</use>
|
||||
<path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
|
||||
</g>
|
||||
<g id="dirArrow">
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="resetDef">
|
||||
<use xlink:href="#rim2" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/>
|
||||
</use>
|
||||
</g>
|
||||
</defs>
|
||||
|
||||
<script type="text/javascript">
|
||||
var viewWidth = 682;
|
||||
var viewHeight = 676;
|
||||
var sectionId = 'dynsection-1';
|
||||
</script>
|
||||
<script xlink:href="../../svgpan.js"/>
|
||||
<svg id="graph" class="graph">
|
||||
<g id="viewport">
|
||||
<svg width="231pt" height="66pt"
|
||||
viewBox="0.00 0.00 231.00 66.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 62)">
|
||||
<title>main</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-671.51 678,-671.51 678,4 -4,4"/>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-62 227,-62 227,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title="Main function.">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-463.5 0,-482.5 38,-482.5 38,-463.5 0,-463.5"/>
|
||||
<text text-anchor="middle" x="19" y="-470.5" font-family="Helvetica,sans-Serif" font-size="10.00">main</text>
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-19.5 0,-38.5 38,-38.5 38,-19.5 0,-19.5"/>
|
||||
<text text-anchor="middle" x="19" y="-26.5" font-family="Helvetica,sans-Serif" font-size="10.00">main</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
@@ -68,552 +22,46 @@ var sectionId = 'dynsection-1';
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a xlink:href="../../d5/d83/lcm__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-463.5 74,-482.5 107,-482.5 107,-463.5 74,-463.5"/>
|
||||
<text text-anchor="middle" x="90.5" y="-470.5" font-family="Helvetica,sans-Serif" font-size="10.00">test</text>
|
||||
<polygon fill="white" stroke="black" points="74,-19.5 74,-38.5 107,-38.5 107,-19.5 74,-19.5"/>
|
||||
<text text-anchor="middle" x="90.5" y="-26.5" font-family="Helvetica,sans-Serif" font-size="10.00">test</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M38.26,-473C46.07,-473 55.31,-473 63.79,-473"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="63.95,-476.5 73.95,-473 63.95,-469.5 63.95,-476.5"/>
|
||||
<path fill="none" stroke="midnightblue" d="M38.26,-29C46.07,-29 55.31,-29 63.79,-29"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="63.95,-32.5 73.95,-29 63.95,-25.5 63.95,-32.5"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="156,-539.5 156,-558.5 210,-558.5 210,-539.5 156,-539.5"/>
|
||||
<text text-anchor="middle" x="183" y="-546.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
<polygon fill="white" stroke="black" points="156,-38.5 156,-57.5 210,-57.5 210,-38.5 156,-38.5"/>
|
||||
<text text-anchor="middle" x="183" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node2->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M98.26,-482.51C107.33,-494.73 124.45,-516.05 143,-530 145.05,-531.54 147.25,-533.01 149.52,-534.4"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="148.02,-537.57 158.47,-539.34 151.4,-531.44 148.02,-537.57"/>
|
||||
<path fill="none" stroke="midnightblue" d="M107.26,-32.31C117.92,-34.55 132.43,-37.59 145.84,-40.41"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="145.29,-43.87 155.79,-42.5 146.73,-37.02 145.29,-43.87"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="143,-501.5 143,-520.5 223,-520.5 223,-501.5 143,-501.5"/>
|
||||
<text text-anchor="middle" x="183" y="-508.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::lcmSum</text>
|
||||
<polygon fill="white" stroke="black" points="143,-0.5 143,-19.5 223,-19.5 223,-0.5 143,-0.5"/>
|
||||
<text text-anchor="middle" x="183" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::lcmSum</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node2->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.26,-479.62C118.95,-484.53 135.28,-491.38 149.7,-497.44"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="148.72,-500.82 159.29,-501.47 151.43,-494.37 148.72,-500.82"/>
|
||||
</g>
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="161,-352.5 161,-371.5 205,-371.5 205,-352.5 161,-352.5"/>
|
||||
<text text-anchor="middle" x="183" y="-359.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_1</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node5 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node2->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M99.53,-463.15C114.87,-444.34 148.5,-403.09 167.74,-379.49"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="170.51,-381.63 174.12,-371.67 165.08,-377.21 170.51,-381.63"/>
|
||||
</g>
|
||||
<!-- Node25 -->
|
||||
<g id="node25" class="node">
|
||||
<title>Node25</title>
|
||||
<g id="a_node25"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="161,-463.5 161,-482.5 205,-482.5 205,-463.5 161,-463.5"/>
|
||||
<text text-anchor="middle" x="183" y="-470.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_2</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node25 -->
|
||||
<g id="edge27" class="edge">
|
||||
<title>Node2->Node25</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.26,-473C119.24,-473 136.11,-473 150.79,-473"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="150.99,-476.5 160.99,-473 150.99,-469.5 150.99,-476.5"/>
|
||||
</g>
|
||||
<!-- Node26 -->
|
||||
<g id="node26" class="node">
|
||||
<title>Node26</title>
|
||||
<g id="a_node26"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="161,-425.5 161,-444.5 205,-444.5 205,-425.5 161,-425.5"/>
|
||||
<text text-anchor="middle" x="183" y="-432.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_3</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node26 -->
|
||||
<g id="edge35" class="edge">
|
||||
<title>Node2->Node26</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.26,-466.38C119.48,-461.25 136.77,-453.99 151.64,-447.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="153.12,-450.92 160.99,-443.82 150.41,-444.47 153.12,-450.92"/>
|
||||
</g>
|
||||
<!-- Node6 -->
|
||||
<g id="node6" class="node">
|
||||
<title>Node6</title>
|
||||
<g id="a_node6"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a79ab4601c4a95c0902ac04e779e5f54d" target="_top" xlink:title="Adds an undirected edge from node u to node v in the tree.">
|
||||
<polygon fill="white" stroke="black" points="259,-365.5 259,-406.5 372,-406.5 372,-365.5 259,-365.5"/>
|
||||
<text text-anchor="start" x="267" y="-394.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-383.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="315.5" y="-372.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::add_edge</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node6 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node5->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.26,-365.91C217.34,-368.13 233.19,-371.05 249.05,-373.96"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="248.43,-377.41 258.9,-375.77 249.7,-370.52 248.43,-377.41"/>
|
||||
</g>
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/push_back.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="408,-411.5 408,-430.5 525,-430.5 525,-411.5 408,-411.5"/>
|
||||
<text text-anchor="middle" x="466.5" y="-418.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node7 -->
|
||||
<g id="edge15" class="edge">
|
||||
<title>Node5->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M187.38,-352.48C195.65,-330.87 219.17,-278.38 259,-258 303.71,-235.12 332.06,-227.55 372,-258 420.02,-294.6 370.71,-341.51 408,-389 413.69,-396.25 421.5,-402.1 429.53,-406.73"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="428.1,-409.93 438.59,-411.43 431.33,-403.72 428.1,-409.93"/>
|
||||
</g>
|
||||
<!-- Node8 -->
|
||||
<g id="node8" class="node">
|
||||
<title>Node8</title>
|
||||
<g id="a_node8"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#ae9e979edd69678b85665c01e2ee97828" target="_top" xlink:title="This function must be called after the tree adjacency list and node values are populated The function...">
|
||||
<polygon fill="white" stroke="black" points="259,-169.5 259,-210.5 372,-210.5 372,-169.5 259,-169.5"/>
|
||||
<text text-anchor="start" x="267" y="-198.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-187.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="315.5" y="-176.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node8 -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>Node5->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M187.34,-352.33C195.98,-328.37 221.11,-265.3 259,-225 261.73,-222.1 264.75,-219.33 267.93,-216.72"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="270.22,-219.38 276.1,-210.57 266.01,-213.79 270.22,-219.38"/>
|
||||
</g>
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a4dfbf5d9df825eeb63b294c6849bdcab" target="_top" xlink:title="This function returns the sum of node values in the simple path from from node_1 to node_2.">
|
||||
<polygon fill="white" stroke="black" points="259,-267.5 259,-308.5 372,-308.5 372,-267.5 259,-267.5"/>
|
||||
<text text-anchor="start" x="267" y="-296.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-285.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="315.5" y="-274.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node16 -->
|
||||
<g id="edge16" class="edge">
|
||||
<title>Node5->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M200.79,-352.48C218.07,-342.68 245.72,-327 269.43,-313.55"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="271.33,-316.5 278.3,-308.53 267.87,-310.42 271.33,-316.5"/>
|
||||
</g>
|
||||
<!-- Node21 -->
|
||||
<g id="node21" class="node">
|
||||
<title>Node21</title>
|
||||
<g id="a_node21"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a04cd96efaba147b19d3afc769b90ff70" target="_top" xlink:title="Set the values for all the nodes.">
|
||||
<polygon fill="white" stroke="black" points="259,-463.5 259,-504.5 372,-504.5 372,-463.5 259,-463.5"/>
|
||||
<text text-anchor="start" x="267" y="-492.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-481.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="315.5" y="-470.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::set_node_val</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node21 -->
|
||||
<g id="edge22" class="edge">
|
||||
<title>Node5->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M194.24,-371.57C213.55,-389.62 255.98,-429.29 284.91,-456.34"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="282.62,-458.99 292.32,-463.26 287.4,-453.88 282.62,-458.99"/>
|
||||
</g>
|
||||
<!-- Node22 -->
|
||||
<g id="node22" class="node">
|
||||
<title>Node22</title>
|
||||
<g id="a_node22"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/size.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="423.5,-498.5 423.5,-517.5 509.5,-517.5 509.5,-498.5 423.5,-498.5"/>
|
||||
<text text-anchor="middle" x="466.5" y="-505.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node22 -->
|
||||
<g id="edge24" class="edge">
|
||||
<title>Node5->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.01,-354.1C242.15,-341.59 320.34,-321.93 372,-356 405.91,-378.36 386.65,-405.45 408,-440 419.57,-458.73 436.07,-477.67 448.43,-490.79"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="446.05,-493.37 455.5,-498.15 451.1,-488.51 446.05,-493.37"/>
|
||||
</g>
|
||||
<!-- Node23 -->
|
||||
<g id="node23" class="node">
|
||||
<title>Node23</title>
|
||||
<g id="a_node23"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a9f1cb54ed09fde931bf3220d75ee4c57" target="_top" xlink:title="This function updates the value at node with val.">
|
||||
<polygon fill="white" stroke="black" points="259,-561.5 259,-602.5 372,-602.5 372,-561.5 259,-561.5"/>
|
||||
<text text-anchor="start" x="267" y="-590.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-579.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="315.5" y="-568.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node23 -->
|
||||
<g id="edge25" class="edge">
|
||||
<title>Node5->Node23</title>
|
||||
<path fill="none" stroke="midnightblue" d="M192.36,-371.8C200.92,-382.23 214.2,-399.46 223,-416 244.79,-456.97 236.01,-473.69 259,-514 266.97,-527.98 277.82,-542 287.8,-553.65"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="285.3,-556.1 294.53,-561.3 290.56,-551.48 285.3,-556.1"/>
|
||||
</g>
|
||||
<!-- Node6->Node7 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>Node6->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M372.41,-399.13C386.22,-402.38 400.96,-405.84 414.53,-409.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="414.11,-412.52 424.64,-411.4 415.71,-405.71 414.11,-412.52"/>
|
||||
</g>
|
||||
<!-- Node9 -->
|
||||
<g id="node9" class="node">
|
||||
<title>Node9</title>
|
||||
<g id="a_node9"><a xlink:href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74" target="_top" xlink:title="Function that specifies the type of operation involved when segments are combined.">
|
||||
<polygon fill="white" stroke="black" points="561,-199.5 561,-240.5 674,-240.5 674,-199.5 561,-199.5"/>
|
||||
<text text-anchor="start" x="569" y="-228.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="569" y="-217.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="617.5" y="-206.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::combine</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node9 -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>Node8->Node9</title>
|
||||
<path fill="none" stroke="midnightblue" d="M372.3,-194.65C414.31,-198.25 473.31,-203.54 525,-209 533.35,-209.88 542.12,-210.86 550.79,-211.87"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="550.54,-215.36 560.88,-213.05 551.36,-208.41 550.54,-215.36"/>
|
||||
</g>
|
||||
<!-- Node10 -->
|
||||
<g id="node10" class="node">
|
||||
<title>Node10</title>
|
||||
<g id="a_node10"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#af64848d6630c39d0f09ce2359cc7c4f8" target="_top" xlink:title="Utility function to assign heavy child to each node (-1 for a leaf node)">
|
||||
<polygon fill="white" stroke="black" points="410,-0.5 410,-41.5 523,-41.5 523,-0.5 410,-0.5"/>
|
||||
<text text-anchor="start" x="418" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="418" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="466.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_hc</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node10 -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>Node8->Node10</title>
|
||||
<path fill="none" stroke="midnightblue" d="M325.94,-169.25C340.18,-139.81 369.63,-85.67 408,-51 409.29,-49.83 410.64,-48.7 412.03,-47.59"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="414.27,-50.29 420.37,-41.62 410.2,-44.6 414.27,-50.29"/>
|
||||
</g>
|
||||
<!-- Node11 -->
|
||||
<g id="node11" class="node">
|
||||
<title>Node11</title>
|
||||
<g id="a_node11"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a0579062b384e54b611b80c6337c7f2c8" target="_top" xlink:title="Utility function to lable the nodes so that heavy chains have a contigous lable.">
|
||||
<polygon fill="white" stroke="black" points="410,-218.5 410,-259.5 523,-259.5 523,-218.5 410,-218.5"/>
|
||||
<text text-anchor="start" x="418" y="-247.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="418" y="-236.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="466.5" y="-225.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_labels</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node11 -->
|
||||
<g id="edge10" class="edge">
|
||||
<title>Node8->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M372.41,-208.39C381.48,-211.37 390.94,-214.48 400.21,-217.53"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="399.18,-220.88 409.78,-220.67 401.37,-214.23 399.18,-220.88"/>
|
||||
</g>
|
||||
<!-- Node12 -->
|
||||
<g id="node12" class="node">
|
||||
<title>Node12</title>
|
||||
<g id="a_node12"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a2dfbda148aad0bfaba2ebfda9ebc915a" target="_top" xlink:title="Utility function to assign highest parent that can be reached though heavy chains.">
|
||||
<polygon fill="white" stroke="black" points="410,-120.5 410,-161.5 523,-161.5 523,-120.5 410,-120.5"/>
|
||||
<text text-anchor="start" x="418" y="-149.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="418" y="-138.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="466.5" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_par</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node12 -->
|
||||
<g id="edge11" class="edge">
|
||||
<title>Node8->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M372.41,-171.61C381.48,-168.63 390.94,-165.52 400.21,-162.47"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="401.37,-165.77 409.78,-159.33 399.18,-159.12 401.37,-165.77"/>
|
||||
</g>
|
||||
<!-- Node13 -->
|
||||
<g id="node13" class="node">
|
||||
<title>Node13</title>
|
||||
<g id="a_node13"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ad22d760a5a33545a70e7ea5e1786c8dc" target="_top" xlink:title="This function must be called after the tree adjacency list and node values are populated The function...">
|
||||
<polygon fill="white" stroke="black" points="410,-60.5 410,-101.5 523,-101.5 523,-60.5 410,-60.5"/>
|
||||
<text text-anchor="start" x="418" y="-89.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="418" y="-78.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="466.5" y="-67.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node13 -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>Node8->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M337.53,-169.34C355.38,-152.45 382.13,-128.57 408,-111 410.12,-109.56 412.32,-108.14 414.56,-106.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="416.56,-109.63 423.38,-101.52 412.99,-103.61 416.56,-109.63"/>
|
||||
</g>
|
||||
<!-- Node14 -->
|
||||
<g id="node14" class="node">
|
||||
<title>Node14</title>
|
||||
<g id="a_node14"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae8de7aefcb6635d3dacdd174cd4890c4" target="_top" xlink:title="Utility function to populate the t_par vector.">
|
||||
<polygon fill="white" stroke="black" points="561,-30.5 561,-71.5 674,-71.5 674,-30.5 561,-30.5"/>
|
||||
<text text-anchor="start" x="569" y="-59.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="569" y="-48.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="617.5" y="-37.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node13->Node14 -->
|
||||
<g id="edge13" class="edge">
|
||||
<title>Node13->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M523.41,-69.74C532.38,-67.94 541.74,-66.05 550.92,-64.2"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="551.66,-67.62 560.78,-62.22 550.28,-60.76 551.66,-67.62"/>
|
||||
</g>
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa339c31ec74cd86a4842a8b09653d460" target="_top" xlink:title="Utility function to compute sub-tree sizes.">
|
||||
<polygon fill="white" stroke="black" points="561,-90.5 561,-131.5 674,-131.5 674,-90.5 561,-90.5"/>
|
||||
<text text-anchor="start" x="569" y="-119.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="569" y="-108.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="617.5" y="-97.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node13->Node15 -->
|
||||
<g id="edge14" class="edge">
|
||||
<title>Node13->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M523.41,-92.26C532.38,-94.06 541.74,-95.95 550.92,-97.8"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="550.28,-101.24 560.78,-99.78 551.66,-94.38 550.28,-101.24"/>
|
||||
</g>
|
||||
<!-- Node17 -->
|
||||
<g id="node17" class="node">
|
||||
<title>Node17</title>
|
||||
<g id="a_node17"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a7d5b40c076347a6aabfb37a0590f2f24" target="_top" xlink:title="Utility function to break down a path query into two chain queries.">
|
||||
<polygon fill="white" stroke="black" points="410,-278.5 410,-319.5 523,-319.5 523,-278.5 410,-278.5"/>
|
||||
<text text-anchor="start" x="418" y="-307.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="418" y="-296.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="466.5" y="-285.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::chain_query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node16->Node17 -->
|
||||
<g id="edge17" class="edge">
|
||||
<title>Node16->Node17</title>
|
||||
<path fill="none" stroke="midnightblue" d="M372.41,-292.13C381.29,-292.78 390.54,-293.47 399.62,-294.14"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="399.55,-297.64 409.78,-294.89 400.06,-290.66 399.55,-297.64"/>
|
||||
</g>
|
||||
<!-- Node19 -->
|
||||
<g id="node19" class="node">
|
||||
<title>Node19</title>
|
||||
<g id="a_node19"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae2b407e64aaf9878fbee7ee6efe9c7d4" target="_top" xlink:title="The function returns the least common ancestor of two nodes.">
|
||||
<polygon fill="white" stroke="black" points="410,-338.5 410,-379.5 523,-379.5 523,-338.5 410,-338.5"/>
|
||||
<text text-anchor="start" x="418" y="-367.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="418" y="-356.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="466.5" y="-345.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node16->Node19 -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>Node16->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M359.6,-308.54C376.2,-316.45 395.36,-325.58 412.77,-333.88"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="411.71,-337.25 422.24,-338.39 414.72,-330.93 411.71,-337.25"/>
|
||||
</g>
|
||||
<!-- Node17->Node9 -->
|
||||
<g id="edge18" class="edge">
|
||||
<title>Node17->Node9</title>
|
||||
<path fill="none" stroke="midnightblue" d="M507.12,-278.4C513.12,-275.26 519.23,-272.05 525,-269 539.38,-261.4 554.98,-253.07 569.17,-245.47"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="571.1,-248.41 578.26,-240.59 567.8,-242.24 571.1,-248.41"/>
|
||||
</g>
|
||||
<!-- Node18 -->
|
||||
<g id="node18" class="node">
|
||||
<title>Node18</title>
|
||||
<g id="a_node18"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/algorithm/swap.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="588,-289.5 588,-308.5 647,-308.5 647,-289.5 588,-289.5"/>
|
||||
<text text-anchor="middle" x="617.5" y="-296.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::swap</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node17->Node18 -->
|
||||
<g id="edge19" class="edge">
|
||||
<title>Node17->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M523.41,-299C541.42,-299 560.99,-299 577.52,-299"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="577.89,-302.5 587.89,-299 577.89,-295.5 577.89,-302.5"/>
|
||||
</g>
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ac7761255f2ba06b398b9aae5e4dce5f3" target="_top" xlink:title="The function lifts a node, k units up the tree. The lifting is done in place, and the result is store...">
|
||||
<polygon fill="white" stroke="black" points="561,-338.5 561,-379.5 674,-379.5 674,-338.5 561,-338.5"/>
|
||||
<text text-anchor="start" x="569" y="-367.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="569" y="-356.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="617.5" y="-345.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lift</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node19->Node20 -->
|
||||
<g id="edge21" class="edge">
|
||||
<title>Node19->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M523.41,-359C532.29,-359 541.54,-359 550.62,-359"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="550.78,-362.5 560.78,-359 550.78,-355.5 550.78,-362.5"/>
|
||||
</g>
|
||||
<!-- Node21->Node22 -->
|
||||
<g id="edge23" class="edge">
|
||||
<title>Node21->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M372.41,-493C385.83,-495.17 400.11,-497.47 413.36,-499.6"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="412.82,-503.06 423.25,-501.2 413.94,-496.15 412.82,-503.06"/>
|
||||
</g>
|
||||
<!-- Node24 -->
|
||||
<g id="node24" class="node">
|
||||
<title>Node24</title>
|
||||
<g id="a_node24"><a xlink:href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a3c75bf5770790f8eba8cc92227b5400c" target="_top" xlink:title="Update the value at a node.">
|
||||
<polygon fill="white" stroke="black" points="410,-561.5 410,-602.5 523,-602.5 523,-561.5 410,-561.5"/>
|
||||
<text text-anchor="start" x="418" y="-590.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="418" y="-579.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="466.5" y="-568.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node23->Node24 -->
|
||||
<g id="edge26" class="edge">
|
||||
<title>Node23->Node24</title>
|
||||
<path fill="none" stroke="midnightblue" d="M372.41,-582C381.29,-582 390.54,-582 399.62,-582"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="399.78,-585.5 409.78,-582 399.78,-578.5 399.78,-585.5"/>
|
||||
</g>
|
||||
<!-- Node25->Node6 -->
|
||||
<g id="edge28" class="edge">
|
||||
<title>Node25->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.03,-463.64C210.96,-460.76 217.34,-457.44 223,-454 243.2,-441.72 264.47,-426.09 281.42,-412.92"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="283.66,-415.6 289.36,-406.67 279.34,-410.1 283.66,-415.6"/>
|
||||
</g>
|
||||
<!-- Node25->Node7 -->
|
||||
<g id="edge30" class="edge">
|
||||
<title>Node25->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.17,-479.53C211.66,-482.44 218.32,-486.49 223,-492 259.06,-534.43 214.33,-578.76 259,-612 299.29,-641.98 331.81,-642.11 372,-612 417.58,-577.85 381.03,-539.17 408,-489 418.43,-469.6 435.05,-450.74 447.75,-437.82"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="450.41,-440.11 455.06,-430.59 445.49,-435.14 450.41,-440.11"/>
|
||||
</g>
|
||||
<!-- Node25->Node8 -->
|
||||
<g id="edge29" class="edge">
|
||||
<title>Node25->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.13,-466.94C211.77,-464.04 218.54,-459.88 223,-454 276.57,-383.47 221.83,-338.39 259,-258 265.65,-243.62 276.06,-229.7 286.07,-218.24"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="288.76,-220.48 292.89,-210.72 283.58,-215.78 288.76,-220.48"/>
|
||||
</g>
|
||||
<!-- Node25->Node16 -->
|
||||
<g id="edge31" class="edge">
|
||||
<title>Node25->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.38,-466.11C211.73,-463.21 218.25,-459.25 223,-454 254.11,-419.57 236.01,-396.31 259,-356 266.97,-342.02 277.82,-328 287.8,-316.35"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="290.56,-318.52 294.53,-308.7 285.3,-313.9 290.56,-318.52"/>
|
||||
</g>
|
||||
<!-- Node25->Node21 -->
|
||||
<g id="edge32" class="edge">
|
||||
<title>Node25->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.26,-474.79C217.23,-475.8 232.89,-477.12 248.6,-478.45"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="248.64,-481.96 258.9,-479.31 249.23,-474.99 248.64,-481.96"/>
|
||||
</g>
|
||||
<!-- Node25->Node22 -->
|
||||
<g id="edge33" class="edge">
|
||||
<title>Node25->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.37,-479.37C211.87,-482.27 218.49,-486.35 223,-492 266.61,-546.57 204.24,-601.63 259,-645 298.37,-676.18 330.57,-673.39 372,-645 408.56,-619.95 381.41,-587.46 408,-552 416.57,-540.57 428.86,-530.62 439.88,-523.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="441.87,-525.97 448.35,-517.58 438.06,-520.1 441.87,-525.97"/>
|
||||
</g>
|
||||
<!-- Node25->Node23 -->
|
||||
<g id="edge34" class="edge">
|
||||
<title>Node25->Node23</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.11,-480.76C211.3,-483.68 217.8,-487.42 223,-492 244.92,-511.31 238.17,-526.52 259,-547 262.02,-549.96 265.32,-552.81 268.78,-555.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="266.88,-558.44 277.02,-561.49 270.99,-552.78 266.88,-558.44"/>
|
||||
</g>
|
||||
<!-- Node26->Node6 -->
|
||||
<g id="edge36" class="edge">
|
||||
<title>Node26->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.26,-427.02C217.63,-422.37 233.96,-416.24 250.21,-410.14"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="251.61,-413.35 259.74,-406.56 249.15,-406.8 251.61,-413.35"/>
|
||||
</g>
|
||||
<!-- Node26->Node7 -->
|
||||
<g id="edge38" class="edge">
|
||||
<title>Node26->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.16,-433.95C245.49,-431.94 334.94,-427.49 397.68,-424.37"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="398.09,-427.86 407.9,-423.86 397.74,-420.87 398.09,-427.86"/>
|
||||
</g>
|
||||
<!-- Node26->Node8 -->
|
||||
<g id="edge37" class="edge">
|
||||
<title>Node26->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M192.58,-425.31C201.33,-414.98 214.77,-397.83 223,-381 248.04,-329.84 232.46,-308.4 259,-258 266.44,-243.87 277.09,-229.91 287.08,-218.35"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="289.8,-220.56 293.84,-210.76 284.57,-215.9 289.8,-220.56"/>
|
||||
</g>
|
||||
<!-- Node26->Node16 -->
|
||||
<g id="edge39" class="edge">
|
||||
<title>Node26->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M192.56,-425.35C211.93,-403.53 259.74,-349.69 289.41,-316.26"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="292.15,-318.44 296.17,-308.64 286.92,-313.8 292.15,-318.44"/>
|
||||
</g>
|
||||
<!-- Node26->Node21 -->
|
||||
<g id="edge40" class="edge">
|
||||
<title>Node26->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.26,-442.98C217.63,-447.63 233.96,-453.76 250.21,-459.86"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="249.15,-463.2 259.74,-463.44 251.61,-456.65 249.15,-463.2"/>
|
||||
</g>
|
||||
<!-- Node26->Node22 -->
|
||||
<g id="edge41" class="edge">
|
||||
<title>Node26->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.22,-442.64C211.42,-445.55 217.89,-449.32 223,-454 245.93,-475.01 231.94,-498.68 259,-514 311.26,-543.59 383.51,-531.9 427.24,-520.28"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="428.22,-523.64 436.91,-517.58 426.34,-516.89 428.22,-523.64"/>
|
||||
</g>
|
||||
<!-- Node26->Node23 -->
|
||||
<g id="edge42" class="edge">
|
||||
<title>Node26->Node23</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.33,-441.93C211.68,-444.84 218.21,-448.79 223,-454 253,-486.63 230.83,-512.78 259,-547 261.35,-549.85 263.99,-552.54 266.81,-555.06"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="264.65,-557.82 274.64,-561.35 269.04,-552.36 264.65,-557.82"/>
|
||||
<path fill="none" stroke="midnightblue" d="M107.26,-25.69C114.48,-24.18 123.47,-22.29 132.68,-20.35"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="133.62,-23.73 142.69,-18.25 132.19,-16.88 133.62,-23.73"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
<g id="navigator" transform="translate(0 0)" fill="#404254">
|
||||
<rect fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width=".5" x="0" y="0" width="60" height="60"/>
|
||||
<use id="zoomplus" xlink:href="#zoomPlus" x="17" y="9" onmousedown="handleZoom(evt,'in')"/>
|
||||
<use id="zoomminus" xlink:href="#zoomMin" x="42" y="9" onmousedown="handleZoom(evt,'out')"/>
|
||||
<use id="reset" xlink:href="#resetDef" x="30" y="36" onmousedown="handleReset()"/>
|
||||
<g id="arrowUp" xlink:href="#dirArrow" transform="translate(30 24)" onmousedown="handlePan(0,-1)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowUp.mouseover" end="arrowUp.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowRight" xlink:href="#dirArrow" transform="rotate(90) translate(36 -43)" onmousedown="handlePan(1,0)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowRight.mouseover" end="arrowRight.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowDown" xlink:href="#dirArrow" transform="rotate(180) translate(-30 -48)" onmousedown="handlePan(0,1)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowDown.mouseover" end="arrowDown.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowLeft" xlink:href="#dirArrow" transform="rotate(270) translate(-36 17)" onmousedown="handlePan(-1,0)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowLeft.mouseover" end="arrowLeft.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
</g>
|
||||
<svg viewBox="0 0 15 15" width="100%" height="30px" preserveAspectRatio="xMaxYMin meet">
|
||||
<g id="arrow_out" transform="scale(0.3 0.3)">
|
||||
<a xlink:href="lcm__sum_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4_cgraph_org.svg" target="_base">
|
||||
<rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
|
||||
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
|
||||
<path id="arrow"
|
||||
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
|
||||
style="fill:#404040;"/>
|
||||
</a>
|
||||
</g>
|
||||
</svg>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 3.0 KiB |
@@ -1,531 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
||||
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
|
||||
-->
|
||||
<!-- Title: main Pages: 1 -->
|
||||
<svg width="682pt" height="676pt"
|
||||
viewBox="0.00 0.00 682.00 675.51" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 671.51)">
|
||||
<title>main</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-671.51 678,-671.51 678,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title="Main function.">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-463.5 0,-482.5 38,-482.5 38,-463.5 0,-463.5"/>
|
||||
<text text-anchor="middle" x="19" y="-470.5" font-family="Helvetica,sans-Serif" font-size="10.00">main</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a xlink:href="../../d5/d83/lcm__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-463.5 74,-482.5 107,-482.5 107,-463.5 74,-463.5"/>
|
||||
<text text-anchor="middle" x="90.5" y="-470.5" font-family="Helvetica,sans-Serif" font-size="10.00">test</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M38.26,-473C46.07,-473 55.31,-473 63.79,-473"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="63.95,-476.5 73.95,-473 63.95,-469.5 63.95,-476.5"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="156,-539.5 156,-558.5 210,-558.5 210,-539.5 156,-539.5"/>
|
||||
<text text-anchor="middle" x="183" y="-546.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node2->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M98.26,-482.51C107.33,-494.73 124.45,-516.05 143,-530 145.05,-531.54 147.25,-533.01 149.52,-534.4"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="148.02,-537.57 158.47,-539.34 151.4,-531.44 148.02,-537.57"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="143,-501.5 143,-520.5 223,-520.5 223,-501.5 143,-501.5"/>
|
||||
<text text-anchor="middle" x="183" y="-508.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::lcmSum</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node2->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.26,-479.62C118.95,-484.53 135.28,-491.38 149.7,-497.44"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="148.72,-500.82 159.29,-501.47 151.43,-494.37 148.72,-500.82"/>
|
||||
</g>
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="161,-352.5 161,-371.5 205,-371.5 205,-352.5 161,-352.5"/>
|
||||
<text text-anchor="middle" x="183" y="-359.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_1</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node5 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node2->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M99.53,-463.15C114.87,-444.34 148.5,-403.09 167.74,-379.49"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="170.51,-381.63 174.12,-371.67 165.08,-377.21 170.51,-381.63"/>
|
||||
</g>
|
||||
<!-- Node25 -->
|
||||
<g id="node25" class="node">
|
||||
<title>Node25</title>
|
||||
<g id="a_node25"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="161,-463.5 161,-482.5 205,-482.5 205,-463.5 161,-463.5"/>
|
||||
<text text-anchor="middle" x="183" y="-470.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_2</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node25 -->
|
||||
<g id="edge27" class="edge">
|
||||
<title>Node2->Node25</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.26,-473C119.24,-473 136.11,-473 150.79,-473"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="150.99,-476.5 160.99,-473 150.99,-469.5 150.99,-476.5"/>
|
||||
</g>
|
||||
<!-- Node26 -->
|
||||
<g id="node26" class="node">
|
||||
<title>Node26</title>
|
||||
<g id="a_node26"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="161,-425.5 161,-444.5 205,-444.5 205,-425.5 161,-425.5"/>
|
||||
<text text-anchor="middle" x="183" y="-432.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_3</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node26 -->
|
||||
<g id="edge35" class="edge">
|
||||
<title>Node2->Node26</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.26,-466.38C119.48,-461.25 136.77,-453.99 151.64,-447.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="153.12,-450.92 160.99,-443.82 150.41,-444.47 153.12,-450.92"/>
|
||||
</g>
|
||||
<!-- Node6 -->
|
||||
<g id="node6" class="node">
|
||||
<title>Node6</title>
|
||||
<g id="a_node6"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a79ab4601c4a95c0902ac04e779e5f54d" target="_top" xlink:title="Adds an undirected edge from node u to node v in the tree.">
|
||||
<polygon fill="white" stroke="black" points="259,-365.5 259,-406.5 372,-406.5 372,-365.5 259,-365.5"/>
|
||||
<text text-anchor="start" x="267" y="-394.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-383.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="315.5" y="-372.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::add_edge</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node6 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node5->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.26,-365.91C217.34,-368.13 233.19,-371.05 249.05,-373.96"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="248.43,-377.41 258.9,-375.77 249.7,-370.52 248.43,-377.41"/>
|
||||
</g>
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/push_back.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="408,-411.5 408,-430.5 525,-430.5 525,-411.5 408,-411.5"/>
|
||||
<text text-anchor="middle" x="466.5" y="-418.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node7 -->
|
||||
<g id="edge15" class="edge">
|
||||
<title>Node5->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M187.38,-352.48C195.65,-330.87 219.17,-278.38 259,-258 303.71,-235.12 332.06,-227.55 372,-258 420.02,-294.6 370.71,-341.51 408,-389 413.69,-396.25 421.5,-402.1 429.53,-406.73"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="428.1,-409.93 438.59,-411.43 431.33,-403.72 428.1,-409.93"/>
|
||||
</g>
|
||||
<!-- Node8 -->
|
||||
<g id="node8" class="node">
|
||||
<title>Node8</title>
|
||||
<g id="a_node8"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#ae9e979edd69678b85665c01e2ee97828" target="_top" xlink:title="This function must be called after the tree adjacency list and node values are populated The function...">
|
||||
<polygon fill="white" stroke="black" points="259,-169.5 259,-210.5 372,-210.5 372,-169.5 259,-169.5"/>
|
||||
<text text-anchor="start" x="267" y="-198.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-187.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="315.5" y="-176.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node8 -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>Node5->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M187.34,-352.33C195.98,-328.37 221.11,-265.3 259,-225 261.73,-222.1 264.75,-219.33 267.93,-216.72"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="270.22,-219.38 276.1,-210.57 266.01,-213.79 270.22,-219.38"/>
|
||||
</g>
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a4dfbf5d9df825eeb63b294c6849bdcab" target="_top" xlink:title="This function returns the sum of node values in the simple path from from node_1 to node_2.">
|
||||
<polygon fill="white" stroke="black" points="259,-267.5 259,-308.5 372,-308.5 372,-267.5 259,-267.5"/>
|
||||
<text text-anchor="start" x="267" y="-296.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-285.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="315.5" y="-274.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node16 -->
|
||||
<g id="edge16" class="edge">
|
||||
<title>Node5->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M200.79,-352.48C218.07,-342.68 245.72,-327 269.43,-313.55"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="271.33,-316.5 278.3,-308.53 267.87,-310.42 271.33,-316.5"/>
|
||||
</g>
|
||||
<!-- Node21 -->
|
||||
<g id="node21" class="node">
|
||||
<title>Node21</title>
|
||||
<g id="a_node21"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a04cd96efaba147b19d3afc769b90ff70" target="_top" xlink:title="Set the values for all the nodes.">
|
||||
<polygon fill="white" stroke="black" points="259,-463.5 259,-504.5 372,-504.5 372,-463.5 259,-463.5"/>
|
||||
<text text-anchor="start" x="267" y="-492.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-481.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="315.5" y="-470.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::set_node_val</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node21 -->
|
||||
<g id="edge22" class="edge">
|
||||
<title>Node5->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M194.24,-371.57C213.55,-389.62 255.98,-429.29 284.91,-456.34"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="282.62,-458.99 292.32,-463.26 287.4,-453.88 282.62,-458.99"/>
|
||||
</g>
|
||||
<!-- Node22 -->
|
||||
<g id="node22" class="node">
|
||||
<title>Node22</title>
|
||||
<g id="a_node22"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/size.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="423.5,-498.5 423.5,-517.5 509.5,-517.5 509.5,-498.5 423.5,-498.5"/>
|
||||
<text text-anchor="middle" x="466.5" y="-505.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node22 -->
|
||||
<g id="edge24" class="edge">
|
||||
<title>Node5->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.01,-354.1C242.15,-341.59 320.34,-321.93 372,-356 405.91,-378.36 386.65,-405.45 408,-440 419.57,-458.73 436.07,-477.67 448.43,-490.79"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="446.05,-493.37 455.5,-498.15 451.1,-488.51 446.05,-493.37"/>
|
||||
</g>
|
||||
<!-- Node23 -->
|
||||
<g id="node23" class="node">
|
||||
<title>Node23</title>
|
||||
<g id="a_node23"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a9f1cb54ed09fde931bf3220d75ee4c57" target="_top" xlink:title="This function updates the value at node with val.">
|
||||
<polygon fill="white" stroke="black" points="259,-561.5 259,-602.5 372,-602.5 372,-561.5 259,-561.5"/>
|
||||
<text text-anchor="start" x="267" y="-590.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-579.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="315.5" y="-568.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node23 -->
|
||||
<g id="edge25" class="edge">
|
||||
<title>Node5->Node23</title>
|
||||
<path fill="none" stroke="midnightblue" d="M192.36,-371.8C200.92,-382.23 214.2,-399.46 223,-416 244.79,-456.97 236.01,-473.69 259,-514 266.97,-527.98 277.82,-542 287.8,-553.65"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="285.3,-556.1 294.53,-561.3 290.56,-551.48 285.3,-556.1"/>
|
||||
</g>
|
||||
<!-- Node6->Node7 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>Node6->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M372.41,-399.13C386.22,-402.38 400.96,-405.84 414.53,-409.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="414.11,-412.52 424.64,-411.4 415.71,-405.71 414.11,-412.52"/>
|
||||
</g>
|
||||
<!-- Node9 -->
|
||||
<g id="node9" class="node">
|
||||
<title>Node9</title>
|
||||
<g id="a_node9"><a xlink:href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74" target="_top" xlink:title="Function that specifies the type of operation involved when segments are combined.">
|
||||
<polygon fill="white" stroke="black" points="561,-199.5 561,-240.5 674,-240.5 674,-199.5 561,-199.5"/>
|
||||
<text text-anchor="start" x="569" y="-228.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="569" y="-217.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="617.5" y="-206.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::combine</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node9 -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>Node8->Node9</title>
|
||||
<path fill="none" stroke="midnightblue" d="M372.3,-194.65C414.31,-198.25 473.31,-203.54 525,-209 533.35,-209.88 542.12,-210.86 550.79,-211.87"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="550.54,-215.36 560.88,-213.05 551.36,-208.41 550.54,-215.36"/>
|
||||
</g>
|
||||
<!-- Node10 -->
|
||||
<g id="node10" class="node">
|
||||
<title>Node10</title>
|
||||
<g id="a_node10"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#af64848d6630c39d0f09ce2359cc7c4f8" target="_top" xlink:title="Utility function to assign heavy child to each node (-1 for a leaf node)">
|
||||
<polygon fill="white" stroke="black" points="410,-0.5 410,-41.5 523,-41.5 523,-0.5 410,-0.5"/>
|
||||
<text text-anchor="start" x="418" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="418" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="466.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_hc</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node10 -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>Node8->Node10</title>
|
||||
<path fill="none" stroke="midnightblue" d="M325.94,-169.25C340.18,-139.81 369.63,-85.67 408,-51 409.29,-49.83 410.64,-48.7 412.03,-47.59"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="414.27,-50.29 420.37,-41.62 410.2,-44.6 414.27,-50.29"/>
|
||||
</g>
|
||||
<!-- Node11 -->
|
||||
<g id="node11" class="node">
|
||||
<title>Node11</title>
|
||||
<g id="a_node11"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a0579062b384e54b611b80c6337c7f2c8" target="_top" xlink:title="Utility function to lable the nodes so that heavy chains have a contigous lable.">
|
||||
<polygon fill="white" stroke="black" points="410,-218.5 410,-259.5 523,-259.5 523,-218.5 410,-218.5"/>
|
||||
<text text-anchor="start" x="418" y="-247.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="418" y="-236.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="466.5" y="-225.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_labels</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node11 -->
|
||||
<g id="edge10" class="edge">
|
||||
<title>Node8->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M372.41,-208.39C381.48,-211.37 390.94,-214.48 400.21,-217.53"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="399.18,-220.88 409.78,-220.67 401.37,-214.23 399.18,-220.88"/>
|
||||
</g>
|
||||
<!-- Node12 -->
|
||||
<g id="node12" class="node">
|
||||
<title>Node12</title>
|
||||
<g id="a_node12"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a2dfbda148aad0bfaba2ebfda9ebc915a" target="_top" xlink:title="Utility function to assign highest parent that can be reached though heavy chains.">
|
||||
<polygon fill="white" stroke="black" points="410,-120.5 410,-161.5 523,-161.5 523,-120.5 410,-120.5"/>
|
||||
<text text-anchor="start" x="418" y="-149.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="418" y="-138.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="466.5" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_par</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node12 -->
|
||||
<g id="edge11" class="edge">
|
||||
<title>Node8->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M372.41,-171.61C381.48,-168.63 390.94,-165.52 400.21,-162.47"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="401.37,-165.77 409.78,-159.33 399.18,-159.12 401.37,-165.77"/>
|
||||
</g>
|
||||
<!-- Node13 -->
|
||||
<g id="node13" class="node">
|
||||
<title>Node13</title>
|
||||
<g id="a_node13"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ad22d760a5a33545a70e7ea5e1786c8dc" target="_top" xlink:title="This function must be called after the tree adjacency list and node values are populated The function...">
|
||||
<polygon fill="white" stroke="black" points="410,-60.5 410,-101.5 523,-101.5 523,-60.5 410,-60.5"/>
|
||||
<text text-anchor="start" x="418" y="-89.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="418" y="-78.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="466.5" y="-67.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node13 -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>Node8->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M337.53,-169.34C355.38,-152.45 382.13,-128.57 408,-111 410.12,-109.56 412.32,-108.14 414.56,-106.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="416.56,-109.63 423.38,-101.52 412.99,-103.61 416.56,-109.63"/>
|
||||
</g>
|
||||
<!-- Node14 -->
|
||||
<g id="node14" class="node">
|
||||
<title>Node14</title>
|
||||
<g id="a_node14"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae8de7aefcb6635d3dacdd174cd4890c4" target="_top" xlink:title="Utility function to populate the t_par vector.">
|
||||
<polygon fill="white" stroke="black" points="561,-30.5 561,-71.5 674,-71.5 674,-30.5 561,-30.5"/>
|
||||
<text text-anchor="start" x="569" y="-59.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="569" y="-48.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="617.5" y="-37.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node13->Node14 -->
|
||||
<g id="edge13" class="edge">
|
||||
<title>Node13->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M523.41,-69.74C532.38,-67.94 541.74,-66.05 550.92,-64.2"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="551.66,-67.62 560.78,-62.22 550.28,-60.76 551.66,-67.62"/>
|
||||
</g>
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa339c31ec74cd86a4842a8b09653d460" target="_top" xlink:title="Utility function to compute sub-tree sizes.">
|
||||
<polygon fill="white" stroke="black" points="561,-90.5 561,-131.5 674,-131.5 674,-90.5 561,-90.5"/>
|
||||
<text text-anchor="start" x="569" y="-119.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="569" y="-108.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="617.5" y="-97.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node13->Node15 -->
|
||||
<g id="edge14" class="edge">
|
||||
<title>Node13->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M523.41,-92.26C532.38,-94.06 541.74,-95.95 550.92,-97.8"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="550.28,-101.24 560.78,-99.78 551.66,-94.38 550.28,-101.24"/>
|
||||
</g>
|
||||
<!-- Node17 -->
|
||||
<g id="node17" class="node">
|
||||
<title>Node17</title>
|
||||
<g id="a_node17"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a7d5b40c076347a6aabfb37a0590f2f24" target="_top" xlink:title="Utility function to break down a path query into two chain queries.">
|
||||
<polygon fill="white" stroke="black" points="410,-278.5 410,-319.5 523,-319.5 523,-278.5 410,-278.5"/>
|
||||
<text text-anchor="start" x="418" y="-307.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="418" y="-296.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="466.5" y="-285.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::chain_query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node16->Node17 -->
|
||||
<g id="edge17" class="edge">
|
||||
<title>Node16->Node17</title>
|
||||
<path fill="none" stroke="midnightblue" d="M372.41,-292.13C381.29,-292.78 390.54,-293.47 399.62,-294.14"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="399.55,-297.64 409.78,-294.89 400.06,-290.66 399.55,-297.64"/>
|
||||
</g>
|
||||
<!-- Node19 -->
|
||||
<g id="node19" class="node">
|
||||
<title>Node19</title>
|
||||
<g id="a_node19"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae2b407e64aaf9878fbee7ee6efe9c7d4" target="_top" xlink:title="The function returns the least common ancestor of two nodes.">
|
||||
<polygon fill="white" stroke="black" points="410,-338.5 410,-379.5 523,-379.5 523,-338.5 410,-338.5"/>
|
||||
<text text-anchor="start" x="418" y="-367.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="418" y="-356.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="466.5" y="-345.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node16->Node19 -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>Node16->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M359.6,-308.54C376.2,-316.45 395.36,-325.58 412.77,-333.88"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="411.71,-337.25 422.24,-338.39 414.72,-330.93 411.71,-337.25"/>
|
||||
</g>
|
||||
<!-- Node17->Node9 -->
|
||||
<g id="edge18" class="edge">
|
||||
<title>Node17->Node9</title>
|
||||
<path fill="none" stroke="midnightblue" d="M507.12,-278.4C513.12,-275.26 519.23,-272.05 525,-269 539.38,-261.4 554.98,-253.07 569.17,-245.47"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="571.1,-248.41 578.26,-240.59 567.8,-242.24 571.1,-248.41"/>
|
||||
</g>
|
||||
<!-- Node18 -->
|
||||
<g id="node18" class="node">
|
||||
<title>Node18</title>
|
||||
<g id="a_node18"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/algorithm/swap.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="588,-289.5 588,-308.5 647,-308.5 647,-289.5 588,-289.5"/>
|
||||
<text text-anchor="middle" x="617.5" y="-296.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::swap</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node17->Node18 -->
|
||||
<g id="edge19" class="edge">
|
||||
<title>Node17->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M523.41,-299C541.42,-299 560.99,-299 577.52,-299"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="577.89,-302.5 587.89,-299 577.89,-295.5 577.89,-302.5"/>
|
||||
</g>
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ac7761255f2ba06b398b9aae5e4dce5f3" target="_top" xlink:title="The function lifts a node, k units up the tree. The lifting is done in place, and the result is store...">
|
||||
<polygon fill="white" stroke="black" points="561,-338.5 561,-379.5 674,-379.5 674,-338.5 561,-338.5"/>
|
||||
<text text-anchor="start" x="569" y="-367.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="569" y="-356.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="617.5" y="-345.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lift</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node19->Node20 -->
|
||||
<g id="edge21" class="edge">
|
||||
<title>Node19->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M523.41,-359C532.29,-359 541.54,-359 550.62,-359"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="550.78,-362.5 560.78,-359 550.78,-355.5 550.78,-362.5"/>
|
||||
</g>
|
||||
<!-- Node21->Node22 -->
|
||||
<g id="edge23" class="edge">
|
||||
<title>Node21->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M372.41,-493C385.83,-495.17 400.11,-497.47 413.36,-499.6"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="412.82,-503.06 423.25,-501.2 413.94,-496.15 412.82,-503.06"/>
|
||||
</g>
|
||||
<!-- Node24 -->
|
||||
<g id="node24" class="node">
|
||||
<title>Node24</title>
|
||||
<g id="a_node24"><a xlink:href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a3c75bf5770790f8eba8cc92227b5400c" target="_top" xlink:title="Update the value at a node.">
|
||||
<polygon fill="white" stroke="black" points="410,-561.5 410,-602.5 523,-602.5 523,-561.5 410,-561.5"/>
|
||||
<text text-anchor="start" x="418" y="-590.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="418" y="-579.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="466.5" y="-568.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node23->Node24 -->
|
||||
<g id="edge26" class="edge">
|
||||
<title>Node23->Node24</title>
|
||||
<path fill="none" stroke="midnightblue" d="M372.41,-582C381.29,-582 390.54,-582 399.62,-582"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="399.78,-585.5 409.78,-582 399.78,-578.5 399.78,-585.5"/>
|
||||
</g>
|
||||
<!-- Node25->Node6 -->
|
||||
<g id="edge28" class="edge">
|
||||
<title>Node25->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.03,-463.64C210.96,-460.76 217.34,-457.44 223,-454 243.2,-441.72 264.47,-426.09 281.42,-412.92"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="283.66,-415.6 289.36,-406.67 279.34,-410.1 283.66,-415.6"/>
|
||||
</g>
|
||||
<!-- Node25->Node7 -->
|
||||
<g id="edge30" class="edge">
|
||||
<title>Node25->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.17,-479.53C211.66,-482.44 218.32,-486.49 223,-492 259.06,-534.43 214.33,-578.76 259,-612 299.29,-641.98 331.81,-642.11 372,-612 417.58,-577.85 381.03,-539.17 408,-489 418.43,-469.6 435.05,-450.74 447.75,-437.82"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="450.41,-440.11 455.06,-430.59 445.49,-435.14 450.41,-440.11"/>
|
||||
</g>
|
||||
<!-- Node25->Node8 -->
|
||||
<g id="edge29" class="edge">
|
||||
<title>Node25->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.13,-466.94C211.77,-464.04 218.54,-459.88 223,-454 276.57,-383.47 221.83,-338.39 259,-258 265.65,-243.62 276.06,-229.7 286.07,-218.24"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="288.76,-220.48 292.89,-210.72 283.58,-215.78 288.76,-220.48"/>
|
||||
</g>
|
||||
<!-- Node25->Node16 -->
|
||||
<g id="edge31" class="edge">
|
||||
<title>Node25->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.38,-466.11C211.73,-463.21 218.25,-459.25 223,-454 254.11,-419.57 236.01,-396.31 259,-356 266.97,-342.02 277.82,-328 287.8,-316.35"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="290.56,-318.52 294.53,-308.7 285.3,-313.9 290.56,-318.52"/>
|
||||
</g>
|
||||
<!-- Node25->Node21 -->
|
||||
<g id="edge32" class="edge">
|
||||
<title>Node25->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.26,-474.79C217.23,-475.8 232.89,-477.12 248.6,-478.45"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="248.64,-481.96 258.9,-479.31 249.23,-474.99 248.64,-481.96"/>
|
||||
</g>
|
||||
<!-- Node25->Node22 -->
|
||||
<g id="edge33" class="edge">
|
||||
<title>Node25->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.37,-479.37C211.87,-482.27 218.49,-486.35 223,-492 266.61,-546.57 204.24,-601.63 259,-645 298.37,-676.18 330.57,-673.39 372,-645 408.56,-619.95 381.41,-587.46 408,-552 416.57,-540.57 428.86,-530.62 439.88,-523.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="441.87,-525.97 448.35,-517.58 438.06,-520.1 441.87,-525.97"/>
|
||||
</g>
|
||||
<!-- Node25->Node23 -->
|
||||
<g id="edge34" class="edge">
|
||||
<title>Node25->Node23</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.11,-480.76C211.3,-483.68 217.8,-487.42 223,-492 244.92,-511.31 238.17,-526.52 259,-547 262.02,-549.96 265.32,-552.81 268.78,-555.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="266.88,-558.44 277.02,-561.49 270.99,-552.78 266.88,-558.44"/>
|
||||
</g>
|
||||
<!-- Node26->Node6 -->
|
||||
<g id="edge36" class="edge">
|
||||
<title>Node26->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.26,-427.02C217.63,-422.37 233.96,-416.24 250.21,-410.14"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="251.61,-413.35 259.74,-406.56 249.15,-406.8 251.61,-413.35"/>
|
||||
</g>
|
||||
<!-- Node26->Node7 -->
|
||||
<g id="edge38" class="edge">
|
||||
<title>Node26->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.16,-433.95C245.49,-431.94 334.94,-427.49 397.68,-424.37"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="398.09,-427.86 407.9,-423.86 397.74,-420.87 398.09,-427.86"/>
|
||||
</g>
|
||||
<!-- Node26->Node8 -->
|
||||
<g id="edge37" class="edge">
|
||||
<title>Node26->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M192.58,-425.31C201.33,-414.98 214.77,-397.83 223,-381 248.04,-329.84 232.46,-308.4 259,-258 266.44,-243.87 277.09,-229.91 287.08,-218.35"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="289.8,-220.56 293.84,-210.76 284.57,-215.9 289.8,-220.56"/>
|
||||
</g>
|
||||
<!-- Node26->Node16 -->
|
||||
<g id="edge39" class="edge">
|
||||
<title>Node26->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M192.56,-425.35C211.93,-403.53 259.74,-349.69 289.41,-316.26"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="292.15,-318.44 296.17,-308.64 286.92,-313.8 292.15,-318.44"/>
|
||||
</g>
|
||||
<!-- Node26->Node21 -->
|
||||
<g id="edge40" class="edge">
|
||||
<title>Node26->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.26,-442.98C217.63,-447.63 233.96,-453.76 250.21,-459.86"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="249.15,-463.2 259.74,-463.44 251.61,-456.65 249.15,-463.2"/>
|
||||
</g>
|
||||
<!-- Node26->Node22 -->
|
||||
<g id="edge41" class="edge">
|
||||
<title>Node26->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.22,-442.64C211.42,-445.55 217.89,-449.32 223,-454 245.93,-475.01 231.94,-498.68 259,-514 311.26,-543.59 383.51,-531.9 427.24,-520.28"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="428.22,-523.64 436.91,-517.58 426.34,-516.89 428.22,-523.64"/>
|
||||
</g>
|
||||
<!-- Node26->Node23 -->
|
||||
<g id="edge42" class="edge">
|
||||
<title>Node26->Node23</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.33,-441.93C211.68,-444.84 218.21,-448.79 223,-454 253,-486.63 230.83,-512.78 259,-547 261.35,-549.85 263.99,-552.54 266.81,-555.06"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="264.65,-557.82 274.64,-561.35 269.04,-552.36 264.65,-557.82"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 32 KiB |
@@ -371,6 +371,7 @@ Others</h1>
|
||||
<li><a href="https://github.com/TheAlgorithms/C-Plus-Plus/blob/master/others/fast_integer_input.cpp">Fast Integer Input</a></li>
|
||||
<li><a href="https://github.com/TheAlgorithms/C-Plus-Plus/blob/master/others/happy_number.cpp">Happy Number</a></li>
|
||||
<li><a href="https://github.com/TheAlgorithms/C-Plus-Plus/blob/master/others/iterative_tree_traversals.cpp">Iterative Tree Traversals</a></li>
|
||||
<li><a href="https://github.com/TheAlgorithms/C-Plus-Plus/blob/master/others/lru_cache.cpp">Lru Cache</a></li>
|
||||
<li><a href="https://github.com/TheAlgorithms/C-Plus-Plus/blob/master/others/matrix_exponentiation.cpp">Matrix Exponentiation</a></li>
|
||||
<li><a href="https://github.com/TheAlgorithms/C-Plus-Plus/blob/master/others/palindrome_of_number.cpp">Palindrome Of Number</a></li>
|
||||
<li><a href="https://github.com/TheAlgorithms/C-Plus-Plus/blob/master/others/paranthesis_matching.cpp">Paranthesis Matching</a></li>
|
||||
|
||||
@@ -136,7 +136,7 @@ Functions</h2></td></tr>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>Implementation of <a href="https://en.wikipedia.org/wiki/Bogosort">Bogosort algorithm</a> </p>
|
||||
<p>In computer science, bogosort (also known as permutation sort, stupid sort, slowsort, shotgun sort, random sort, monkey sort, bobosort or shuffle sort) is a highly inefficient sorting algorithm based on the generate and test paradigm. Two versions of this algorithm exist: a deterministic version that enumerates all permutations until it hits a sorted one, and a randomized version that randomly permutes its input.Randomized version is implemented here.</p>
|
||||
<h3><a class="anchor" id="autotoc_md91"></a>
|
||||
<h3><a class="anchor" id="autotoc_md94"></a>
|
||||
Algorithm</h3>
|
||||
<p>Shuffle the array untill array is sorted.</p>
|
||||
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/imdeep2905">Deep Raval</a> </dd></dl>
|
||||
|
||||
Reference in New Issue
Block a user