Documentation for c26eea874d

This commit is contained in:
realstealthninja
2025-05-19 11:38:33 +00:00
parent c7a9a42397
commit 14583a2f33
2829 changed files with 30266 additions and 21669 deletions

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: MinHeap Class Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -187,7 +187,7 @@ Private Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel explicit">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -228,7 +228,7 @@ Private Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -353,7 +353,7 @@ Private Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -420,7 +420,7 @@ Private Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -486,7 +486,7 @@ Private Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -514,7 +514,7 @@ Private Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -541,7 +541,7 @@ Private Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -567,7 +567,7 @@ Private Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -593,7 +593,7 @@ Private Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -613,7 +613,7 @@ Private Attributes</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d2/d05/class_min_heap.html">MinHeap</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: math/fast_power.cpp File Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -145,10 +145,10 @@ Include dependency graph for fast_power.cpp:</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a8399b847626e5bba983cab7c7918b445" id="r_a8399b847626e5bba983cab7c7918b445"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a8399b847626e5bba983cab7c7918b445" id="r_a8399b847626e5bba983cab7c7918b445"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>
<tr class="memitem:a8399b847626e5bba983cab7c7918b445"><td class="memTemplItemLeft" align="right" valign="top">double&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a8399b847626e5bba983cab7c7918b445">fast_power_recursive</a> (T a, T b)</td></tr>
<tr class="separator:a8399b847626e5bba983cab7c7918b445"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d4e3f0099a6975b74a314a35bd0f94d" id="r_a0d4e3f0099a6975b74a314a35bd0f94d"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a0d4e3f0099a6975b74a314a35bd0f94d" id="r_a0d4e3f0099a6975b74a314a35bd0f94d"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>
<tr class="memitem:a0d4e3f0099a6975b74a314a35bd0f94d"><td class="memTemplItemLeft" align="right" valign="top">double&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a0d4e3f0099a6975b74a314a35bd0f94d">fast_power_linear</a> (T a, T b)</td></tr>
<tr class="separator:a0d4e3f0099a6975b74a314a35bd0f94d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4" id="r_ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
@@ -171,7 +171,7 @@ Functions</h2></td></tr>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="memname">
<tr>
<td class="memname">double fast_power_linear </td>
@@ -213,7 +213,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="memname">
<tr>
<td class="memname">double fast_power_recursive </td>
@@ -304,7 +304,7 @@ template&lt;typename T &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_296d53ceaeaa7e099814a6def439fe8a.html">math</a></li><li class="navelem"><a class="el" href="../../d2/d0b/fast__power_8cpp.html">fast_power.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: math/fast_power.cpp Source File</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -124,14 +124,15 @@ $(function(){initNavTree('d2/d0b/fast__power_8cpp_source.html','../../'); initRe
<div class="headertitle"><div class="title">fast_power.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="../../d2/d0b/fast__power_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<a href="../../d2/d0b/fast__power_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#include &lt;cassert&gt;</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#include &lt;cmath&gt;</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include &lt;cstdint&gt;</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="preprocessor">#include &lt;ctime&gt;</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="preprocessor">#include &lt;iostream&gt;</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
<div class="foldopen" id="foldopen00026" data-start="{" data-end="}">
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"><a class="line" href="../../d2/d0b/fast__power_8cpp.html#a8399b847626e5bba983cab7c7918b445"> 26</a></span><span class="keywordtype">double</span> <a class="code hl_function" href="../../d2/d0b/fast__power_8cpp.html#a8399b847626e5bba983cab7c7918b445">fast_power_recursive</a>(T a, T b) {</div>
@@ -153,7 +154,7 @@ $(function(){initNavTree('d2/d0b/fast__power_8cpp_source.html','../../'); initRe
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keywordflow">return</span> result;</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span>}</div>
</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span><span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
<div class="foldopen" id="foldopen00050" data-start="{" data-end="}">
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"><a class="line" href="../../d2/d0b/fast__power_8cpp.html#a0d4e3f0099a6975b74a314a35bd0f94d"> 50</a></span><span class="keywordtype">double</span> <a class="code hl_function" href="../../d2/d0b/fast__power_8cpp.html#a0d4e3f0099a6975b74a314a35bd0f94d">fast_power_linear</a>(T a, T b) {</div>
@@ -171,7 +172,7 @@ $(function(){initNavTree('d2/d0b/fast__power_8cpp_source.html','../../'); initRe
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">return</span> result;</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span>}</div>
</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span></div>
<div class="foldopen" id="foldopen00068" data-start="{" data-end="}">
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"><a class="line" href="../../d2/d0b/fast__power_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4"> 68</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="../../d2/d0b/fast__power_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a>() {</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> std::srand(std::time(<span class="keyword">nullptr</span>));</div>
@@ -209,7 +210,7 @@ $(function(){initNavTree('d2/d0b/fast__power_8cpp_source.html','../../'); initRe
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_296d53ceaeaa7e099814a6def439fe8a.html">math</a></li><li class="navelem"><a class="el" href="../../d2/d0b/fast__power_8cpp.html">fast_power.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -0,0 +1,470 @@
<!-- HTML header for doxygen 1.12.0-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: stats_computer1&lt; T &gt; Class Template Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@xpack-3rd-party/doxygen-awesome-css@2.2.0-1/doxygen-awesome-darkmode-toggle.js"></script>
<script type="text/javascript">
DoxygenAwesomeDarkModeToggle.init()
</script>
<script type="text/javascript" src="../../clipboard.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../navtreedata.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../cookie.js"></script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/javascript">
window.MathJax = {
options: {
ignoreHtmlClass: 'tex2jax_ignore',
processHtmlClass: 'tex2jax_process'
},
loader: {
load: ['[tex]/ams']
},
tex: {
macros: {},
packages: ['base','configmacros','ams']
}
};
</script>
<script type="text/javascript" id="MathJax-script" async="async" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml.js"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
<link href="../../doxygen-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectlogo"><img alt="Logo" src="../../project_logo.png"/></td>
<td id="projectalign">
<div id="projectname">TheAlgorithms/C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">All the algorithms implemented in C++</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(1); });
/* @license-end */
</script>
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('../../',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){initNavTree('d2/d0f/classstats__computer1.html','../../'); initResizable(true); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="../../d4/d8f/classstats__computer1-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">stats_computer1&lt; T &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Collaboration diagram for stats_computer1&lt; T &gt;:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d1/d6c/classstats__computer1__coll__graph.svg" width="162" height="126"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
<center><span class="legend">[<a target="top" href="../../graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:aa13bf7c38de112f71921a5525d71a2f2" id="r_aa13bf7c38de112f71921a5525d71a2f2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa13bf7c38de112f71921a5525d71a2f2">new_val</a> (T x)</td></tr>
<tr class="separator:aa13bf7c38de112f71921a5525d71a2f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a390697dcee210b91823ceff04b25081b" id="r_a390697dcee210b91823ceff04b25081b"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a390697dcee210b91823ceff04b25081b">mean</a> () const</td></tr>
<tr class="separator:a390697dcee210b91823ceff04b25081b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a27f0a03e2fd2254f1c81fe668226bd92" id="r_a27f0a03e2fd2254f1c81fe668226bd92"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a27f0a03e2fd2254f1c81fe668226bd92">variance</a> () const</td></tr>
<tr class="separator:a27f0a03e2fd2254f1c81fe668226bd92"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af57e942d49f4fd70f059f224b4ac07e1" id="r_af57e942d49f4fd70f059f224b4ac07e1"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af57e942d49f4fd70f059f224b4ac07e1">std</a> () const</td></tr>
<tr class="separator:af57e942d49f4fd70f059f224b4ac07e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-attribs" name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:ab2e69e75fe0da096bf61fa13420b43eb" id="r_ab2e69e75fe0da096bf61fa13420b43eb"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab2e69e75fe0da096bf61fa13420b43eb">n</a> = 0</td></tr>
<tr class="separator:ab2e69e75fe0da096bf61fa13420b43eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a097b80909181880f13b54a264ed337" id="r_a2a097b80909181880f13b54a264ed337"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2a097b80909181880f13b54a264ed337">Ex</a></td></tr>
<tr class="separator:a2a097b80909181880f13b54a264ed337"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ab2b14d5650b14e46b70b412573f60a" id="r_a8ab2b14d5650b14e46b70b412573f60a"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8ab2b14d5650b14e46b70b412573f60a">Ex2</a></td></tr>
<tr class="separator:a8ab2b14d5650b14e46b70b412573f60a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48c03a44c784eb6913ad186d34c302db" id="r_a48c03a44c784eb6913ad186d34c302db"><td class="memItemLeft" align="right" valign="top">T&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a48c03a44c784eb6913ad186d34c302db">K</a></td></tr>
<tr class="separator:a48c03a44c784eb6913ad186d34c302db"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="friends" name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a350bf6c429691d3578c4dfc6679a0797" id="r_a350bf6c429691d3578c4dfc6679a0797"><td class="memItemLeft" align="right" valign="top">std::istream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a350bf6c429691d3578c4dfc6679a0797">operator&gt;&gt;</a> (std::istream &amp;input, <a class="el" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">stats_computer1</a> &amp;stat)</td></tr>
<tr class="separator:a350bf6c429691d3578c4dfc6679a0797"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><div class="compoundTemplParams">template&lt;typename T&gt;<br />
class stats_computer1&lt; T &gt;</div><p>continuous mean and variance computance using first value as an approximation for the mean. If the first number is much far form the mean, the algorithm becomes very inaccurate to compute variance and standard deviation. </p>
<p class="definition">Definition at line <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html#l00027">27</a> of file <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html">realtime_stats.cpp</a>.</p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a390697dcee210b91823ceff04b25081b" name="a390697dcee210b91823ceff04b25081b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a390697dcee210b91823ceff04b25081b">&#9670;&#160;</a></span>mean()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double <a class="el" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">statistics::stats_computer1</a>&lt; T &gt;::mean </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>return sample mean computed till last sample </p>
<p class="definition">Definition at line <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html#l00042">42</a> of file <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html">realtime_stats.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 42</span>{ <span class="keywordflow">return</span> K + Ex / n; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="aa13bf7c38de112f71921a5525d71a2f2" name="aa13bf7c38de112f71921a5525d71a2f2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa13bf7c38de112f71921a5525d71a2f2">&#9670;&#160;</a></span>new_val()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">statistics::stats_computer1</a>&lt; T &gt;::new_val </td>
<td>(</td>
<td class="paramtype">T</td> <td class="paramname"><span class="paramname"><em>x</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>new data sample </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html#l00032">32</a> of file <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html">realtime_stats.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 32</span> {</div>
<div class="line"><span class="lineno"> 33</span> <span class="keywordflow">if</span> (n == 0)</div>
<div class="line"><span class="lineno"> 34</span> K = <a class="code hl_class" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">x</a>;</div>
<div class="line"><span class="lineno"> 35</span> n++;</div>
<div class="line"><span class="lineno"> 36</span> <a class="code hl_class" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">T</a> <a class="code hl_class" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">tmp</a> = <a class="code hl_class" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">x</a> - K;</div>
<div class="line"><span class="lineno"> 37</span> Ex += <a class="code hl_class" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">tmp</a>;</div>
<div class="line"><span class="lineno"> 38</span> Ex2 += <span class="keyword">static_cast&lt;</span><span class="keywordtype">double</span><span class="keyword">&gt;</span>(<a class="code hl_class" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">tmp</a>) * <a class="code hl_class" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">tmp</a>;</div>
<div class="line"><span class="lineno"> 39</span> }</div>
<div class="ttc" id="aclassstatistics_1_1stats__computer1_html"><div class="ttname"><a href="../../d7/d7c/classstatistics_1_1stats__computer1.html">statistics::stats_computer1</a></div><div class="ttdef"><b>Definition</b> <a href="../../d0/d08/realtime__stats_8cpp_source.html#l00027">realtime_stats.cpp:27</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="af57e942d49f4fd70f059f224b4ac07e1" name="af57e942d49f4fd70f059f224b4ac07e1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af57e942d49f4fd70f059f224b4ac07e1">&#9670;&#160;</a></span>std()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double <a class="el" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">statistics::stats_computer1</a>&lt; T &gt;::std </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>return sample standard deviation computed till last sample </p>
<p class="definition">Definition at line <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html#l00048">48</a> of file <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html">realtime_stats.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 48</span>{ <span class="keywordflow">return</span> <a class="code hl_class" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">std::sqrt</a>(this-&gt;<a class="code hl_function" href="../../d7/d7c/classstatistics_1_1stats__computer1.html#a27f0a03e2fd2254f1c81fe668226bd92">variance</a>()); }</div>
<div class="ttc" id="aclassstatistics_1_1stats__computer1_html_a27f0a03e2fd2254f1c81fe668226bd92"><div class="ttname"><a href="../../d7/d7c/classstatistics_1_1stats__computer1.html#a27f0a03e2fd2254f1c81fe668226bd92">statistics::stats_computer1::variance</a></div><div class="ttdeci">double variance() const</div><div class="ttdef"><b>Definition</b> <a href="../../d0/d08/realtime__stats_8cpp_source.html#l00045">realtime_stats.cpp:45</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a27f0a03e2fd2254f1c81fe668226bd92" name="a27f0a03e2fd2254f1c81fe668226bd92"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a27f0a03e2fd2254f1c81fe668226bd92">&#9670;&#160;</a></span>variance()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double <a class="el" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">statistics::stats_computer1</a>&lt; T &gt;::variance </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>return data variance computed till last sample </p>
<p class="definition">Definition at line <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html#l00045">45</a> of file <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html">realtime_stats.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 45</span>{ <span class="keywordflow">return</span> (Ex2 - (Ex * Ex) / n) / (n - 1); }</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Friends And Related Symbol Documentation</h2>
<a id="a350bf6c429691d3578c4dfc6679a0797" name="a350bf6c429691d3578c4dfc6679a0797"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a350bf6c429691d3578c4dfc6679a0797">&#9670;&#160;</a></span>operator&gt;&gt;</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::istream &amp; operator&gt;&gt; </td>
<td>(</td>
<td class="paramtype">std::istream &amp;</td> <td class="paramname"><span class="paramname"><em>input</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">stats_computer1</a>&lt; T &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>stat</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel friend">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>short-hand operator to read new sample from input stream <br />
e.g.: <code>std::cin &gt;&gt; stats1;</code> </p>
<p class="definition">Definition at line <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html#l00053">53</a> of file <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html">realtime_stats.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 54</span> {</div>
<div class="line"><span class="lineno"> 55</span> <a class="code hl_class" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">T</a> <a class="code hl_class" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">val</a>;</div>
<div class="line"><span class="lineno"> 56</span> <a class="code hl_class" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">input</a> &gt;&gt; <a class="code hl_class" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">val</a>;</div>
<div class="line"><span class="lineno"> 57</span> <a class="code hl_class" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">stat</a>.<a class="code hl_function" href="../../d7/d7c/classstatistics_1_1stats__computer1.html#aa13bf7c38de112f71921a5525d71a2f2">new_val</a>(<a class="code hl_class" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">val</a>);</div>
<div class="line"><span class="lineno"> 58</span> <span class="keywordflow">return</span> <a class="code hl_class" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">input</a>;</div>
<div class="line"><span class="lineno"> 59</span> }</div>
<div class="ttc" id="aclassstatistics_1_1stats__computer1_html_aa13bf7c38de112f71921a5525d71a2f2"><div class="ttname"><a href="../../d7/d7c/classstatistics_1_1stats__computer1.html#aa13bf7c38de112f71921a5525d71a2f2">statistics::stats_computer1::new_val</a></div><div class="ttdeci">void new_val(T x)</div><div class="ttdef"><b>Definition</b> <a href="../../d0/d08/realtime__stats_8cpp_source.html#l00032">realtime_stats.cpp:32</a></div></div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a2a097b80909181880f13b54a264ed337" name="a2a097b80909181880f13b54a264ed337"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2a097b80909181880f13b54a264ed337">&#9670;&#160;</a></span>Ex</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double <a class="el" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">statistics::stats_computer1</a>&lt; T &gt;::Ex</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html#l00063">63</a> of file <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html">realtime_stats.cpp</a>.</p>
</div>
</div>
<a id="a8ab2b14d5650b14e46b70b412573f60a" name="a8ab2b14d5650b14e46b70b412573f60a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8ab2b14d5650b14e46b70b412573f60a">&#9670;&#160;</a></span>Ex2</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double <a class="el" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">statistics::stats_computer1</a>&lt; T &gt;::Ex2</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html#l00063">63</a> of file <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html">realtime_stats.cpp</a>.</p>
</div>
</div>
<a id="a48c03a44c784eb6913ad186d34c302db" name="a48c03a44c784eb6913ad186d34c302db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a48c03a44c784eb6913ad186d34c302db">&#9670;&#160;</a></span>K</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">T <a class="el" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">statistics::stats_computer1</a>&lt; T &gt;::K</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html#l00064">64</a> of file <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html">realtime_stats.cpp</a>.</p>
</div>
</div>
<a id="ab2e69e75fe0da096bf61fa13420b43eb" name="ab2e69e75fe0da096bf61fa13420b43eb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab2e69e75fe0da096bf61fa13420b43eb">&#9670;&#160;</a></span>n</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned int <a class="el" href="../../d7/d7c/classstatistics_1_1stats__computer1.html">statistics::stats_computer1</a>&lt; T &gt;::n = 0</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html#l00062">62</a> of file <a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html">realtime_stats.cpp</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>math/<a class="el" href="../../d0/d08/realtime__stats_8cpp_source.html">realtime_stats.cpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d2/d0f/classstats__computer1.html">stats_computer1</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,8 @@
var classstats__computer1 =
[
[ "mean", "d2/d0f/classstats__computer1.html#a390697dcee210b91823ceff04b25081b", null ],
[ "new_val", "d2/d0f/classstats__computer1.html#aa13bf7c38de112f71921a5525d71a2f2", null ],
[ "std", "d2/d0f/classstats__computer1.html#af57e942d49f4fd70f059f224b4ac07e1", null ],
[ "variance", "d2/d0f/classstats__computer1.html#a27f0a03e2fd2254f1c81fe668226bd92", null ],
[ "operator>>", "d2/d0f/classstats__computer1.html#a350bf6c429691d3578c4dfc6679a0797", null ]
];

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: ciphers/vigenere_cipher.cpp Pages: 1 -->
<svg width="186pt" height="83pt"

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: ciphers/vigenere_cipher.cpp Pages: 1 -->
<svg width="186pt" height="83pt"

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: sorting/gnome_sort.cpp File Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -150,10 +150,10 @@ Namespaces</h2></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a2f8bc626eb57acae24a94636a23af6a1" id="r_a2f8bc626eb57acae24a94636a23af6a1"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a2f8bc626eb57acae24a94636a23af6a1" id="r_a2f8bc626eb57acae24a94636a23af6a1"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>
<tr class="memitem:a2f8bc626eb57acae24a94636a23af6a1"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../d5/d91/namespacesorting.html#a2f8bc626eb57acae24a94636a23af6a1">sorting::gnomeSort</a> (T *arr, int size)</td></tr>
<tr class="separator:a2f8bc626eb57acae24a94636a23af6a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3677f87b5b4756bc77e9e34c5f27935" id="r_aa3677f87b5b4756bc77e9e34c5f27935"><td class="memTemplParams" colspan="2">template&lt;typename T , size_t size&gt; </td></tr>
<tr class="memitem:aa3677f87b5b4756bc77e9e34c5f27935" id="r_aa3677f87b5b4756bc77e9e34c5f27935"><td class="memTemplParams" colspan="2">template&lt;typename T, size_t size&gt; </td></tr>
<tr class="memitem:aa3677f87b5b4756bc77e9e34c5f27935"><td class="memTemplItemLeft" align="right" valign="top">std::array&lt; T, size &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../d5/d91/namespacesorting.html#aa3677f87b5b4756bc77e9e34c5f27935">sorting::gnomeSort</a> (std::array&lt; T, size &gt; arr)</td></tr>
<tr class="separator:aa3677f87b5b4756bc77e9e34c5f27935"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8dca7b867074164d5f45b0f3851269d" id="r_aa8dca7b867074164d5f45b0f3851269d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa8dca7b867074164d5f45b0f3851269d">test</a> ()</td></tr>
@@ -214,7 +214,7 @@ Functions</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
<span class="mlabels"><span class="mlabel static">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -272,7 +272,7 @@ Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_bb1b521853a9c46347182a9d10420771.html">sorting</a></li><li class="navelem"><a class="el" href="../../d2/d21/gnome__sort_8cpp.html">gnome_sort.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,7 +1,7 @@
var gnome__sort_8cpp =
[
[ "gnomeSort", "d2/d21/gnome__sort_8cpp.html#aa3677f87b5b4756bc77e9e34c5f27935", null ],
[ "gnomeSort", "d2/d21/gnome__sort_8cpp.html#a2f8bc626eb57acae24a94636a23af6a1", null ],
[ "sorting::gnomeSort", "d5/d91/namespacesorting.html#aa3677f87b5b4756bc77e9e34c5f27935", null ],
[ "sorting::gnomeSort", "d5/d91/namespacesorting.html#a2f8bc626eb57acae24a94636a23af6a1", null ],
[ "main", "d2/d21/gnome__sort_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4", null ],
[ "test", "d2/d21/gnome__sort_8cpp.html#aa8dca7b867074164d5f45b0f3851269d", null ]
];

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: sorting/gnome_sort.cpp Source File</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -124,12 +124,13 @@ $(function(){initNavTree('d2/d21/gnome__sort_8cpp_source.html','../../'); initRe
<div class="headertitle"><div class="title">gnome_sort.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="../../d2/d21/gnome__sort_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<a href="../../d2/d21/gnome__sort_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> </div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#include &lt;algorithm&gt;</span> <span class="comment">// for std::swap</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="preprocessor">#include &lt;array&gt;</span> <span class="comment">// for std::array</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="preprocessor">#include &lt;cassert&gt;</span> <span class="comment">// for assertions</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="preprocessor">#include &lt;iostream&gt;</span> <span class="comment">// for io operations</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="keyword">namespace </span><a class="code hl_namespace" href="../../d5/d91/namespacesorting.html">sorting</a> {</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span><span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
<div class="foldopen" id="foldopen00034" data-start="{" data-end="}">
@@ -151,7 +152,7 @@ $(function(){initNavTree('d2/d21/gnome__sort_8cpp_source.html','../../'); initRe
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> }</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span>}</div>
</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> </div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span></div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span><span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, <span class="keywordtype">size_t</span> size&gt;</div>
<div class="foldopen" id="foldopen00062" data-start="{" data-end="}">
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"><a class="line" href="../../d5/d91/namespacesorting.html#aa3677f87b5b4756bc77e9e34c5f27935"> 62</a></span>std::array&lt;T, size&gt; <a class="code hl_function" href="../../d5/d91/namespacesorting.html#a2f8bc626eb57acae24a94636a23af6a1">gnomeSort</a>(std::array&lt;T, size&gt; arr) {</div>
@@ -174,7 +175,7 @@ $(function(){initNavTree('d2/d21/gnome__sort_8cpp_source.html','../../'); initRe
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span>}</div>
</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span>} <span class="comment">// namespace sorting</span></div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> </div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span></div>
<div class="foldopen" id="foldopen00085" data-start="{" data-end="}">
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"><a class="line" href="../../d2/d21/gnome__sort_8cpp.html#aa8dca7b867074164d5f45b0f3851269d"> 85</a></span><span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code hl_function" href="../../d2/d21/gnome__sort_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>() {</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> <span class="comment">// Example 1. Creating array of int,</span></div>
@@ -218,7 +219,7 @@ $(function(){initNavTree('d2/d21/gnome__sort_8cpp_source.html','../../'); initRe
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> std::cout &lt;&lt; std::endl;</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span>}</div>
</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> </div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span></div>
<div class="foldopen" id="foldopen00130" data-start="{" data-end="}">
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"><a class="line" href="../../d2/d21/gnome__sort_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4"> 130</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="../../d2/d21/gnome__sort_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a>() {</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> <a class="code hl_function" href="../../d2/d21/gnome__sort_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>();</div>
@@ -235,7 +236,7 @@ $(function(){initNavTree('d2/d21/gnome__sort_8cpp_source.html','../../'); initRe
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_bb1b521853a9c46347182a9d10420771.html">sorting</a></li><li class="navelem"><a class="el" href="../../d2/d21/gnome__sort_8cpp.html">gnome_sort.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: search/jump_search.cpp File Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -249,7 +249,7 @@ Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_19b2bf9199a15c634a08b1ede1dd896a.html">search</a></li><li class="navelem"><a class="el" href="../../d2/d22/jump__search_8cpp.html">jump_search.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: search/jump_search.cpp Source File</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -124,11 +124,11 @@ $(function(){initNavTree('d2/d22/jump__search_8cpp_source.html','../../'); initR
<div class="headertitle"><div class="title">jump_search.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="../../d2/d22/jump__search_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<a href="../../d2/d22/jump__search_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &lt;algorithm&gt;</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &lt;cmath&gt;</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &lt;iostream&gt;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span></div>
<div class="foldopen" id="foldopen00012" data-start="{" data-end="}">
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"><a class="line" href="../../d2/d22/jump__search_8cpp.html#ab49fd8f401bfc71f63b74711390cccf0"> 12</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="../../d2/d22/jump__search_8cpp.html#ab49fd8f401bfc71f63b74711390cccf0">jumpSearch</a>(<span class="keywordtype">int</span> arr[], <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> n) {</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> <span class="comment">// Finding block size to be jumped</span></div>
@@ -183,7 +183,7 @@ $(function(){initNavTree('d2/d22/jump__search_8cpp_source.html','../../'); initR
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_19b2bf9199a15c634a08b1ede1dd896a.html">search</a></li><li class="navelem"><a class="el" href="../../d2/d22/jump__search_8cpp.html">jump_search.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: machine_learning/neural_network.cpp Pages: 1 -->
<!--zoomable 149 -->

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: machine_learning/neural_network.cpp Pages: 1 -->
<svg width="678pt" height="149pt"

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: probability/addition_rule.cpp Pages: 1 -->
<svg width="105pt" height="94pt"

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: probability/addition_rule.cpp Pages: 1 -->
<svg width="105pt" height="94pt"

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: sorting/count_inversions.cpp File Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -153,19 +153,19 @@ Namespaces</h2></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:aad643c14734394e784a75169cb58132f" id="r_aad643c14734394e784a75169cb58132f"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:aad643c14734394e784a75169cb58132f" id="r_aad643c14734394e784a75169cb58132f"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>
<tr class="memitem:aad643c14734394e784a75169cb58132f"><td class="memTemplItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#aad643c14734394e784a75169cb58132f">sorting::inversion::merge</a> (T *arr, T *temp, uint32_t left, uint32_t mid, uint32_t right)</td></tr>
<tr class="memdesc:aad643c14734394e784a75169cb58132f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function to merge two sub-arrays. <br /></td></tr>
<tr class="separator:aad643c14734394e784a75169cb58132f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae97a486e14101c4822ea8dc47f0d1661" id="r_ae97a486e14101c4822ea8dc47f0d1661"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:ae97a486e14101c4822ea8dc47f0d1661" id="r_ae97a486e14101c4822ea8dc47f0d1661"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>
<tr class="memitem:ae97a486e14101c4822ea8dc47f0d1661"><td class="memTemplItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#ae97a486e14101c4822ea8dc47f0d1661">sorting::inversion::mergeSort</a> (T *arr, T *temp, uint32_t left, uint32_t right)</td></tr>
<tr class="memdesc:ae97a486e14101c4822ea8dc47f0d1661"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implement merge Sort and count inverions while merging. <br /></td></tr>
<tr class="separator:ae97a486e14101c4822ea8dc47f0d1661"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3332498eabf6579ef059c0d0e9f4ec80" id="r_a3332498eabf6579ef059c0d0e9f4ec80"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a3332498eabf6579ef059c0d0e9f4ec80" id="r_a3332498eabf6579ef059c0d0e9f4ec80"><td class="memTemplParams" colspan="2">template&lt;class T&gt; </td></tr>
<tr class="memitem:a3332498eabf6579ef059c0d0e9f4ec80"><td class="memTemplItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a3332498eabf6579ef059c0d0e9f4ec80">sorting::inversion::countInversion</a> (T *arr, const uint32_t size)</td></tr>
<tr class="memdesc:a3332498eabf6579ef059c0d0e9f4ec80"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function <a class="el" href="#a3332498eabf6579ef059c0d0e9f4ec80" title="Function countInversion() returns the number of inversion present in the input array....">countInversion()</a> returns the number of inversion present in the input array. Inversions are an estimate of how close or far off the array is to being sorted. <br /></td></tr>
<tr class="separator:a3332498eabf6579ef059c0d0e9f4ec80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a851ca6a0391d14fb49a97d55e4377497" id="r_a851ca6a0391d14fb49a97d55e4377497"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a851ca6a0391d14fb49a97d55e4377497" id="r_a851ca6a0391d14fb49a97d55e4377497"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>
<tr class="memitem:a851ca6a0391d14fb49a97d55e4377497"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a851ca6a0391d14fb49a97d55e4377497">sorting::inversion::show</a> (T *arr, const uint32_t array_size)</td></tr>
<tr class="memdesc:a851ca6a0391d14fb49a97d55e4377497"><td class="mdescLeft">&#160;</td><td class="mdescRight">UTILITY function to print array. <br /></td></tr>
<tr class="separator:a851ca6a0391d14fb49a97d55e4377497"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -202,7 +202,7 @@ Algorithm</h3>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
template&lt;class T&gt; </div>
<table class="memname">
<tr>
<td class="memname">uint32_t sorting::inversion::countInversion </td>
@@ -233,9 +233,9 @@ template&lt;class T &gt; </div>
<div class="line"><span class="lineno"> 165</span> std::vector&lt;T&gt; temp;</div>
<div class="line"><span class="lineno"> 166</span> temp.reserve(size);</div>
<div class="line"><span class="lineno"> 167</span> temp.assign(size, 0);</div>
<div class="line"><span class="lineno"> 168</span> <span class="keywordflow">return</span> <a class="code hl_function" href="../../d5/d4c/group__sorting.html#gab6b14fea48d9841e29b9fc26be6e05d7">mergeSort</a>(arr, temp.data(), 0, size - 1);</div>
<div class="line"><span class="lineno"> 168</span> <span class="keywordflow">return</span> <a class="code hl_function" href="#ae97a486e14101c4822ea8dc47f0d1661">mergeSort</a>(arr, temp.data(), 0, size - 1);</div>
<div class="line"><span class="lineno"> 169</span>}</div>
<div class="ttc" id="agroup__sorting_html_gab6b14fea48d9841e29b9fc26be6e05d7"><div class="ttname"><a href="../../d5/d4c/group__sorting.html#gab6b14fea48d9841e29b9fc26be6e05d7">mergeSort</a></div><div class="ttdeci">void mergeSort(int *arr, int l, int r)</div><div class="ttdef"><b>Definition</b> <a href="../../d5/df4/merge__sort_8cpp_source.html#l00071">merge_sort.cpp:71</a></div></div>
<div class="ttc" id="acount__inversions_8cpp_html_ae97a486e14101c4822ea8dc47f0d1661"><div class="ttname"><a href="#ae97a486e14101c4822ea8dc47f0d1661">sorting::inversion::mergeSort</a></div><div class="ttdeci">uint32_t mergeSort(T *arr, T *temp, uint32_t left, uint32_t right)</div><div class="ttdoc">Implement merge Sort and count inverions while merging.</div><div class="ttdef"><b>Definition</b> <a href="../../d2/d26/count__inversions_8cpp_source.html#l00132">count_inversions.cpp:132</a></div></div>
</div><!-- fragment -->
</div>
</div>
@@ -274,7 +274,7 @@ template&lt;class T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="memname">
<tr>
<td class="memname">uint32_t sorting::inversion::merge </td>
@@ -323,14 +323,14 @@ template&lt;typename T &gt; </div>
<div class="fragment"><div class="line"><span class="lineno"> 85</span> {</div>
<div class="line"><span class="lineno"> 86</span> uint32_t i = left; <span class="comment">/* i --&gt; index of left sub-array */</span></div>
<div class="line"><span class="lineno"> 87</span> uint32_t j = mid + 1; <span class="comment">/* j --&gt; index for right sub-array */</span></div>
<div class="line"><span class="lineno"> 88</span> uint32_t <a class="code hl_function" href="../../d4/d18/composite__simpson__rule_8cpp.html#a1b74d828b33760094906797042b89442">k</a> = left; <span class="comment">/* k --&gt; index for resultant array temp */</span></div>
<div class="line"><span class="lineno"> 88</span> uint32_t k = left; <span class="comment">/* k --&gt; index for resultant array temp */</span></div>
<div class="line"><span class="lineno"> 89</span> uint32_t inv_count = 0; <span class="comment">// inversion count</span></div>
<div class="line"><span class="lineno"> 90</span> </div>
<div class="line"><span class="lineno"> 91</span> <span class="keywordflow">while</span> ((i &lt;= mid) &amp;&amp; (j &lt;= right)) {</div>
<div class="line"><span class="lineno"> 92</span> <span class="keywordflow">if</span> (arr[i] &lt;= arr[j]) {</div>
<div class="line"><span class="lineno"> 93</span> temp[<a class="code hl_function" href="../../d4/d18/composite__simpson__rule_8cpp.html#a1b74d828b33760094906797042b89442">k</a>++] = arr[i++];</div>
<div class="line"><span class="lineno"> 93</span> temp[k++] = arr[i++];</div>
<div class="line"><span class="lineno"> 94</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><span class="lineno"> 95</span> temp[<a class="code hl_function" href="../../d4/d18/composite__simpson__rule_8cpp.html#a1b74d828b33760094906797042b89442">k</a>++] = arr[j++];</div>
<div class="line"><span class="lineno"> 95</span> temp[k++] = arr[j++];</div>
<div class="line"><span class="lineno"> 96</span> inv_count +=</div>
<div class="line"><span class="lineno"> 97</span> (mid - i +</div>
<div class="line"><span class="lineno"> 98</span> 1); <span class="comment">// tricky; may vary depending on selection of sub-array</span></div>
@@ -359,7 +359,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="memname">
<tr>
<td class="memname">uint32_t sorting::inversion::mergeSort </td>
@@ -404,15 +404,15 @@ template&lt;typename T &gt; </div>
<div class="line"><span class="lineno"> 135</span> <span class="comment">// midpoint to split the array</span></div>
<div class="line"><span class="lineno"> 136</span> mid = (right + left) / 2;</div>
<div class="line"><span class="lineno"> 137</span> <span class="comment">// Add inversions in left and right sub-arrays</span></div>
<div class="line"><span class="lineno"> 138</span> inv_count += <a class="code hl_function" href="../../d5/d4c/group__sorting.html#gab6b14fea48d9841e29b9fc26be6e05d7">mergeSort</a>(arr, temp, left, mid); <span class="comment">// left sub-array</span></div>
<div class="line"><span class="lineno"> 139</span> inv_count += <a class="code hl_function" href="../../d5/d4c/group__sorting.html#gab6b14fea48d9841e29b9fc26be6e05d7">mergeSort</a>(arr, temp, mid + 1, right);</div>
<div class="line"><span class="lineno"> 138</span> inv_count += <a class="code hl_function" href="#ae97a486e14101c4822ea8dc47f0d1661">mergeSort</a>(arr, temp, left, mid); <span class="comment">// left sub-array</span></div>
<div class="line"><span class="lineno"> 139</span> inv_count += <a class="code hl_function" href="#ae97a486e14101c4822ea8dc47f0d1661">mergeSort</a>(arr, temp, mid + 1, right);</div>
<div class="line"><span class="lineno"> 140</span> </div>
<div class="line"><span class="lineno"> 141</span> <span class="comment">// inversions in the merge step</span></div>
<div class="line"><span class="lineno"> 142</span> inv_count += <a class="code hl_function" href="../../d5/d4c/group__sorting.html#ga460c61cd948203b4816bef2accb3fc73">merge</a>(arr, temp, left, mid, right);</div>
<div class="line"><span class="lineno"> 142</span> inv_count += <a class="code hl_function" href="#aad643c14734394e784a75169cb58132f">merge</a>(arr, temp, left, mid, right);</div>
<div class="line"><span class="lineno"> 143</span> }</div>
<div class="line"><span class="lineno"> 144</span> <span class="keywordflow">return</span> inv_count;</div>
<div class="line"><span class="lineno"> 145</span>}</div>
<div class="ttc" id="agroup__sorting_html_ga460c61cd948203b4816bef2accb3fc73"><div class="ttname"><a href="../../d5/d4c/group__sorting.html#ga460c61cd948203b4816bef2accb3fc73">merge</a></div><div class="ttdeci">void merge(int *arr, int l, int m, int r)</div><div class="ttdef"><b>Definition</b> <a href="../../d5/df4/merge__sort_8cpp_source.html#l00033">merge_sort.cpp:33</a></div></div>
<div class="ttc" id="acount__inversions_8cpp_html_aad643c14734394e784a75169cb58132f"><div class="ttname"><a href="#aad643c14734394e784a75169cb58132f">sorting::inversion::merge</a></div><div class="ttdeci">uint32_t merge(T *arr, T *temp, uint32_t left, uint32_t mid, uint32_t right)</div><div class="ttdoc">Function to merge two sub-arrays.</div><div class="ttdef"><b>Definition</b> <a href="../../d2/d26/count__inversions_8cpp_source.html#l00085">count_inversions.cpp:85</a></div></div>
</div><!-- fragment -->
</div>
</div>
@@ -422,7 +422,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="memname">
<tr>
<td class="memname">void sorting::inversion::show </td>
@@ -476,7 +476,7 @@ template&lt;typename T &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
<span class="mlabels"><span class="mlabel static">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -528,7 +528,7 @@ template&lt;typename T &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_bb1b521853a9c46347182a9d10420771.html">sorting</a></li><li class="navelem"><a class="el" href="../../d2/d26/count__inversions_8cpp.html">count_inversions.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,9 +1,9 @@
var count__inversions_8cpp =
[
[ "countInversion", "d2/d26/count__inversions_8cpp.html#a3332498eabf6579ef059c0d0e9f4ec80", null ],
[ "sorting::inversion::countInversion", "d2/d26/count__inversions_8cpp.html#a3332498eabf6579ef059c0d0e9f4ec80", null ],
[ "main", "d2/d26/count__inversions_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4", null ],
[ "merge", "d2/d26/count__inversions_8cpp.html#aad643c14734394e784a75169cb58132f", null ],
[ "mergeSort", "d2/d26/count__inversions_8cpp.html#ae97a486e14101c4822ea8dc47f0d1661", null ],
[ "show", "d2/d26/count__inversions_8cpp.html#a851ca6a0391d14fb49a97d55e4377497", null ],
[ "sorting::inversion::merge", "d2/d26/count__inversions_8cpp.html#aad643c14734394e784a75169cb58132f", null ],
[ "sorting::inversion::mergeSort", "d2/d26/count__inversions_8cpp.html#ae97a486e14101c4822ea8dc47f0d1661", null ],
[ "sorting::inversion::show", "d2/d26/count__inversions_8cpp.html#a851ca6a0391d14fb49a97d55e4377497", null ],
[ "test", "d2/d26/count__inversions_8cpp.html#aa8dca7b867074164d5f45b0f3851269d", null ]
];

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: sorting/count_inversions.cpp Source File</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -124,12 +124,12 @@ $(function(){initNavTree('d2/d26/count__inversions_8cpp_source.html','../../');
<div class="headertitle"><div class="title">count_inversions.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="../../d2/d26/count__inversions_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<a href="../../d2/d26/count__inversions_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span><span class="preprocessor">#include &lt;cassert&gt;</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span><span class="preprocessor">#include &lt;cstdint&gt;</span> </div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span><span class="preprocessor">#include &lt;iostream&gt;</span> </div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span><span class="preprocessor">#include &lt;vector&gt;</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span></div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span><span class="keyword">namespace </span><a class="code hl_namespace" href="../../d5/d91/namespacesorting.html">sorting</a> {</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span><span class="keyword">namespace </span><a class="code hl_namespace" href="../../d9/d13/namespaceinversion.html">inversion</a> {</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> </div>
@@ -138,7 +138,7 @@ $(function(){initNavTree('d2/d26/count__inversions_8cpp_source.html','../../');
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span><span class="comment">// int merge(int* arr, int* temp, int left, int mid, int right);</span></div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span><span class="comment">// int countInversion(int* arr, const int size);</span></div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span><span class="comment">// void show(int* arr, const int size);</span></div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span></div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span><span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
<div class="foldopen" id="foldopen00085" data-start="{" data-end="}">
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"><a class="line" href="../../d2/d26/count__inversions_8cpp.html#aad643c14734394e784a75169cb58132f"> 85</a></span>uint32_t <a class="code hl_function" href="../../d2/d26/count__inversions_8cpp.html#aad643c14734394e784a75169cb58132f">merge</a>(T* arr, T* temp, uint32_t left, uint32_t mid, uint32_t right) {</div>
@@ -171,7 +171,7 @@ $(function(){initNavTree('d2/d26/count__inversions_8cpp_source.html','../../');
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> <span class="keywordflow">return</span> inv_count;</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span>}</div>
</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> </div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span></div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span><span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
<div class="foldopen" id="foldopen00132" data-start="{" data-end="}">
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"><a class="line" href="../../d2/d26/count__inversions_8cpp.html#ae97a486e14101c4822ea8dc47f0d1661"> 132</a></span>uint32_t <a class="code hl_function" href="../../d2/d26/count__inversions_8cpp.html#ae97a486e14101c4822ea8dc47f0d1661">mergeSort</a>(T* arr, T* temp, uint32_t left, uint32_t right) {</div>
@@ -189,7 +189,7 @@ $(function(){initNavTree('d2/d26/count__inversions_8cpp_source.html','../../');
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> <span class="keywordflow">return</span> inv_count;</div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span>}</div>
</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> </div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span></div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span><span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt;</div>
<div class="foldopen" id="foldopen00164" data-start="{" data-end="}">
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"><a class="line" href="../../d2/d26/count__inversions_8cpp.html#a3332498eabf6579ef059c0d0e9f4ec80"> 164</a></span>uint32_t <a class="code hl_function" href="../../d2/d26/count__inversions_8cpp.html#a3332498eabf6579ef059c0d0e9f4ec80">countInversion</a>(T* arr, <span class="keyword">const</span> uint32_t size) {</div>
@@ -199,10 +199,10 @@ $(function(){initNavTree('d2/d26/count__inversions_8cpp_source.html','../../');
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> <span class="keywordflow">return</span> <a class="code hl_function" href="../../d2/d26/count__inversions_8cpp.html#ae97a486e14101c4822ea8dc47f0d1661">mergeSort</a>(arr, temp.data(), 0, size - 1);</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span>}</div>
</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> </div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span></div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span><span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
<div class="foldopen" id="foldopen00179" data-start="{" data-end="}">
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"><a class="line" href="../../d2/d26/count__inversions_8cpp.html#a851ca6a0391d14fb49a97d55e4377497"> 179</a></span><span class="keywordtype">void</span> show(T* arr, <span class="keyword">const</span> uint32_t array_size) {</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"><a class="line" href="../../d2/d26/count__inversions_8cpp.html#a851ca6a0391d14fb49a97d55e4377497"> 179</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="../../d2/d26/count__inversions_8cpp.html#a851ca6a0391d14fb49a97d55e4377497">show</a>(T* arr, <span class="keyword">const</span> uint32_t array_size) {</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> std::cout &lt;&lt; <span class="stringliteral">&quot;Printing array: \n&quot;</span>;</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> <span class="keywordflow">for</span> (uint32_t i = 0; i &lt; array_size; i++) {</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> std::cout &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; arr[i];</div>
@@ -213,7 +213,7 @@ $(function(){initNavTree('d2/d26/count__inversions_8cpp_source.html','../../');
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> </div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span>} <span class="comment">// namespace inversion</span></div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span>} <span class="comment">// namespace sorting</span></div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> </div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span></div>
<div class="foldopen" id="foldopen00194" data-start="{" data-end="}">
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"><a class="line" href="../../d2/d26/count__inversions_8cpp.html#aa8dca7b867074164d5f45b0f3851269d"> 194</a></span><span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code hl_function" href="../../d2/d26/count__inversions_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>() {</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> <span class="comment">// Test 1</span></div>
@@ -226,26 +226,26 @@ $(function(){initNavTree('d2/d26/count__inversions_8cpp_source.html','../../');
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1};</div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> uint32_t size1 = arr1.size();</div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> uint32_t inv_count1 = 4950;</div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> uint32_t result1 = sorting::inversion::countInversion(arr1.data(), size1);</div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> uint32_t result1 = <a class="code hl_function" href="../../d2/d26/count__inversions_8cpp.html#a3332498eabf6579ef059c0d0e9f4ec80">sorting::inversion::countInversion</a>(arr1.data(), size1);</div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> assert(inv_count1 == result1);</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> <span class="comment">// Test 2</span></div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> std::vector&lt;int&gt; arr2 = {22, 66, 75, 23, 11, 87, 2, 44, 98, 43};</div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> uint32_t size2 = arr2.size();</div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> uint32_t inv_count2 = 20;</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> uint32_t result2 = sorting::inversion::countInversion(arr2.data(), size2);</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> uint32_t result2 = <a class="code hl_function" href="../../d2/d26/count__inversions_8cpp.html#a3332498eabf6579ef059c0d0e9f4ec80">sorting::inversion::countInversion</a>(arr2.data(), size2);</div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> assert(inv_count2 == result2);</div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span> <span class="comment">// Test 3</span></div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span> std::vector&lt;double&gt; arr3 = {33.1, 45.2, 65.4, 76.5, 1.0,</div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span> 2.9, 5.4, 7.7, 88.9, 12.4};</div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span> uint32_t size3 = arr3.size();</div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span> uint32_t inv_count3 = 21;</div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span> uint32_t result3 = sorting::inversion::countInversion(arr3.data(), size3);</div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span> uint32_t result3 = <a class="code hl_function" href="../../d2/d26/count__inversions_8cpp.html#a3332498eabf6579ef059c0d0e9f4ec80">sorting::inversion::countInversion</a>(arr3.data(), size3);</div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span> assert(inv_count3 == result3);</div>
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"> 220</span> <span class="comment">// Test 4</span></div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span> std::vector&lt;char&gt; arr4 = {<span class="charliteral">&#39;a&#39;</span>, <span class="charliteral">&#39;b&#39;</span>, <span class="charliteral">&#39;c&#39;</span>, <span class="charliteral">&#39;d&#39;</span>, <span class="charliteral">&#39;e&#39;</span>};</div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span> uint32_t size4 = arr4.size();</div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span> uint32_t inv_count4 = 0;</div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"> 224</span> uint32_t result4 = sorting::inversion::countInversion(arr4.data(), size4);</div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"> 224</span> uint32_t result4 = <a class="code hl_function" href="../../d2/d26/count__inversions_8cpp.html#a3332498eabf6579ef059c0d0e9f4ec80">sorting::inversion::countInversion</a>(arr4.data(), size4);</div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> assert(inv_count4 == result4);</div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span>}</div>
</div>
@@ -288,7 +288,7 @@ $(function(){initNavTree('d2/d26/count__inversions_8cpp_source.html','../../');
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span><span class="comment">// std::cout &lt;&lt; &quot;\nSorted array --&gt; \n&quot;;</span></div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span><span class="comment">// sorting::inversion::show(arr.data(), size);</span></div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span><span class="comment">// }</span></div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> </div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span></div>
<div class="foldopen" id="foldopen00271" data-start="{" data-end="}">
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"><a class="line" href="../../d2/d26/count__inversions_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4"> 271</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="../../d2/d26/count__inversions_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a>() {</div>
<div class="line"><a id="l00272" name="l00272"></a><span class="lineno"> 272</span> <a class="code hl_function" href="../../d2/d26/count__inversions_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>(); <span class="comment">// Run test implementations</span></div>
@@ -297,6 +297,7 @@ $(function(){initNavTree('d2/d26/count__inversions_8cpp_source.html','../../');
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span>}</div>
</div>
<div class="ttc" id="acount__inversions_8cpp_html_a3332498eabf6579ef059c0d0e9f4ec80"><div class="ttname"><a href="../../d2/d26/count__inversions_8cpp.html#a3332498eabf6579ef059c0d0e9f4ec80">sorting::inversion::countInversion</a></div><div class="ttdeci">uint32_t countInversion(T *arr, const uint32_t size)</div><div class="ttdoc">Function countInversion() returns the number of inversion present in the input array....</div><div class="ttdef"><b>Definition</b> <a href="#l00164">count_inversions.cpp:164</a></div></div>
<div class="ttc" id="acount__inversions_8cpp_html_a851ca6a0391d14fb49a97d55e4377497"><div class="ttname"><a href="../../d2/d26/count__inversions_8cpp.html#a851ca6a0391d14fb49a97d55e4377497">sorting::inversion::show</a></div><div class="ttdeci">void show(T *arr, const uint32_t array_size)</div><div class="ttdoc">UTILITY function to print array.</div><div class="ttdef"><b>Definition</b> <a href="#l00179">count_inversions.cpp:179</a></div></div>
<div class="ttc" id="acount__inversions_8cpp_html_aa8dca7b867074164d5f45b0f3851269d"><div class="ttname"><a href="../../d2/d26/count__inversions_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a></div><div class="ttdeci">static void test()</div><div class="ttdoc">Test implementations.</div><div class="ttdef"><b>Definition</b> <a href="#l00194">count_inversions.cpp:194</a></div></div>
<div class="ttc" id="acount__inversions_8cpp_html_aad643c14734394e784a75169cb58132f"><div class="ttname"><a href="../../d2/d26/count__inversions_8cpp.html#aad643c14734394e784a75169cb58132f">sorting::inversion::merge</a></div><div class="ttdeci">uint32_t merge(T *arr, T *temp, uint32_t left, uint32_t mid, uint32_t right)</div><div class="ttdoc">Function to merge two sub-arrays.</div><div class="ttdef"><b>Definition</b> <a href="#l00085">count_inversions.cpp:85</a></div></div>
<div class="ttc" id="acount__inversions_8cpp_html_ae66f6b31b5ad750f1fe042a706a4e3d4"><div class="ttname"><a href="../../d2/d26/count__inversions_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a></div><div class="ttdeci">int main()</div><div class="ttdoc">Program Body contains all main funtionality.</div><div class="ttdef"><b>Definition</b> <a href="#l00271">count_inversions.cpp:271</a></div></div>
@@ -309,7 +310,7 @@ $(function(){initNavTree('d2/d26/count__inversions_8cpp_source.html','../../');
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_bb1b521853a9c46347182a9d10420771.html">sorting</a></li><li class="navelem"><a class="el" href="../../d2/d26/count__inversions_8cpp.html">count_inversions.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: math/approximate_pi.cpp Pages: 1 -->
<svg width="251pt" height="83pt"

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: math/approximate_pi.cpp Pages: 1 -->
<svg width="251pt" height="83pt"

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: data_structures/segment_tree.cpp Pages: 1 -->
<svg width="262pt" height="94pt"

Before

Width:  |  Height:  |  Size: 4.8 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: data_structures/segment_tree.cpp Pages: 1 -->
<svg width="262pt" height="94pt"

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: tower Struct Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -187,7 +187,7 @@ Public Attributes</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d2/d2c/structtower.html">tower</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: greedy_algorithms::dijkstra Namespace Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -203,16 +203,17 @@ Functions</h2></td></tr>
<div class="line"><span class="lineno"> 141</span> vset[u] = <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 142</span> </div>
<div class="line"><span class="lineno"> 143</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> v = 0; v &lt; V; v++) {</div>
<div class="line"><span class="lineno"> 144</span> <span class="keywordflow">if</span> (!vset[v] &amp;&amp; <a class="code hl_namespace" href="../../df/dce/namespacegraph.html">graph</a>.edges[u][v] &amp;&amp;</div>
<div class="line"><span class="lineno"> 145</span> mdist[u] + <a class="code hl_namespace" href="../../df/dce/namespacegraph.html">graph</a>.edges[u][v] &lt; mdist[v]) {</div>
<div class="line"><span class="lineno"> 146</span> mdist[v] = mdist[u] + <a class="code hl_namespace" href="../../df/dce/namespacegraph.html">graph</a>.edges[u][v];</div>
<div class="line"><span class="lineno"> 144</span> <span class="keywordflow">if</span> (!vset[v] &amp;&amp; graph.edges[u][v] &amp;&amp;</div>
<div class="line"><span class="lineno"> 145</span> mdist[u] + graph.edges[u][v] &lt; mdist[v]) {</div>
<div class="line"><span class="lineno"> 146</span> mdist[v] = mdist[u] + graph.edges[u][v];</div>
<div class="line"><span class="lineno"> 147</span> }</div>
<div class="line"><span class="lineno"> 148</span> }</div>
<div class="line"><span class="lineno"> 149</span> }</div>
<div class="line"><span class="lineno"> 150</span> </div>
<div class="line"><span class="lineno"> 151</span> print(mdist, V);</div>
<div class="line"><span class="lineno"> 151</span> <a class="code hl_function" href="#a7341d7c76a6145e991cdd231f689fca8">print</a>(mdist, V);</div>
<div class="line"><span class="lineno"> 152</span>}</div>
<div class="ttc" id="anamespacegraph_html"><div class="ttname"><a href="../../df/dce/namespacegraph.html">graph</a></div><div class="ttdoc">Graph Algorithms.</div></div>
<div class="ttc" id="anamespacegreedy__algorithms_1_1dijkstra_html_a7341d7c76a6145e991cdd231f689fca8"><div class="ttname"><a href="#a7341d7c76a6145e991cdd231f689fca8">greedy_algorithms::dijkstra::print</a></div><div class="ttdeci">void print(std::vector&lt; int &gt; dist, int V)</div><div class="ttdoc">Utility function to print the distances to vertices.</div><div class="ttdef"><b>Definition</b> <a href="../../da/de8/dijkstra__greedy_8cpp_source.html#l00104">dijkstra_greedy.cpp:104</a></div></div>
<div class="ttc" id="anamespacegreedy__algorithms_1_1dijkstra_html_af6cb29ca6dc5771439f6ea7262058a71"><div class="ttname"><a href="#af6cb29ca6dc5771439f6ea7262058a71">greedy_algorithms::dijkstra::minimum_distance</a></div><div class="ttdeci">int minimum_distance(std::vector&lt; int &gt; mdist, std::vector&lt; bool &gt; vset, int V)</div><div class="ttdoc">Utility function that finds the vertex with the minimum distance in mdist.</div><div class="ttdef"><b>Definition</b> <a href="../../da/de8/dijkstra__greedy_8cpp_source.html#l00082">dijkstra_greedy.cpp:82</a></div></div>
</div><!-- fragment -->
</div>
@@ -318,7 +319,7 @@ Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d2/d90/namespacegreedy__algorithms.html">greedy_algorithms</a></li><li class="navelem"><a class="el" href="../../d2/d2f/namespacegreedy__algorithms_1_1dijkstra.html">dijkstra</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: Member List</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -134,7 +134,7 @@ $(function(){initNavTree('d9/d5a/structgeometry_1_1jarvis_1_1_point.html','../..
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: sorting/pancake_sort.cpp Pages: 1 -->
<svg width="262pt" height="83pt"

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: sorting/pancake_sort.cpp Pages: 1 -->
<svg width="262pt" height="83pt"

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: qr_algorithm Namespace Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -132,22 +132,22 @@ $(function(){initNavTree('d2/d3b/namespaceqr__algorithm.html','../../'); initRes
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:adfbdf47277c8cfee229b05b72f1f7834" id="r_adfbdf47277c8cfee229b05b72f1f7834"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:adfbdf47277c8cfee229b05b72f1f7834" id="r_adfbdf47277c8cfee229b05b72f1f7834"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>
<tr class="memitem:adfbdf47277c8cfee229b05b72f1f7834"><td class="memTemplItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#adfbdf47277c8cfee229b05b72f1f7834">operator&lt;&lt;</a> (std::ostream &amp;out, std::valarray&lt; std::valarray&lt; T &gt; &gt; const &amp;v)</td></tr>
<tr class="separator:adfbdf47277c8cfee229b05b72f1f7834"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a257425cb2365359da51c6fe6741834d8" id="r_a257425cb2365359da51c6fe6741834d8"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a257425cb2365359da51c6fe6741834d8" id="r_a257425cb2365359da51c6fe6741834d8"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>
<tr class="memitem:a257425cb2365359da51c6fe6741834d8"><td class="memTemplItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a257425cb2365359da51c6fe6741834d8">operator&lt;&lt;</a> (std::ostream &amp;out, std::valarray&lt; T &gt; const &amp;v)</td></tr>
<tr class="separator:a257425cb2365359da51c6fe6741834d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ea313a1a1b5f9d0e3e332c29c6446ec" id="r_a8ea313a1a1b5f9d0e3e332c29c6446ec"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a8ea313a1a1b5f9d0e3e332c29c6446ec" id="r_a8ea313a1a1b5f9d0e3e332c29c6446ec"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>
<tr class="memitem:a8ea313a1a1b5f9d0e3e332c29c6446ec"><td class="memTemplItemLeft" align="right" valign="top">double&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a8ea313a1a1b5f9d0e3e332c29c6446ec">vector_dot</a> (const std::valarray&lt; T &gt; &amp;a, const std::valarray&lt; T &gt; &amp;b)</td></tr>
<tr class="separator:a8ea313a1a1b5f9d0e3e332c29c6446ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad16da2183db22378435042f26af43d5f" id="r_ad16da2183db22378435042f26af43d5f"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:ad16da2183db22378435042f26af43d5f" id="r_ad16da2183db22378435042f26af43d5f"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>
<tr class="memitem:ad16da2183db22378435042f26af43d5f"><td class="memTemplItemLeft" align="right" valign="top">double&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#ad16da2183db22378435042f26af43d5f">vector_mag</a> (const std::valarray&lt; T &gt; &amp;a)</td></tr>
<tr class="separator:ad16da2183db22378435042f26af43d5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d3c7dce1f142141f509d09f6c0e25dc" id="r_a6d3c7dce1f142141f509d09f6c0e25dc"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a6d3c7dce1f142141f509d09f6c0e25dc" id="r_a6d3c7dce1f142141f509d09f6c0e25dc"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>
<tr class="memitem:a6d3c7dce1f142141f509d09f6c0e25dc"><td class="memTemplItemLeft" align="right" valign="top">std::valarray&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a6d3c7dce1f142141f509d09f6c0e25dc">vector_proj</a> (const std::valarray&lt; T &gt; &amp;a, const std::valarray&lt; T &gt; &amp;b)</td></tr>
<tr class="separator:a6d3c7dce1f142141f509d09f6c0e25dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a73ce637634fc49e1d10d190eb388ebf1" id="r_a73ce637634fc49e1d10d190eb388ebf1"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a73ce637634fc49e1d10d190eb388ebf1" id="r_a73ce637634fc49e1d10d190eb388ebf1"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>
<tr class="memitem:a73ce637634fc49e1d10d190eb388ebf1"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a73ce637634fc49e1d10d190eb388ebf1">qr_decompose</a> (const std::valarray&lt; std::valarray&lt; T &gt; &gt; &amp;A, std::valarray&lt; std::valarray&lt; T &gt; &gt; *Q, std::valarray&lt; std::valarray&lt; T &gt; &gt; *R)</td></tr>
<tr class="separator:a73ce637634fc49e1d10d190eb388ebf1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28e2fa3e803abaea6c568dc45d69d8cc" id="r_a28e2fa3e803abaea6c568dc45d69d8cc"><td class="memItemLeft" align="right" valign="top">std::valarray&lt; double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a28e2fa3e803abaea6c568dc45d69d8cc">eigen_values</a> (std::valarray&lt; std::valarray&lt; double &gt; &gt; *A, bool print_intermediates=false)</td></tr>
@@ -229,7 +229,7 @@ Functions</h2></td></tr>
<div class="line"><span class="lineno"> 123</span> A[0][i][i] -= last_eig; <span class="comment">/* A - cI */</span></div>
<div class="line"><span class="lineno"> 124</span> }</div>
<div class="line"><span class="lineno"> 125</span> </div>
<div class="line"><span class="lineno"> 126</span> qr_decompose(*A, &amp;Q, &amp;R);</div>
<div class="line"><span class="lineno"> 126</span> <a class="code hl_function" href="#a73ce637634fc49e1d10d190eb388ebf1">qr_decompose</a>(*A, &amp;Q, &amp;R);</div>
<div class="line"><span class="lineno"> 127</span> </div>
<div class="line"><span class="lineno"> 128</span> <span class="keywordflow">if</span> (print_intermediates) {</div>
<div class="line"><span class="lineno"> 129</span> std::cout &lt;&lt; *A &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div>
@@ -269,6 +269,7 @@ Functions</h2></td></tr>
<div class="line"><span class="lineno"> 163</span> </div>
<div class="line"><span class="lineno"> 164</span> <span class="keywordflow">return</span> eigen_vals;</div>
<div class="line"><span class="lineno"> 165</span>}</div>
<div class="ttc" id="anamespaceqr__algorithm_html_a73ce637634fc49e1d10d190eb388ebf1"><div class="ttname"><a href="#a73ce637634fc49e1d10d190eb388ebf1">qr_algorithm::qr_decompose</a></div><div class="ttdeci">void qr_decompose(const std::valarray&lt; std::valarray&lt; T &gt; &gt; &amp;A, std::valarray&lt; std::valarray&lt; T &gt; &gt; *Q, std::valarray&lt; std::valarray&lt; T &gt; &gt; *R)</div><div class="ttdef"><b>Definition</b> <a href="../../d4/d68/qr__decompose_8h_source.html#l00146">qr_decompose.h:146</a></div></div>
<div class="ttc" id="aqr__eigen__values_8cpp_html_abb8bf4c55e10685a5eb2ad3797fde1ae"><div class="ttname"><a href="../../de/d75/qr__eigen__values_8cpp.html#abb8bf4c55e10685a5eb2ad3797fde1ae">mat_mul</a></div><div class="ttdeci">void mat_mul(const std::valarray&lt; std::valarray&lt; double &gt; &gt; &amp;A, const std::valarray&lt; std::valarray&lt; double &gt; &gt; &amp;B, std::valarray&lt; std::valarray&lt; double &gt; &gt; *OUT)</div><div class="ttdef"><b>Definition</b> <a href="../../de/d75/qr__eigen__values_8cpp_source.html#l00054">qr_eigen_values.cpp:54</a></div></div>
</div><!-- fragment -->
</div>
@@ -279,7 +280,7 @@ Functions</h2></td></tr>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="memname">
<tr>
<td class="memname">std::ostream &amp; qr_algorithm::operator&lt;&lt; </td>
@@ -319,7 +320,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="memname">
<tr>
<td class="memname">std::ostream &amp; qr_algorithm::operator&lt;&lt; </td>
@@ -357,7 +358,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="memname">
<tr>
<td class="memname">void qr_algorithm::qr_decompose </td>
@@ -378,8 +379,7 @@ template&lt;typename T &gt; </div>
</div><div class="memdoc">
<p>Decompose matrix \(A\) using <a href="https://en.wikipedia.org/wiki/QR_decomposition" target="_blank">Gram-Schmidt process</a>.</p>
<p class="formulaDsp">
\begin{eqnarray*}
\text{given that}\quad A &amp;=&amp;
\begin{eqnarray*} \text{given that}\quad A &amp;=&amp;
*\left[\mathbf{a}_1,\mathbf{a}_2,\ldots,\mathbf{a}_{N-1},\right]\\
\text{where}\quad\mathbf{a}_i &amp;=&amp;
\left[a_{0i},a_{1i},a_{2i},\ldots,a_{(M-1)i}\right]^T\quad\ldots\mbox{(column
@@ -397,7 +397,7 @@ template&lt;typename T &gt; </div>
0 &amp; 0 &amp; \langle\mathbf{e}_2\,,\mathbf{a}_2\rangle &amp;
\dots\\ \vdots &amp; \vdots &amp; \vdots &amp; \ddots
\end{bmatrix}\\
\end{eqnarray*}
\end{eqnarray*}
</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
@@ -471,7 +471,7 @@ template&lt;typename T &gt; </div>
<div class="ttc" id="anamespacemachine__learning_html_a6f1c98c016ad34ff3d9f39372161bd35"><div class="ttname"><a href="../../d8/d77/namespacemachine__learning.html#a6f1c98c016ad34ff3d9f39372161bd35">machine_learning::sum</a></div><div class="ttdeci">T sum(const std::vector&lt; std::valarray&lt; T &gt; &gt; &amp;A)</div><div class="ttdef"><b>Definition</b> <a href="../../d8/d95/vector__ops_8hpp_source.html#l00232">vector_ops.hpp:232</a></div></div>
<div class="ttc" id="anamespaceqr__algorithm_html_a6d3c7dce1f142141f509d09f6c0e25dc"><div class="ttname"><a href="#a6d3c7dce1f142141f509d09f6c0e25dc">qr_algorithm::vector_proj</a></div><div class="ttdeci">std::valarray&lt; T &gt; vector_proj(const std::valarray&lt; T &gt; &amp;a, const std::valarray&lt; T &gt; &amp;b)</div><div class="ttdef"><b>Definition</b> <a href="../../d4/d68/qr__decompose_8h_source.html#l00104">qr_decompose.h:104</a></div></div>
<div class="ttc" id="anamespaceqr__algorithm_html_ad16da2183db22378435042f26af43d5f"><div class="ttname"><a href="#ad16da2183db22378435042f26af43d5f">qr_algorithm::vector_mag</a></div><div class="ttdeci">double vector_mag(const std::valarray&lt; T &gt; &amp;a)</div><div class="ttdef"><b>Definition</b> <a href="../../d4/d68/qr__decompose_8h_source.html#l00092">qr_decompose.h:92</a></div></div>
<div class="ttc" id="avector__cross__product_8cpp_html_a4b2a9757a87c18e1642d72410ecfaba8"><div class="ttname"><a href="../../df/d66/vector__cross__product_8cpp.html#a4b2a9757a87c18e1642d72410ecfaba8">math::vector_cross::mag</a></div><div class="ttdeci">double mag(const std::array&lt; double, 3 &gt; &amp;vec)</div><div class="ttdoc">Calculates the magnitude of the mathematical vector from it's direction ratios.</div><div class="ttdef"><b>Definition</b> <a href="../../df/d66/vector__cross__product_8cpp_source.html#l00083">vector_cross_product.cpp:83</a></div></div>
<div class="ttc" id="avector__cross__product_8cpp_html_a4b2a9757a87c18e1642d72410ecfaba8"><div class="ttname"><a href="../../df/d66/vector__cross__product_8cpp.html#a4b2a9757a87c18e1642d72410ecfaba8">math::vector_cross::mag</a></div><div class="ttdeci">double mag(const std::array&lt; double, 3 &gt; &amp;vec)</div><div class="ttdoc">Calculates the magnitude of the mathematical vector from it&#39;s direction ratios.</div><div class="ttdef"><b>Definition</b> <a href="../../df/d66/vector__cross__product_8cpp_source.html#l00083">vector_cross_product.cpp:83</a></div></div>
</div><!-- fragment -->
</div>
</div>
@@ -481,7 +481,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -499,7 +499,7 @@ template&lt;typename T &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -523,7 +523,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -537,7 +537,7 @@ template&lt;typename T &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -560,7 +560,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="memname">
<tr>
<td class="memname">std::valarray&lt; T &gt; qr_algorithm::vector_proj </td>
@@ -584,7 +584,7 @@ template&lt;typename T &gt; </div>
<div class="fragment"><div class="line"><span class="lineno"> 105</span> {</div>
<div class="line"><span class="lineno"> 106</span> <span class="keywordtype">double</span> num = <a class="code hl_function" href="#a8ea313a1a1b5f9d0e3e332c29c6446ec">vector_dot</a>(a, b);</div>
<div class="line"><span class="lineno"> 107</span> <span class="keywordtype">double</span> deno = <a class="code hl_function" href="#a8ea313a1a1b5f9d0e3e332c29c6446ec">vector_dot</a>(b, b);</div>
<div class="line"><span class="lineno"> 108</span> </div>
<div class="line"><span class="lineno"> 108</span></div>
<div class="line"><span class="lineno"> 110</span> <span class="keywordflow">if</span> (deno &lt;= std::numeric_limits&lt;double&gt;::epsilon()) {</div>
<div class="line"><span class="lineno"> 111</span> std::cerr &lt;&lt; <span class="stringliteral">&quot;[&quot;</span> &lt;&lt; __func__ &lt;&lt; <span class="stringliteral">&quot;] Possible division by zero\n&quot;</span>;</div>
<div class="line"><span class="lineno"> 112</span> <span class="keywordflow">return</span> a; <span class="comment">// return vector a back</span></div>
@@ -603,7 +603,7 @@ template&lt;typename T &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d2/d3b/namespaceqr__algorithm.html">qr_algorithm</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: sorting/insertion_sort_recursive.cpp Pages: 1 -->
<svg width="262pt" height="94pt"

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 4.7 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: sorting/insertion_sort_recursive.cpp Pages: 1 -->
<svg width="262pt" height="94pt"

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: range_queries/segtree.cpp File Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -424,7 +424,7 @@ Functions</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
<span class="mlabels"><span class="mlabel static">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -562,7 +562,7 @@ Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_074119ce3a874b57120c49a0cc4bb5ad.html">range_queries</a></li><li class="navelem"><a class="el" href="../../d2/d45/segtree_8cpp.html">segtree.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: range_queries/segtree.cpp Source File</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -124,13 +124,14 @@ $(function(){initNavTree('d2/d45/segtree_8cpp_source.html','../../'); initResiza
<div class="headertitle"><div class="title">segtree.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="../../d2/d45/segtree_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<a href="../../d2/d45/segtree_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> </div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="preprocessor">#include &lt;cassert&gt;</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="preprocessor">#include &lt;cmath&gt;</span> </div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="preprocessor">#include &lt;cstdint&gt;</span> </div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="preprocessor">#include &lt;iostream&gt;</span> </div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="preprocessor">#include &lt;vector&gt;</span> </div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> </div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span></div>
<div class="foldopen" id="foldopen00038" data-start="{" data-end="}">
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"><a class="line" href="../../d2/d45/segtree_8cpp.html#ae752659b7c1719d68fdb2ca538a93696"> 38</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="../../d2/d45/segtree_8cpp.html#ae752659b7c1719d68fdb2ca538a93696">ConsTree</a>(<span class="keyword">const</span> std::vector&lt;int64_t&gt; &amp;arr, std::vector&lt;int64_t&gt; *segtree,</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> uint64_t low, uint64_t high, uint64_t pos) {</div>
@@ -145,7 +146,7 @@ $(function(){initNavTree('d2/d45/segtree_8cpp_source.html','../../'); initResiza
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> (*segtree)[pos] = (*segtree)[2 * pos + 1] + (*segtree)[2 * pos + 2];</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span>}</div>
</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> </div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span></div>
<div class="foldopen" id="foldopen00063" data-start="{" data-end="}">
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"><a class="line" href="../../d2/d45/segtree_8cpp.html#a423a97ea0c7ea6e33b5844a6858d902d"> 63</a></span>int64_t <a class="code hl_function" href="../../d2/d45/segtree_8cpp.html#a423a97ea0c7ea6e33b5844a6858d902d">query</a>(std::vector&lt;int64_t&gt; *segtree, std::vector&lt;int64_t&gt; *lazy,</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> uint64_t qlow, uint64_t qhigh, uint64_t low, uint64_t high,</div>
@@ -174,7 +175,7 @@ $(function(){initNavTree('d2/d45/segtree_8cpp_source.html','../../'); initResiza
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <a class="code hl_function" href="../../d2/d45/segtree_8cpp.html#a423a97ea0c7ea6e33b5844a6858d902d">query</a>(segtree, lazy, qlow, qhigh, mid + 1, high, 2 * pos + 2);</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span>}</div>
</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> </div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span></div>
<div class="foldopen" id="foldopen00103" data-start="{" data-end="}">
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"><a class="line" href="../../d2/d45/segtree_8cpp.html#abd3e818681fb2e29cf08f4f60f82c8e0"> 103</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="../../d2/d45/segtree_8cpp.html#abd3e818681fb2e29cf08f4f60f82c8e0">update</a>(std::vector&lt;int64_t&gt; *segtree, std::vector&lt;int64_t&gt; *lazy,</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> int64_t start, int64_t end, int64_t delta, uint64_t low,</div>
@@ -215,7 +216,7 @@ $(function(){initNavTree('d2/d45/segtree_8cpp_source.html','../../'); initResiza
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> (*segtree)[pos] = (*segtree)[2 * pos + 1] + (*segtree)[2 * pos + 2];</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span>}</div>
</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> </div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span></div>
<div class="foldopen" id="foldopen00147" data-start="{" data-end="}">
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"><a class="line" href="../../d2/d45/segtree_8cpp.html#aa8dca7b867074164d5f45b0f3851269d"> 147</a></span><span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code hl_function" href="../../d2/d45/segtree_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>() {</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> <span class="keyword">auto</span> max = <span class="keyword">static_cast&lt;</span>int64_t<span class="keyword">&gt;</span>(2 * pow(2, ceil(log2(7))) - 1);</div>
@@ -233,7 +234,7 @@ $(function(){initNavTree('d2/d45/segtree_8cpp_source.html','../../'); initResiza
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> assert(<a class="code hl_function" href="../../d2/d45/segtree_8cpp.html#a423a97ea0c7ea6e33b5844a6858d902d">query</a>(&amp;segtree, &amp;lazy, 0, 4, 0, 7 - 1, 0) == -1 + 0 + 2 + 3 + 4);</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span>}</div>
</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> </div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span></div>
<div class="foldopen" id="foldopen00168" data-start="{" data-end="}">
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"><a class="line" href="../../d2/d45/segtree_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4"> 168</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="../../d2/d45/segtree_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a>() {</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> <a class="code hl_function" href="../../d2/d45/segtree_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>(); <span class="comment">// run self-test implementations</span></div>
@@ -299,7 +300,7 @@ $(function(){initNavTree('d2/d45/segtree_8cpp_source.html','../../'); initResiza
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_074119ce3a874b57120c49a0cc4bb5ad.html">range_queries</a></li><li class="navelem"><a class="el" href="../../d2/d45/segtree_8cpp.html">segtree.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: graph/max_flow_with_ford_fulkerson_and_edmond_karp_algo.cpp Source File</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -251,7 +251,7 @@ $(function(){initNavTree('d2/d48/max__flow__with__ford__fulkerson__and__edmond__
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_12552d7fa429bf94a2e32e5cf39f7e69.html">graph</a></li><li class="navelem"><b>max_flow_with_ford_fulkerson_and_edmond_karp_algo.cpp</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: graphics/spirograph.cpp Pages: 1 -->
<!--zoomable 83 -->

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 10 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: graphics/spirograph.cpp Pages: 1 -->
<svg width="503pt" height="83pt"

Before

Width:  |  Height:  |  Size: 6.7 KiB

After

Width:  |  Height:  |  Size: 6.7 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: sorting/heap_sort.cpp File Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -142,13 +142,13 @@ Include dependency graph for heap_sort.cpp:</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a9ed3e1510afdf3edd06cf2b68769a767" id="r_a9ed3e1510afdf3edd06cf2b68769a767"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a9ed3e1510afdf3edd06cf2b68769a767" id="r_a9ed3e1510afdf3edd06cf2b68769a767"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>
<tr class="memitem:a9ed3e1510afdf3edd06cf2b68769a767"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a9ed3e1510afdf3edd06cf2b68769a767">printArray</a> (T *arr, int sz)</td></tr>
<tr class="separator:a9ed3e1510afdf3edd06cf2b68769a767"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabd9a93f241c5c86f2ec0abf8b66b4145" id="r_gabd9a93f241c5c86f2ec0abf8b66b4145"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:gabd9a93f241c5c86f2ec0abf8b66b4145" id="r_gabd9a93f241c5c86f2ec0abf8b66b4145"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>
<tr class="memitem:gabd9a93f241c5c86f2ec0abf8b66b4145"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../d5/d4c/group__sorting.html#gabd9a93f241c5c86f2ec0abf8b66b4145">heapify</a> (T *arr, int n, int i)</td></tr>
<tr class="separator:gabd9a93f241c5c86f2ec0abf8b66b4145"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga29d28b140174dbdde7c9f5157758435f" id="r_ga29d28b140174dbdde7c9f5157758435f"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:ga29d28b140174dbdde7c9f5157758435f" id="r_ga29d28b140174dbdde7c9f5157758435f"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>
<tr class="memitem:ga29d28b140174dbdde7c9f5157758435f"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../d5/d4c/group__sorting.html#ga29d28b140174dbdde7c9f5157758435f">heapSort</a> (T *arr, int n)</td></tr>
<tr class="separator:ga29d28b140174dbdde7c9f5157758435f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1a3968e7947464bee7714f6d43b7002" id="r_ae1a3968e7947464bee7714f6d43b7002"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae1a3968e7947464bee7714f6d43b7002">test</a> ()</td></tr>
@@ -195,7 +195,7 @@ Functions</h2></td></tr>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="memname">
<tr>
<td class="memname">void printArray </td>
@@ -273,7 +273,7 @@ template&lt;typename T &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_bb1b521853a9c46347182a9d10420771.html">sorting</a></li><li class="navelem"><a class="el" href="../../d2/d52/heap__sort_8cpp.html">heap_sort.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: sorting/heap_sort.cpp Source File</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -124,11 +124,11 @@ $(function(){initNavTree('d2/d52/heap__sort_8cpp_source.html','../../'); initRes
<div class="headertitle"><div class="title">heap_sort.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="../../d2/d52/heap__sort_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<a href="../../d2/d52/heap__sort_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="preprocessor">#include &lt;algorithm&gt;</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="preprocessor">#include &lt;cassert&gt;</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="preprocessor">#include &lt;iostream&gt;</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> </div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span></div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
<div class="foldopen" id="foldopen00037" data-start="{" data-end="}">
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"><a class="line" href="../../d2/d52/heap__sort_8cpp.html#a9ed3e1510afdf3edd06cf2b68769a767"> 37</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="../../d2/d52/heap__sort_8cpp.html#a9ed3e1510afdf3edd06cf2b68769a767">printArray</a>(T *arr, <span class="keywordtype">int</span> sz) {</div>
@@ -136,7 +136,7 @@ $(function(){initNavTree('d2/d52/heap__sort_8cpp_source.html','../../'); initRes
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> std::cout &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span>}</div>
</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> </div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span></div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span><span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span><span class="keywordtype">void</span> heapify(T *arr, <span class="keywordtype">int</span> n, <span class="keywordtype">int</span> i) {</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keywordtype">int</span> largest = i;</div>
@@ -154,7 +154,7 @@ $(function(){initNavTree('d2/d52/heap__sort_8cpp_source.html','../../'); initRes
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> heapify(arr, n, largest);</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> }</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span>}</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> </div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span></div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span><span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
<div class="foldopen" id="foldopen00084" data-start="{" data-end="}">
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"><a class="line" href="../../d5/d4c/group__sorting.html#ga29d28b140174dbdde7c9f5157758435f"> 84</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="../../d5/d4c/group__sorting.html#ga29d28b140174dbdde7c9f5157758435f">heapSort</a>(T *arr, <span class="keywordtype">int</span> n) {</div>
@@ -166,7 +166,7 @@ $(function(){initNavTree('d2/d52/heap__sort_8cpp_source.html','../../'); initRes
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> }</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span>}</div>
</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> </div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span></div>
<div class="foldopen" id="foldopen00099" data-start="{" data-end="}">
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"><a class="line" href="../../d2/d52/heap__sort_8cpp.html#ae1a3968e7947464bee7714f6d43b7002"> 99</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="../../d2/d52/heap__sort_8cpp.html#ae1a3968e7947464bee7714f6d43b7002">test</a>() {</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> std::cout &lt;&lt; <span class="stringliteral">&quot;Test 1\n&quot;</span>;</div>
@@ -188,7 +188,7 @@ $(function(){initNavTree('d2/d52/heap__sort_8cpp_source.html','../../'); initRes
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> std::cout &lt;&lt; <span class="stringliteral">&quot;Test 2 passed\n&quot;</span>;</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span>}</div>
</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> </div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span></div>
<div class="foldopen" id="foldopen00120" data-start="{" data-end="}">
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"><a class="line" href="../../d2/d52/heap__sort_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4"> 120</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="../../d2/d52/heap__sort_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a>() {</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> <a class="code hl_function" href="../../d2/d52/heap__sort_8cpp.html#ae1a3968e7947464bee7714f6d43b7002">test</a>();</div>
@@ -206,7 +206,7 @@ $(function(){initNavTree('d2/d52/heap__sort_8cpp_source.html','../../'); initRes
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_bb1b521853a9c46347182a9d10420771.html">sorting</a></li><li class="navelem"><a class="el" href="../../d2/d52/heap__sort_8cpp.html">heap_sort.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: operations_on_datastructures/circular_linked_list.cpp Pages: 1 -->
<svg width="189pt" height="94pt"

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: operations_on_datastructures/circular_linked_list.cpp Pages: 1 -->
<svg width="189pt" height="94pt"

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: machine_learning/neural_network.cpp File Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -471,7 +471,7 @@ Functions</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
<span class="mlabels"><span class="mlabel static">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -515,7 +515,7 @@ Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_3343723ae086de42ee4ca9774da3a13f.html">machine_learning</a></li><li class="navelem"><a class="el" href="../../d2/d58/neural__network_8cpp.html">neural_network.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -2,14 +2,14 @@ var neural__network_8cpp =
[
[ "machine_learning::neural_network::layers::DenseLayer", "dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html", "dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer" ],
[ "machine_learning::neural_network::NeuralNetwork", "d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html", "d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network" ],
[ "drelu", "d2/d58/neural__network_8cpp.html#aa69e95a34054d7989bf446f96b2ffaf9", null ],
[ "dsigmoid", "d2/d58/neural__network_8cpp.html#a76eb66212d577f948a457b6e29d87c46", null ],
[ "dtanh", "d2/d58/neural__network_8cpp.html#a2a5e874b9774aa5362dbcf288828b95c", null ],
[ "identity_function", "d2/d58/neural__network_8cpp.html#a32c00da08f2cf641dd336270f6e3c407", null ],
[ "machine_learning::neural_network::activations::drelu", "d2/d58/neural__network_8cpp.html#aa69e95a34054d7989bf446f96b2ffaf9", null ],
[ "machine_learning::neural_network::activations::dsigmoid", "d2/d58/neural__network_8cpp.html#a76eb66212d577f948a457b6e29d87c46", null ],
[ "machine_learning::neural_network::activations::dtanh", "d2/d58/neural__network_8cpp.html#a2a5e874b9774aa5362dbcf288828b95c", null ],
[ "machine_learning::neural_network::util_functions::identity_function", "d2/d58/neural__network_8cpp.html#a32c00da08f2cf641dd336270f6e3c407", null ],
[ "main", "d2/d58/neural__network_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4", null ],
[ "relu", "d2/d58/neural__network_8cpp.html#af8f264600754602b6a9ea19cc690e50e", null ],
[ "sigmoid", "d2/d58/neural__network_8cpp.html#a23aa9d32bcbcd65cfc85f0a41e2afadc", null ],
[ "square", "d2/d58/neural__network_8cpp.html#a45d3e30406712ada3d9713ece3c1b153", null ],
[ "tanh", "d2/d58/neural__network_8cpp.html#a371aa7dd5d5add0143d1756bb0a1b32f", null ],
[ "machine_learning::neural_network::activations::relu", "d2/d58/neural__network_8cpp.html#af8f264600754602b6a9ea19cc690e50e", null ],
[ "machine_learning::neural_network::activations::sigmoid", "d2/d58/neural__network_8cpp.html#a23aa9d32bcbcd65cfc85f0a41e2afadc", null ],
[ "machine_learning::neural_network::util_functions::square", "d2/d58/neural__network_8cpp.html#a45d3e30406712ada3d9713ece3c1b153", null ],
[ "machine_learning::neural_network::activations::tanh", "d2/d58/neural__network_8cpp.html#a371aa7dd5d5add0143d1756bb0a1b32f", null ],
[ "test", "d2/d58/neural__network_8cpp.html#aa8dca7b867074164d5f45b0f3851269d", null ]
];

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: machine_learning/neural_network.cpp Source File</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -124,7 +124,8 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="headertitle"><div class="title">neural_network.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="../../d2/d58/neural__network_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<a href="../../d2/d58/neural__network_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="preprocessor">#include &lt;algorithm&gt;</span></div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span><span class="preprocessor">#include &lt;cassert&gt;</span></div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span><span class="preprocessor">#include &lt;chrono&gt;</span></div>
@@ -137,20 +138,20 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span><span class="preprocessor">#include &lt;vector&gt;</span></div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> </div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span><span class="preprocessor">#include &quot;<a class="code" href="../../d8/d95/vector__ops_8hpp.html">vector_ops.hpp</a>&quot;</span> <span class="comment">// Custom header file for vector operations</span></div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> </div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span></div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span><span class="keyword">namespace </span><a class="code hl_namespace" href="../../d8/d77/namespacemachine__learning.html">machine_learning</a> {</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span><span class="keyword">namespace </span><a class="code hl_namespace" href="../../d0/d2e/namespaceneural__network.html">neural_network</a> {</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span><span class="keyword">namespace </span><a class="code hl_namespace" href="../../d5/d39/namespaceactivations.html">activations</a> {</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"><a class="line" href="../../d2/d58/neural__network_8cpp.html#a23aa9d32bcbcd65cfc85f0a41e2afadc"> 60</a></span><span class="keywordtype">double</span> <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a23aa9d32bcbcd65cfc85f0a41e2afadc">sigmoid</a>(<span class="keyword">const</span> <span class="keywordtype">double</span> &amp;x) { <span class="keywordflow">return</span> 1.0 / (1.0 + std::exp(-x)); }</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> </div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span></div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"><a class="line" href="../../d2/d58/neural__network_8cpp.html#a76eb66212d577f948a457b6e29d87c46"> 67</a></span><span class="keywordtype">double</span> <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a76eb66212d577f948a457b6e29d87c46">dsigmoid</a>(<span class="keyword">const</span> <span class="keywordtype">double</span> &amp;x) { <span class="keywordflow">return</span> x * (1 - x); }</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> </div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span></div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"><a class="line" href="../../d2/d58/neural__network_8cpp.html#af8f264600754602b6a9ea19cc690e50e"> 74</a></span><span class="keywordtype">double</span> <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#af8f264600754602b6a9ea19cc690e50e">relu</a>(<span class="keyword">const</span> <span class="keywordtype">double</span> &amp;x) { <span class="keywordflow">return</span> std::max(0.0, x); }</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> </div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span></div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"><a class="line" href="../../d2/d58/neural__network_8cpp.html#aa69e95a34054d7989bf446f96b2ffaf9"> 81</a></span><span class="keywordtype">double</span> <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#aa69e95a34054d7989bf446f96b2ffaf9">drelu</a>(<span class="keyword">const</span> <span class="keywordtype">double</span> &amp;x) { <span class="keywordflow">return</span> x &gt;= 0.0 ? 1.0 : 0.0; }</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> </div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span></div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"><a class="line" href="../../d2/d58/neural__network_8cpp.html#a371aa7dd5d5add0143d1756bb0a1b32f"> 88</a></span><span class="keywordtype">double</span> <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a371aa7dd5d5add0143d1756bb0a1b32f">tanh</a>(<span class="keyword">const</span> <span class="keywordtype">double</span> &amp;x) { <span class="keywordflow">return</span> 2 / (1 + std::exp(-2 * x)) - 1; }</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> </div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span></div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"><a class="line" href="../../d2/d58/neural__network_8cpp.html#a2a5e874b9774aa5362dbcf288828b95c"> 95</a></span><span class="keywordtype">double</span> <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a2a5e874b9774aa5362dbcf288828b95c">dtanh</a>(<span class="keyword">const</span> <span class="keywordtype">double</span> &amp;x) { <span class="keywordflow">return</span> 1 - x * x; }</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span>} <span class="comment">// namespace activations</span></div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span><span class="keyword">namespace </span><a class="code hl_namespace" href="../../d3/d17/namespaceutil__functions.html">util_functions</a> {</div>
@@ -159,7 +160,7 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span>} <span class="comment">// namespace util_functions</span></div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span><span class="keyword">namespace </span><a class="code hl_namespace" href="../../d5/d2c/namespacelayers.html">layers</a> {</div>
<div class="foldopen" id="foldopen00125" data-start="{" data-end="};">
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"><a class="line" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html"> 125</a></span><span class="keyword">class </span><a class="code hl_class" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html">DenseLayer</a> {</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"><a class="line" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html"> 125</a></span><span class="keyword">class </span><a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a11046825be0b6dbb73fbe834aa49200e">DenseLayer</a> {</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> <span class="comment">// To store activation function and it&#39;s derivative</span></div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> double (*activation_function)(<span class="keyword">const</span> <span class="keywordtype">double</span> &amp;);</div>
@@ -167,27 +168,27 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> <span class="keywordtype">int</span> neurons; <span class="comment">// To store number of neurons (used in summary)</span></div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> std::string activation; <span class="comment">// To store activation name (used in summary)</span></div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> std::vector&lt;std::valarray&lt;double&gt;&gt; kernel; <span class="comment">// To store kernel (aka weights)</span></div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> </div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span></div>
<div class="foldopen" id="foldopen00141" data-start="{" data-end="}">
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"><a class="line" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a11046825be0b6dbb73fbe834aa49200e"> 141</a></span> <a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a11046825be0b6dbb73fbe834aa49200e">DenseLayer</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> &amp;neurons, <span class="keyword">const</span> std::string &amp;activation,</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> <span class="keyword">const</span> std::pair&lt;size_t, size_t&gt; &amp;kernel_shape,</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> &amp;random_kernel) {</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> <span class="comment">// Choosing activation (and it&#39;s derivative)</span></div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> <span class="keywordflow">if</span> (activation == <span class="stringliteral">&quot;sigmoid&quot;</span>) {</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> activation_function = neural_network::activations::sigmoid;</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> dactivation_function = neural_network::activations::sigmoid;</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> activation_function = <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a23aa9d32bcbcd65cfc85f0a41e2afadc">neural_network::activations::sigmoid</a>;</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> dactivation_function = <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a23aa9d32bcbcd65cfc85f0a41e2afadc">neural_network::activations::sigmoid</a>;</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (activation == <span class="stringliteral">&quot;relu&quot;</span>) {</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> activation_function = neural_network::activations::relu;</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> dactivation_function = neural_network::activations::drelu;</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> activation_function = <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#af8f264600754602b6a9ea19cc690e50e">neural_network::activations::relu</a>;</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> dactivation_function = <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#aa69e95a34054d7989bf446f96b2ffaf9">neural_network::activations::drelu</a>;</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (activation == <span class="stringliteral">&quot;tanh&quot;</span>) {</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> activation_function = neural_network::activations::tanh;</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> dactivation_function = neural_network::activations::dtanh;</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> activation_function = <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a371aa7dd5d5add0143d1756bb0a1b32f">neural_network::activations::tanh</a>;</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> dactivation_function = <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a2a5e874b9774aa5362dbcf288828b95c">neural_network::activations::dtanh</a>;</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (activation == <span class="stringliteral">&quot;none&quot;</span>) {</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> <span class="comment">// Set identity function in casse of none is supplied</span></div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> activation_function =</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> neural_network::util_functions::identity_function;</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a32c00da08f2cf641dd336270f6e3c407">neural_network::util_functions::identity_function</a>;</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> dactivation_function =</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> neural_network::util_functions::identity_function;</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a32c00da08f2cf641dd336270f6e3c407">neural_network::util_functions::identity_function</a>;</div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> <span class="comment">// If supplied activation is invalid</span></div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> std::cerr &lt;&lt; <span class="stringliteral">&quot;ERROR (&quot;</span> &lt;&lt; __func__ &lt;&lt; <span class="stringliteral">&quot;) : &quot;</span>;</div>
@@ -206,25 +207,26 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> }</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> }</div>
</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span></div>
<div class="foldopen" id="foldopen00183" data-start="{" data-end="}">
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"><a class="line" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#af136ec31dbd35b1be2eb9a057677c704"> 183</a></span> <a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#af136ec31dbd35b1be2eb9a057677c704">DenseLayer</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> &amp;neurons, <span class="keyword">const</span> std::string &amp;activation,</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> <span class="keyword">const</span> std::vector&lt;std::valarray&lt;double&gt;&gt; &amp;kernel) {</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> <span class="comment">// Choosing activation (and it&#39;s derivative)</span></div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> <span class="keywordflow">if</span> (activation == <span class="stringliteral">&quot;sigmoid&quot;</span>) {</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> activation_function = neural_network::activations::sigmoid;</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> dactivation_function = neural_network::activations::sigmoid;</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> activation_function = <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a23aa9d32bcbcd65cfc85f0a41e2afadc">neural_network::activations::sigmoid</a>;</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> dactivation_function = <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a23aa9d32bcbcd65cfc85f0a41e2afadc">neural_network::activations::sigmoid</a>;</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (activation == <span class="stringliteral">&quot;relu&quot;</span>) {</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> activation_function = neural_network::activations::relu;</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> dactivation_function = neural_network::activations::drelu;</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> activation_function = <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#af8f264600754602b6a9ea19cc690e50e">neural_network::activations::relu</a>;</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> dactivation_function = <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#aa69e95a34054d7989bf446f96b2ffaf9">neural_network::activations::drelu</a>;</div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (activation == <span class="stringliteral">&quot;tanh&quot;</span>) {</div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> activation_function = neural_network::activations::tanh;</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> dactivation_function = neural_network::activations::dtanh;</div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> activation_function = <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a371aa7dd5d5add0143d1756bb0a1b32f">neural_network::activations::tanh</a>;</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> dactivation_function = <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a2a5e874b9774aa5362dbcf288828b95c">neural_network::activations::dtanh</a>;</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (activation == <span class="stringliteral">&quot;none&quot;</span>) {</div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> <span class="comment">// Set identity function in casse of none is supplied</span></div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> activation_function =</div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> neural_network::util_functions::identity_function;</div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a32c00da08f2cf641dd336270f6e3c407">neural_network::util_functions::identity_function</a>;</div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> dactivation_function =</div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> neural_network::util_functions::identity_function;</div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a32c00da08f2cf641dd336270f6e3c407">neural_network::util_functions::identity_function</a>;</div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> <span class="comment">// If supplied activation is invalid</span></div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> std::cerr &lt;&lt; <span class="stringliteral">&quot;ERROR (&quot;</span> &lt;&lt; __func__ &lt;&lt; <span class="stringliteral">&quot;) : &quot;</span>;</div>
@@ -238,21 +240,21 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> this-&gt;kernel = kernel; <span class="comment">// Setting supplied kernel values</span></div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> }</div>
</div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span> </div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"><a class="line" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a2871146feaaa453558239df67b21e0d2"> 219</a></span> <a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a2871146feaaa453558239df67b21e0d2">DenseLayer</a>(<span class="keyword">const</span> <a class="code hl_class" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html">DenseLayer</a> &amp;layer) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"> 220</span> </div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span></div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"><a class="line" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a2871146feaaa453558239df67b21e0d2"> 219</a></span> <a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a2871146feaaa453558239df67b21e0d2">DenseLayer</a>(<span class="keyword">const</span> <a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a11046825be0b6dbb73fbe834aa49200e">DenseLayer</a> &amp;layer) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"> 220</span></div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"><a class="line" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#ac9cda9453c4a0caf5bae7f9213b019a0"> 224</a></span> <a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#ac9cda9453c4a0caf5bae7f9213b019a0">~DenseLayer</a>() = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> </div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"><a class="line" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#ae077132526d2863e46aa77cb0f7d6aa2"> 229</a></span> <a class="code hl_class" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html">DenseLayer</a> &amp;<a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#ae077132526d2863e46aa77cb0f7d6aa2">operator=</a>(<span class="keyword">const</span> <a class="code hl_class" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html">DenseLayer</a> &amp;layer) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span> </div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"><a class="line" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a6c859e3737aa88b29854df0347b29f4e"> 234</a></span> <a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a6c859e3737aa88b29854df0347b29f4e">DenseLayer</a>(<a class="code hl_class" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html">DenseLayer</a> &amp;&amp;) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span> </div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"><a class="line" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a19aaccad279b22dbbb6c55e5697b4114"> 239</a></span> <a class="code hl_class" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html">DenseLayer</a> &amp;<a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a19aaccad279b22dbbb6c55e5697b4114">operator=</a>(<a class="code hl_class" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html">DenseLayer</a> &amp;&amp;) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span></div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"><a class="line" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#ae077132526d2863e46aa77cb0f7d6aa2"> 229</a></span> <a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a11046825be0b6dbb73fbe834aa49200e">DenseLayer</a> &amp;<a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#ae077132526d2863e46aa77cb0f7d6aa2">operator=</a>(<span class="keyword">const</span> <a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a11046825be0b6dbb73fbe834aa49200e">DenseLayer</a> &amp;layer) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span></div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"><a class="line" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a6c859e3737aa88b29854df0347b29f4e"> 234</a></span> <a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a6c859e3737aa88b29854df0347b29f4e">DenseLayer</a>(<a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a11046825be0b6dbb73fbe834aa49200e">DenseLayer</a> &amp;&amp;) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span></div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"><a class="line" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a19aaccad279b22dbbb6c55e5697b4114"> 239</a></span> <a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a11046825be0b6dbb73fbe834aa49200e">DenseLayer</a> &amp;<a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a19aaccad279b22dbbb6c55e5697b4114">operator=</a>(<a class="code hl_function" href="../../dc/d93/classmachine__learning_1_1neural__network_1_1layers_1_1_dense_layer.html#a11046825be0b6dbb73fbe834aa49200e">DenseLayer</a> &amp;&amp;) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span>};</div>
</div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span>} <span class="comment">// namespace layers</span></div>
<div class="foldopen" id="foldopen00247" data-start="{" data-end="};">
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html"> 247</a></span><span class="keyword">class </span><a class="code hl_class" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html">NeuralNetwork</a> {</div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html"> 247</a></span><span class="keyword">class </span><a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a4c4c6f63ab965317f9471518ee931b89">NeuralNetwork</a> {</div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span> <span class="keyword">private</span>:</div>
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span> std::vector&lt;neural_network::layers::DenseLayer&gt; <a class="code hl_namespace" href="../../d5/d2c/namespacelayers.html">layers</a>; <span class="comment">// To store layers</span></div>
<div class="foldopen" id="foldopen00256" data-start="{" data-end="}">
@@ -283,6 +285,7 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span> std::cout &lt;&lt; <span class="stringliteral">&quot;INFO: Network constructed successfully&quot;</span> &lt;&lt; std::endl;</div>
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno"> 281</span> }</div>
</div>
<div class="line"><a id="l00282" name="l00282"></a><span class="lineno"> 282</span></div>
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno"> 288</span> std::vector&lt;std::vector&lt;std::valarray&lt;double&gt;&gt;&gt;</div>
<div class="foldopen" id="foldopen00289" data-start="{" data-end="}">
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a361a45f3c3d8347d79103bf182d0570b"> 289</a></span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a361a45f3c3d8347d79103bf182d0570b">__detailed_single_prediction</a>(<span class="keyword">const</span> std::vector&lt;std::valarray&lt;double&gt;&gt; &amp;X) {</div>
@@ -300,7 +303,7 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"> 300</span> </div>
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno"> 301</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#ae7cf126a3a8f9d20c81b21584d061a08"> 306</a></span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#ae7cf126a3a8f9d20c81b21584d061a08">NeuralNetwork</a>() = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00307" name="l00307"></a><span class="lineno"> 307</span> </div>
<div class="line"><a id="l00307" name="l00307"></a><span class="lineno"> 307</span></div>
<div class="foldopen" id="foldopen00313" data-start="{" data-end="}">
<div class="line"><a id="l00313" name="l00313"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a62151b0398a2536be60d950e10ffe9a8"> 313</a></span> <span class="keyword">explicit</span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a62151b0398a2536be60d950e10ffe9a8">NeuralNetwork</a>(</div>
<div class="line"><a id="l00314" name="l00314"></a><span class="lineno"> 314</span> <span class="keyword">const</span> std::vector&lt;std::pair&lt;int, std::string&gt;&gt; &amp;config) {</div>
@@ -334,17 +337,17 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00342" name="l00342"></a><span class="lineno"> 342</span> std::cout &lt;&lt; <span class="stringliteral">&quot;INFO: Network constructed successfully&quot;</span> &lt;&lt; std::endl;</div>
<div class="line"><a id="l00343" name="l00343"></a><span class="lineno"> 343</span> }</div>
</div>
<div class="line"><a id="l00344" name="l00344"></a><span class="lineno"> 344</span> </div>
<div class="line"><a id="l00350" name="l00350"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a176b955c90ae57d7dbc3c63f27c84c75"> 350</a></span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a176b955c90ae57d7dbc3c63f27c84c75">NeuralNetwork</a>(<span class="keyword">const</span> <a class="code hl_class" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html">NeuralNetwork</a> &amp;model) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00351" name="l00351"></a><span class="lineno"> 351</span> </div>
<div class="line"><a id="l00344" name="l00344"></a><span class="lineno"> 344</span></div>
<div class="line"><a id="l00350" name="l00350"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a176b955c90ae57d7dbc3c63f27c84c75"> 350</a></span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a176b955c90ae57d7dbc3c63f27c84c75">NeuralNetwork</a>(<span class="keyword">const</span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a4c4c6f63ab965317f9471518ee931b89">NeuralNetwork</a> &amp;model) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00351" name="l00351"></a><span class="lineno"> 351</span></div>
<div class="line"><a id="l00355" name="l00355"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a8973f687738ddd76f93b5562feae4027"> 355</a></span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a8973f687738ddd76f93b5562feae4027">~NeuralNetwork</a>() = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00356" name="l00356"></a><span class="lineno"> 356</span> </div>
<div class="line"><a id="l00360" name="l00360"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a58a9614e4c6d4ca672d3358e99a3404f"> 360</a></span> <a class="code hl_class" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html">NeuralNetwork</a> &amp;<a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a58a9614e4c6d4ca672d3358e99a3404f">operator=</a>(<span class="keyword">const</span> <a class="code hl_class" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html">NeuralNetwork</a> &amp;model) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00361" name="l00361"></a><span class="lineno"> 361</span> </div>
<div class="line"><a id="l00365" name="l00365"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a173bb71780af6953ec2e307a4c74b025"> 365</a></span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a173bb71780af6953ec2e307a4c74b025">NeuralNetwork</a>(<a class="code hl_class" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html">NeuralNetwork</a> &amp;&amp;) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00366" name="l00366"></a><span class="lineno"> 366</span> </div>
<div class="line"><a id="l00370" name="l00370"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a2c49bfebf9b859d5ceb26035d3003601"> 370</a></span> <a class="code hl_class" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html">NeuralNetwork</a> &amp;<a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a2c49bfebf9b859d5ceb26035d3003601">operator=</a>(<a class="code hl_class" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html">NeuralNetwork</a> &amp;&amp;) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00371" name="l00371"></a><span class="lineno"> 371</span> </div>
<div class="line"><a id="l00356" name="l00356"></a><span class="lineno"> 356</span></div>
<div class="line"><a id="l00360" name="l00360"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a58a9614e4c6d4ca672d3358e99a3404f"> 360</a></span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a4c4c6f63ab965317f9471518ee931b89">NeuralNetwork</a> &amp;<a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a58a9614e4c6d4ca672d3358e99a3404f">operator=</a>(<span class="keyword">const</span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a4c4c6f63ab965317f9471518ee931b89">NeuralNetwork</a> &amp;model) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00361" name="l00361"></a><span class="lineno"> 361</span></div>
<div class="line"><a id="l00365" name="l00365"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a173bb71780af6953ec2e307a4c74b025"> 365</a></span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a173bb71780af6953ec2e307a4c74b025">NeuralNetwork</a>(<a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a4c4c6f63ab965317f9471518ee931b89">NeuralNetwork</a> &amp;&amp;) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00366" name="l00366"></a><span class="lineno"> 366</span></div>
<div class="line"><a id="l00370" name="l00370"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a2c49bfebf9b859d5ceb26035d3003601"> 370</a></span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a4c4c6f63ab965317f9471518ee931b89">NeuralNetwork</a> &amp;<a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a2c49bfebf9b859d5ceb26035d3003601">operator=</a>(<a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a4c4c6f63ab965317f9471518ee931b89">NeuralNetwork</a> &amp;&amp;) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00371" name="l00371"></a><span class="lineno"> 371</span></div>
<div class="line"><a id="l00380" name="l00380"></a><span class="lineno"> 380</span> std::pair&lt;std::vector&lt;std::vector&lt;std::valarray&lt;double&gt;&gt;&gt;,</div>
<div class="line"><a id="l00381" name="l00381"></a><span class="lineno"> 381</span> std::vector&lt;std::vector&lt;std::valarray&lt;double&gt;&gt;&gt;&gt;</div>
<div class="foldopen" id="foldopen00382" data-start="{" data-end="}">
@@ -412,7 +415,7 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00443" name="l00443"></a><span class="lineno"> 443</span> <span class="keywordflow">return</span> make_pair(X, Y); <span class="comment">// Return pair of X and Y</span></div>
<div class="line"><a id="l00444" name="l00444"></a><span class="lineno"> 444</span> }</div>
</div>
<div class="line"><a id="l00445" name="l00445"></a><span class="lineno"> 445</span> </div>
<div class="line"><a id="l00445" name="l00445"></a><span class="lineno"> 445</span></div>
<div class="foldopen" id="foldopen00451" data-start="{" data-end="}">
<div class="line"><a id="l00451" name="l00451"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a3b9eac1824d365dce715fb17c33cb96f"> 451</a></span> std::vector&lt;std::valarray&lt;double&gt;&gt; <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a3b9eac1824d365dce715fb17c33cb96f">single_predict</a>(</div>
<div class="line"><a id="l00452" name="l00452"></a><span class="lineno"> 452</span> <span class="keyword">const</span> std::vector&lt;std::valarray&lt;double&gt;&gt; &amp;X) {</div>
@@ -422,7 +425,7 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00456" name="l00456"></a><span class="lineno"> 456</span> <span class="keywordflow">return</span> <a class="code hl_namespace" href="../../d5/d39/namespaceactivations.html">activations</a>.back();</div>
<div class="line"><a id="l00457" name="l00457"></a><span class="lineno"> 457</span> }</div>
</div>
<div class="line"><a id="l00458" name="l00458"></a><span class="lineno"> 458</span> </div>
<div class="line"><a id="l00458" name="l00458"></a><span class="lineno"> 458</span></div>
<div class="foldopen" id="foldopen00464" data-start="{" data-end="}">
<div class="line"><a id="l00464" name="l00464"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a88bf9023ab3d4cdb61cf707c7cdfc86b"> 464</a></span> std::vector&lt;std::vector&lt;std::valarray&lt;double&gt;&gt;&gt; <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a88bf9023ab3d4cdb61cf707c7cdfc86b">batch_predict</a>(</div>
<div class="line"><a id="l00465" name="l00465"></a><span class="lineno"> 465</span> <span class="keyword">const</span> std::vector&lt;std::vector&lt;std::valarray&lt;double&gt;&gt;&gt; &amp;X) {</div>
@@ -436,7 +439,7 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00473" name="l00473"></a><span class="lineno"> 473</span> <span class="keywordflow">return</span> predicted_batch; <span class="comment">// Return predicted values</span></div>
<div class="line"><a id="l00474" name="l00474"></a><span class="lineno"> 474</span> }</div>
</div>
<div class="line"><a id="l00475" name="l00475"></a><span class="lineno"> 475</span> </div>
<div class="line"><a id="l00475" name="l00475"></a><span class="lineno"> 475</span></div>
<div class="foldopen" id="foldopen00485" data-start="{" data-end="}">
<div class="line"><a id="l00485" name="l00485"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a2be1b52bb9f57486f9a436f35c9089c0"> 485</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a2be1b52bb9f57486f9a436f35c9089c0">fit</a>(<span class="keyword">const</span> std::vector&lt;std::vector&lt;std::valarray&lt;double&gt;&gt;&gt; &amp;X_,</div>
<div class="line"><a id="l00486" name="l00486"></a><span class="lineno"> 486</span> <span class="keyword">const</span> std::vector&lt;std::vector&lt;std::valarray&lt;double&gt;&gt;&gt; &amp;Y_,</div>
@@ -480,7 +483,7 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00524" name="l00524"></a><span class="lineno"> 524</span> cur_error = predicted - Y[i]; <span class="comment">// Absoulute error</span></div>
<div class="line"><a id="l00525" name="l00525"></a><span class="lineno"> 525</span> <span class="comment">// Calculating loss with MSE</span></div>
<div class="line"><a id="l00526" name="l00526"></a><span class="lineno"> 526</span> loss += <a class="code hl_function" href="../../d8/d77/namespacemachine__learning.html#a6f1c98c016ad34ff3d9f39372161bd35">sum</a>(<a class="code hl_function" href="../../d8/d77/namespacemachine__learning.html#ad0bdc88e5f1be47c46c0f0c8ebf754bb">apply_function</a>(</div>
<div class="line"><a id="l00527" name="l00527"></a><span class="lineno"> 527</span> cur_error, neural_network::util_functions::square));</div>
<div class="line"><a id="l00527" name="l00527"></a><span class="lineno"> 527</span> cur_error, <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a45d3e30406712ada3d9713ece3c1b153">neural_network::util_functions::square</a>));</div>
<div class="line"><a id="l00528" name="l00528"></a><span class="lineno"> 528</span> <span class="comment">// If prediction is correct</span></div>
<div class="line"><a id="l00529" name="l00529"></a><span class="lineno"> 529</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="../../d8/d77/namespacemachine__learning.html#a50480fccfb39de20ca47f1bf51ecb6ec">argmax</a>(predicted) == <a class="code hl_function" href="../../d8/d77/namespacemachine__learning.html#a50480fccfb39de20ca47f1bf51ecb6ec">argmax</a>(Y[i])) {</div>
<div class="line"><a id="l00530" name="l00530"></a><span class="lineno"> 530</span> acc += 1;</div>
@@ -529,7 +532,7 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00573" name="l00573"></a><span class="lineno"> 573</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00574" name="l00574"></a><span class="lineno"> 574</span> }</div>
</div>
<div class="line"><a id="l00575" name="l00575"></a><span class="lineno"> 575</span> </div>
<div class="line"><a id="l00575" name="l00575"></a><span class="lineno"> 575</span></div>
<div class="foldopen" id="foldopen00587" data-start="{" data-end="}">
<div class="line"><a id="l00587" name="l00587"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a5172a6791b9bd24f4232bab8d6b81fff"> 587</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a5172a6791b9bd24f4232bab8d6b81fff">fit_from_csv</a>(<span class="keyword">const</span> std::string &amp;file_name, <span class="keyword">const</span> <span class="keywordtype">bool</span> &amp;last_label,</div>
<div class="line"><a id="l00588" name="l00588"></a><span class="lineno"> 588</span> <span class="keyword">const</span> <span class="keywordtype">int</span> &amp;epochs, <span class="keyword">const</span> <span class="keywordtype">double</span> &amp;learning_rate,</div>
@@ -545,7 +548,7 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00598" name="l00598"></a><span class="lineno"> 598</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00599" name="l00599"></a><span class="lineno"> 599</span> }</div>
</div>
<div class="line"><a id="l00600" name="l00600"></a><span class="lineno"> 600</span> </div>
<div class="line"><a id="l00600" name="l00600"></a><span class="lineno"> 600</span></div>
<div class="foldopen" id="foldopen00606" data-start="{" data-end="}">
<div class="line"><a id="l00606" name="l00606"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#aec648ea4f40bd71123b5f907a681dd8e"> 606</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#aec648ea4f40bd71123b5f907a681dd8e">evaluate</a>(<span class="keyword">const</span> std::vector&lt;std::vector&lt;std::valarray&lt;double&gt;&gt;&gt; &amp;X,</div>
<div class="line"><a id="l00607" name="l00607"></a><span class="lineno"> 607</span> <span class="keyword">const</span> std::vector&lt;std::vector&lt;std::valarray&lt;double&gt;&gt;&gt; &amp;Y) {</div>
@@ -561,7 +564,7 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00617" name="l00617"></a><span class="lineno"> 617</span> }</div>
<div class="line"><a id="l00618" name="l00618"></a><span class="lineno"> 618</span> <span class="comment">// Calculating loss - Mean Squared Error</span></div>
<div class="line"><a id="l00619" name="l00619"></a><span class="lineno"> 619</span> loss += <a class="code hl_function" href="../../d8/d77/namespacemachine__learning.html#a6f1c98c016ad34ff3d9f39372161bd35">sum</a>(<a class="code hl_function" href="../../d8/d77/namespacemachine__learning.html#ad0bdc88e5f1be47c46c0f0c8ebf754bb">apply_function</a>((Y[i] - pred),</div>
<div class="line"><a id="l00620" name="l00620"></a><span class="lineno"> 620</span> neural_network::util_functions::square) *</div>
<div class="line"><a id="l00620" name="l00620"></a><span class="lineno"> 620</span> <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#a45d3e30406712ada3d9713ece3c1b153">neural_network::util_functions::square</a>) *</div>
<div class="line"><a id="l00621" name="l00621"></a><span class="lineno"> 621</span> 0.5);</div>
<div class="line"><a id="l00622" name="l00622"></a><span class="lineno"> 622</span> }</div>
<div class="line"><a id="l00623" name="l00623"></a><span class="lineno"> 623</span> acc /= X.size(); <span class="comment">// Averaging accuracy</span></div>
@@ -572,7 +575,7 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00628" name="l00628"></a><span class="lineno"> 628</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00629" name="l00629"></a><span class="lineno"> 629</span> }</div>
</div>
<div class="line"><a id="l00630" name="l00630"></a><span class="lineno"> 630</span> </div>
<div class="line"><a id="l00630" name="l00630"></a><span class="lineno"> 630</span></div>
<div class="foldopen" id="foldopen00638" data-start="{" data-end="}">
<div class="line"><a id="l00638" name="l00638"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a36494e26ff36d6e15c1022bb9a1ee848"> 638</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a36494e26ff36d6e15c1022bb9a1ee848">evaluate_from_csv</a>(<span class="keyword">const</span> std::string &amp;file_name, <span class="keyword">const</span> <span class="keywordtype">bool</span> &amp;last_label,</div>
<div class="line"><a id="l00639" name="l00639"></a><span class="lineno"> 639</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> &amp;normalize, <span class="keyword">const</span> <span class="keywordtype">int</span> &amp;slip_lines = 1) {</div>
@@ -584,7 +587,7 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00645" name="l00645"></a><span class="lineno"> 645</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00646" name="l00646"></a><span class="lineno"> 646</span> }</div>
</div>
<div class="line"><a id="l00647" name="l00647"></a><span class="lineno"> 647</span> </div>
<div class="line"><a id="l00647" name="l00647"></a><span class="lineno"> 647</span></div>
<div class="foldopen" id="foldopen00652" data-start="{" data-end="}">
<div class="line"><a id="l00652" name="l00652"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a4f14e473bb0722c6490b9dc8da5982aa"> 652</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a4f14e473bb0722c6490b9dc8da5982aa">save_model</a>(<span class="keyword">const</span> std::string &amp;_file_name) {</div>
<div class="line"><a id="l00653" name="l00653"></a><span class="lineno"> 653</span> std::string file_name = _file_name;</div>
@@ -622,9 +625,9 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00724" name="l00724"></a><span class="lineno"> 724</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00725" name="l00725"></a><span class="lineno"> 725</span> }</div>
</div>
<div class="line"><a id="l00726" name="l00726"></a><span class="lineno"> 726</span> </div>
<div class="line"><a id="l00726" name="l00726"></a><span class="lineno"> 726</span></div>
<div class="foldopen" id="foldopen00732" data-start="{" data-end="}">
<div class="line"><a id="l00732" name="l00732"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a58ed20abf6ce3744535bd8b5bb9e741b"> 732</a></span> <a class="code hl_class" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html">NeuralNetwork</a> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a58ed20abf6ce3744535bd8b5bb9e741b">load_model</a>(<span class="keyword">const</span> std::string &amp;file_name) {</div>
<div class="line"><a id="l00732" name="l00732"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a58ed20abf6ce3744535bd8b5bb9e741b"> 732</a></span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a4c4c6f63ab965317f9471518ee931b89">NeuralNetwork</a> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a58ed20abf6ce3744535bd8b5bb9e741b">load_model</a>(<span class="keyword">const</span> std::string &amp;file_name) {</div>
<div class="line"><a id="l00733" name="l00733"></a><span class="lineno"> 733</span> std::ifstream in_file; <span class="comment">// Ifstream to read file</span></div>
<div class="line"><a id="l00734" name="l00734"></a><span class="lineno"> 734</span> in_file.open(file_name.c_str()); <span class="comment">// Openinig file</span></div>
<div class="line"><a id="l00735" name="l00735"></a><span class="lineno"> 735</span> <span class="comment">// If there is any problem in opening file</span></div>
@@ -662,7 +665,7 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00767" name="l00767"></a><span class="lineno"> 767</span> config, kernels); <span class="comment">// Return instance of NeuralNetwork class</span></div>
<div class="line"><a id="l00768" name="l00768"></a><span class="lineno"> 768</span> }</div>
</div>
<div class="line"><a id="l00769" name="l00769"></a><span class="lineno"> 769</span> </div>
<div class="line"><a id="l00769" name="l00769"></a><span class="lineno"> 769</span></div>
<div class="foldopen" id="foldopen00773" data-start="{" data-end="}">
<div class="line"><a id="l00773" name="l00773"></a><span class="lineno"><a class="line" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a61d30113d13304c664057118b92a5931"> 773</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="../../d4/df4/classmachine__learning_1_1neural__network_1_1_neural_network.html#a61d30113d13304c664057118b92a5931">summary</a>() {</div>
<div class="line"><a id="l00774" name="l00774"></a><span class="lineno"> 774</span> <span class="comment">// Printing Summary</span></div>
@@ -693,7 +696,7 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
</div>
<div class="line"><a id="l00798" name="l00798"></a><span class="lineno"> 798</span>} <span class="comment">// namespace neural_network</span></div>
<div class="line"><a id="l00799" name="l00799"></a><span class="lineno"> 799</span>} <span class="comment">// namespace machine_learning</span></div>
<div class="line"><a id="l00800" name="l00800"></a><span class="lineno"> 800</span> </div>
<div class="line"><a id="l00800" name="l00800"></a><span class="lineno"> 800</span></div>
<div class="foldopen" id="foldopen00805" data-start="{" data-end="}">
<div class="line"><a id="l00805" name="l00805"></a><span class="lineno"><a class="line" href="../../d2/d58/neural__network_8cpp.html#aa8dca7b867074164d5f45b0f3851269d"> 805</a></span><span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>() {</div>
<div class="line"><a id="l00806" name="l00806"></a><span class="lineno"> 806</span> <span class="comment">// Creating network with 3 layers for &quot;iris.csv&quot;</span></div>
@@ -719,7 +722,7 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div class="line"><a id="l00826" name="l00826"></a><span class="lineno"> 826</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00827" name="l00827"></a><span class="lineno"> 827</span>}</div>
</div>
<div class="line"><a id="l00828" name="l00828"></a><span class="lineno"> 828</span> </div>
<div class="line"><a id="l00828" name="l00828"></a><span class="lineno"> 828</span></div>
<div class="foldopen" id="foldopen00833" data-start="{" data-end="}">
<div class="line"><a id="l00833" name="l00833"></a><span class="lineno"><a class="line" href="../../d2/d58/neural__network_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4"> 833</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="../../d2/d58/neural__network_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a>() {</div>
<div class="line"><a id="l00834" name="l00834"></a><span class="lineno"> 834</span> <span class="comment">// Testing</span></div>
@@ -793,7 +796,7 @@ $(function(){initNavTree('d2/d58/neural__network_8cpp_source.html','../../'); in
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_3343723ae086de42ee4ca9774da3a13f.html">machine_learning</a></li><li class="navelem"><a class="el" href="../../d2/d58/neural__network_8cpp.html">neural_network.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: backtracking/subset_sum.cpp File Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -264,7 +264,7 @@ Functions</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
<span class="mlabels"><span class="mlabel static">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -277,7 +277,7 @@ Functions</h2></td></tr>
<div class="line"><span class="lineno"> 59</span> <span class="comment">// 1st test</span></div>
<div class="line"><span class="lineno"> 60</span> std::cout &lt;&lt; <span class="stringliteral">&quot;1st test &quot;</span>;</div>
<div class="line"><span class="lineno"> 61</span> std::vector&lt;int32_t&gt; array1 = {-7, -3, -2, 5, 8}; <span class="comment">// input array</span></div>
<div class="line"><span class="lineno"> 62</span> assert(backtracking::subset_sum::number_of_subsets(0, array1) ==</div>
<div class="line"><span class="lineno"> 62</span> assert(<a class="code hl_function" href="#a7cb50d36a59427a33f64a266dac83d99">backtracking::subset_sum::number_of_subsets</a>(0, array1) ==</div>
<div class="line"><span class="lineno"> 63</span> 2); <span class="comment">// first argument in subset_sum function is the required sum and</span></div>
<div class="line"><span class="lineno"> 64</span> <span class="comment">// second is the input array</span></div>
<div class="line"><span class="lineno"> 65</span> std::cout &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; std::endl;</div>
@@ -285,7 +285,7 @@ Functions</h2></td></tr>
<div class="line"><span class="lineno"> 67</span> <span class="comment">// 2nd test</span></div>
<div class="line"><span class="lineno"> 68</span> std::cout &lt;&lt; <span class="stringliteral">&quot;2nd test &quot;</span>;</div>
<div class="line"><span class="lineno"> 69</span> std::vector&lt;int32_t&gt; array2 = {1, 2, 3, 3};</div>
<div class="line"><span class="lineno"> 70</span> assert(backtracking::subset_sum::number_of_subsets(6, array2) ==</div>
<div class="line"><span class="lineno"> 70</span> assert(<a class="code hl_function" href="#a7cb50d36a59427a33f64a266dac83d99">backtracking::subset_sum::number_of_subsets</a>(6, array2) ==</div>
<div class="line"><span class="lineno"> 71</span> 3); <span class="comment">// here we are expecting 3 subsets which sum up to 6 i.e.</span></div>
<div class="line"><span class="lineno"> 72</span> <span class="comment">// {(1,2,3),(1,2,3),(3,3)}</span></div>
<div class="line"><span class="lineno"> 73</span> std::cout &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; std::endl;</div>
@@ -293,7 +293,7 @@ Functions</h2></td></tr>
<div class="line"><span class="lineno"> 75</span> <span class="comment">// 3rd test</span></div>
<div class="line"><span class="lineno"> 76</span> std::cout &lt;&lt; <span class="stringliteral">&quot;3rd test &quot;</span>;</div>
<div class="line"><span class="lineno"> 77</span> std::vector&lt;int32_t&gt; array3 = {1, 1, 1, 1};</div>
<div class="line"><span class="lineno"> 78</span> assert(backtracking::subset_sum::number_of_subsets(1, array3) ==</div>
<div class="line"><span class="lineno"> 78</span> assert(<a class="code hl_function" href="#a7cb50d36a59427a33f64a266dac83d99">backtracking::subset_sum::number_of_subsets</a>(1, array3) ==</div>
<div class="line"><span class="lineno"> 79</span> 4); <span class="comment">// here we are expecting 4 subsets which sum up to 1 i.e.</span></div>
<div class="line"><span class="lineno"> 80</span> <span class="comment">// {(1),(1),(1),(1)}</span></div>
<div class="line"><span class="lineno"> 81</span> std::cout &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; std::endl;</div>
@@ -301,7 +301,7 @@ Functions</h2></td></tr>
<div class="line"><span class="lineno"> 83</span> <span class="comment">// 4th test</span></div>
<div class="line"><span class="lineno"> 84</span> std::cout &lt;&lt; <span class="stringliteral">&quot;4th test &quot;</span>;</div>
<div class="line"><span class="lineno"> 85</span> std::vector&lt;int32_t&gt; array4 = {3, 3, 3, 3};</div>
<div class="line"><span class="lineno"> 86</span> assert(backtracking::subset_sum::number_of_subsets(6, array4) ==</div>
<div class="line"><span class="lineno"> 86</span> assert(<a class="code hl_function" href="#a7cb50d36a59427a33f64a266dac83d99">backtracking::subset_sum::number_of_subsets</a>(6, array4) ==</div>
<div class="line"><span class="lineno"> 87</span> 6); <span class="comment">// here we are expecting 6 subsets which sum up to 6 i.e.</span></div>
<div class="line"><span class="lineno"> 88</span> <span class="comment">// {(3,3),(3,3),(3,3),(3,3),(3,3),(3,3)}</span></div>
<div class="line"><span class="lineno"> 89</span> std::cout &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; std::endl;</div>
@@ -309,11 +309,12 @@ Functions</h2></td></tr>
<div class="line"><span class="lineno"> 91</span> <span class="comment">// Test 5</span></div>
<div class="line"><span class="lineno"> 92</span> std::cout &lt;&lt; <span class="stringliteral">&quot;5th test &quot;</span>;</div>
<div class="line"><span class="lineno"> 93</span> std::vector&lt;int32_t&gt; array5 = {};</div>
<div class="line"><span class="lineno"> 94</span> assert(backtracking::subset_sum::number_of_subsets(6, array5) ==</div>
<div class="line"><span class="lineno"> 94</span> assert(<a class="code hl_function" href="#a7cb50d36a59427a33f64a266dac83d99">backtracking::subset_sum::number_of_subsets</a>(6, array5) ==</div>
<div class="line"><span class="lineno"> 95</span> 0); <span class="comment">// here we are expecting 0 subsets which sum up to 6 i.e. we</span></div>
<div class="line"><span class="lineno"> 96</span> <span class="comment">// cannot select anything from an empty array</span></div>
<div class="line"><span class="lineno"> 97</span> std::cout &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; std::endl;</div>
<div class="line"><span class="lineno"> 98</span>}</div>
<div class="ttc" id="asubset__sum_8cpp_html_a7cb50d36a59427a33f64a266dac83d99"><div class="ttname"><a href="#a7cb50d36a59427a33f64a266dac83d99">backtracking::subset_sum::number_of_subsets</a></div><div class="ttdeci">uint64_t number_of_subsets(int32_t sum, const std::vector&lt; int32_t &gt; &amp;in_arr)</div><div class="ttdoc">The main function implements count of subsets.</div><div class="ttdef"><b>Definition</b> <a href="../../d2/d5a/subset__sum_8cpp_source.html#l00034">subset_sum.cpp:34</a></div></div>
</div><!-- fragment -->
</div>
</div>
@@ -323,7 +324,7 @@ Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_c11585dfcef32a26e29098facab6c144.html">backtracking</a></li><li class="navelem"><a class="el" href="../../d2/d5a/subset__sum_8cpp.html">subset_sum.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,6 +1,6 @@
var subset__sum_8cpp =
[
[ "main", "d2/d5a/subset__sum_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4", null ],
[ "number_of_subsets", "d2/d5a/subset__sum_8cpp.html#a7cb50d36a59427a33f64a266dac83d99", null ],
[ "backtracking::subset_sum::number_of_subsets", "d2/d5a/subset__sum_8cpp.html#a7cb50d36a59427a33f64a266dac83d99", null ],
[ "test", "d2/d5a/subset__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d", null ]
];

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: backtracking/subset_sum.cpp Source File</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -124,12 +124,13 @@ $(function(){initNavTree('d2/d5a/subset__sum_8cpp_source.html','../../'); initRe
<div class="headertitle"><div class="title">subset_sum.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="../../d2/d5a/subset__sum_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<a href="../../d2/d5a/subset__sum_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include &lt;cassert&gt;</span> </div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#include &lt;cstdint&gt;</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#include &lt;iostream&gt;</span> </div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#include &lt;vector&gt;</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="keyword">namespace </span><a class="code hl_namespace" href="../../db/dc0/namespacebacktracking.html">backtracking</a> {</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="keyword">namespace </span><a class="code hl_namespace" href="../../dc/d3a/namespacesubset__sum.html">subset_sum</a> {</div>
<div class="foldopen" id="foldopen00034" data-start="{" data-end="}">
@@ -153,13 +154,13 @@ $(function(){initNavTree('d2/d5a/subset__sum_8cpp_source.html','../../'); initRe
</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span>} <span class="comment">// namespace subset_sum</span></div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span>} <span class="comment">// namespace backtracking</span></div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> </div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span></div>
<div class="foldopen" id="foldopen00058" data-start="{" data-end="}">
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"><a class="line" href="../../d2/d5a/subset__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d"> 58</a></span><span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code hl_function" href="../../d2/d5a/subset__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>() {</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="comment">// 1st test</span></div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> std::cout &lt;&lt; <span class="stringliteral">&quot;1st test &quot;</span>;</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> std::vector&lt;int32_t&gt; array1 = {-7, -3, -2, 5, 8}; <span class="comment">// input array</span></div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> assert(backtracking::subset_sum::number_of_subsets(0, array1) ==</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> assert(<a class="code hl_function" href="../../d2/d5a/subset__sum_8cpp.html#a7cb50d36a59427a33f64a266dac83d99">backtracking::subset_sum::number_of_subsets</a>(0, array1) ==</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> 2); <span class="comment">// first argument in subset_sum function is the required sum and</span></div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <span class="comment">// second is the input array</span></div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> std::cout &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; std::endl;</div>
@@ -167,7 +168,7 @@ $(function(){initNavTree('d2/d5a/subset__sum_8cpp_source.html','../../'); initRe
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="comment">// 2nd test</span></div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> std::cout &lt;&lt; <span class="stringliteral">&quot;2nd test &quot;</span>;</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> std::vector&lt;int32_t&gt; array2 = {1, 2, 3, 3};</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> assert(backtracking::subset_sum::number_of_subsets(6, array2) ==</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> assert(<a class="code hl_function" href="../../d2/d5a/subset__sum_8cpp.html#a7cb50d36a59427a33f64a266dac83d99">backtracking::subset_sum::number_of_subsets</a>(6, array2) ==</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> 3); <span class="comment">// here we are expecting 3 subsets which sum up to 6 i.e.</span></div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <span class="comment">// {(1,2,3),(1,2,3),(3,3)}</span></div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> std::cout &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; std::endl;</div>
@@ -175,7 +176,7 @@ $(function(){initNavTree('d2/d5a/subset__sum_8cpp_source.html','../../'); initRe
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <span class="comment">// 3rd test</span></div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> std::cout &lt;&lt; <span class="stringliteral">&quot;3rd test &quot;</span>;</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> std::vector&lt;int32_t&gt; array3 = {1, 1, 1, 1};</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> assert(backtracking::subset_sum::number_of_subsets(1, array3) ==</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> assert(<a class="code hl_function" href="../../d2/d5a/subset__sum_8cpp.html#a7cb50d36a59427a33f64a266dac83d99">backtracking::subset_sum::number_of_subsets</a>(1, array3) ==</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> 4); <span class="comment">// here we are expecting 4 subsets which sum up to 1 i.e.</span></div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="comment">// {(1),(1),(1),(1)}</span></div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> std::cout &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; std::endl;</div>
@@ -183,7 +184,7 @@ $(function(){initNavTree('d2/d5a/subset__sum_8cpp_source.html','../../'); initRe
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <span class="comment">// 4th test</span></div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> std::cout &lt;&lt; <span class="stringliteral">&quot;4th test &quot;</span>;</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> std::vector&lt;int32_t&gt; array4 = {3, 3, 3, 3};</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> assert(backtracking::subset_sum::number_of_subsets(6, array4) ==</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> assert(<a class="code hl_function" href="../../d2/d5a/subset__sum_8cpp.html#a7cb50d36a59427a33f64a266dac83d99">backtracking::subset_sum::number_of_subsets</a>(6, array4) ==</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> 6); <span class="comment">// here we are expecting 6 subsets which sum up to 6 i.e.</span></div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> <span class="comment">// {(3,3),(3,3),(3,3),(3,3),(3,3),(3,3)}</span></div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> std::cout &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; std::endl;</div>
@@ -191,13 +192,13 @@ $(function(){initNavTree('d2/d5a/subset__sum_8cpp_source.html','../../'); initRe
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <span class="comment">// Test 5</span></div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> std::cout &lt;&lt; <span class="stringliteral">&quot;5th test &quot;</span>;</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> std::vector&lt;int32_t&gt; array5 = {};</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> assert(backtracking::subset_sum::number_of_subsets(6, array5) ==</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> assert(<a class="code hl_function" href="../../d2/d5a/subset__sum_8cpp.html#a7cb50d36a59427a33f64a266dac83d99">backtracking::subset_sum::number_of_subsets</a>(6, array5) ==</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> 0); <span class="comment">// here we are expecting 0 subsets which sum up to 6 i.e. we</span></div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="comment">// cannot select anything from an empty array</span></div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> std::cout &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; std::endl;</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span>}</div>
</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> </div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span></div>
<div class="foldopen" id="foldopen00104" data-start="{" data-end="}">
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"><a class="line" href="../../d2/d5a/subset__sum_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4"> 104</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="../../d2/d5a/subset__sum_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a>() {</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> <a class="code hl_function" href="../../d2/d5a/subset__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>(); <span class="comment">// run self-test implementations</span></div>
@@ -215,7 +216,7 @@ $(function(){initNavTree('d2/d5a/subset__sum_8cpp_source.html','../../'); initRe
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_c11585dfcef32a26e29098facab6c144.html">backtracking</a></li><li class="navelem"><a class="el" href="../../d2/d5a/subset__sum_8cpp.html">subset_sum.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: sorting/merge_sort.cpp Pages: 1 -->
<svg width="124pt" height="83pt"

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: sorting/merge_sort.cpp Pages: 1 -->
<svg width="124pt" height="83pt"

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: greedy_algorithms/prims_minimum_spanning_tree.cpp Source File</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -199,7 +199,7 @@ $(function(){initNavTree('d2/d64/prims__minimum__spanning__tree_8cpp_source.html
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_0eaa691bd54ab0922ca7f50599de6d22.html">greedy_algorithms</a></li><li class="navelem"><b>prims_minimum_spanning_tree.cpp</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: dynamic_programming/longest_common_string.cpp Pages: 1 -->
<svg width="305pt" height="94pt"

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 5.5 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: dynamic_programming/longest_common_string.cpp Pages: 1 -->
<svg width="305pt" height="94pt"

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 4.7 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: dynamic_programming/word_break.cpp Pages: 1 -->
<svg width="405pt" height="94pt"

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: dynamic_programming/word_break.cpp Pages: 1 -->
<svg width="405pt" height="94pt"

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: range_queries/prefix_sum_array.cpp Pages: 1 -->
<svg width="189pt" height="94pt"

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: range_queries/prefix_sum_array.cpp Pages: 1 -->
<svg width="189pt" height="94pt"

Before

Width:  |  Height:  |  Size: 3.2 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

View File

@@ -0,0 +1,5 @@
<map id="adaline" name="adaline">
<area shape="rect" id="Node000001" title=" " alt="" coords="47,94,109,120"/>
<area shape="rect" id="Node000002" title=" " alt="" coords="5,5,151,31"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="81,47,81,94,75,94,75,47"/>
</map>

View File

@@ -0,0 +1 @@
8c7990eca5b74c3da6eadf631b476f5a

View File

@@ -0,0 +1,66 @@
<?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 12.2.1 (20241206.2353)
-->
<!-- Title: adaline Pages: 1 -->
<svg width="117pt" height="94pt"
viewBox="0.00 0.00 117.00 93.75" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve">
<style type="text/css"><![CDATA[
.node, .edge {opacity: 0.7;}
.node.selected, .edge.selected {opacity: 1;}
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<script type="application/ecmascript" xlink:href="../../svg.min.js"/>
<svg id="graph" class="graph">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 89.75)">
<title>adaline</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="77.88,-19.25 31.12,-19.25 31.12,0 77.88,0 77.88,-19.25"/>
<text text-anchor="middle" x="54.5" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">adaline</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:title=" ">
<polygon fill="white" stroke="#666666" points="109,-85.75 0,-85.75 0,-66.5 109,-66.5 109,-85.75"/>
<text text-anchor="middle" x="54.5" y="-72.25" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector&lt; double &gt;</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node1 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node2&#45;&gt;Node1</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#9a32cd" stroke-dasharray="5,2" d="M54.5,-54.65C54.5,-42.82 54.5,-28.54 54.5,-19.52"/>
<polygon fill="#9a32cd" stroke="#9a32cd" points="51,-54.64 54.5,-64.64 58,-54.64 51,-54.64"/>
</a>
</g>
<text text-anchor="middle" x="72.88" y="-39" font-family="Helvetica,sans-Serif" font-size="10.00" fill="grey"> weights</text>
</g>
</g>
</svg>
</svg>
<style type='text/css'>
<![CDATA[
[data-mouse-over-selected='false'] { opacity: 0.7; }
[data-mouse-over-selected='true'] { opacity: 1.0; }
]]>
</style>
<script type="application/ecmascript"><![CDATA[
document.addEventListener('DOMContentLoaded', (event) => {
highlightEdges();
highlightAdjacentNodes();
});
]]></script>
</svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -0,0 +1,40 @@
<?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 12.2.1 (20241206.2353)
-->
<!-- Title: adaline Pages: 1 -->
<svg width="117pt" height="94pt"
viewBox="0.00 0.00 117.00 93.75" 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 89.75)">
<title>adaline</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="77.88,-19.25 31.12,-19.25 31.12,0 77.88,0 77.88,-19.25"/>
<text text-anchor="middle" x="54.5" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">adaline</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:title=" ">
<polygon fill="white" stroke="#666666" points="109,-85.75 0,-85.75 0,-66.5 109,-66.5 109,-85.75"/>
<text text-anchor="middle" x="54.5" y="-72.25" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector&lt; double &gt;</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node1 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node2&#45;&gt;Node1</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#9a32cd" stroke-dasharray="5,2" d="M54.5,-54.65C54.5,-42.82 54.5,-28.54 54.5,-19.52"/>
<polygon fill="#9a32cd" stroke="#9a32cd" points="51,-54.64 54.5,-64.64 58,-54.64 51,-54.64"/>
</a>
</g>
<text text-anchor="middle" x="72.88" y="-39" font-family="Helvetica,sans-Serif" font-size="10.00" fill="grey"> weights</text>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: dynamic_programming/egg_dropping_puzzle.cpp Source File</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -182,7 +182,7 @@ $(function(){initNavTree('d2/d7d/egg__dropping__puzzle_8cpp_source.html','../../
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_8a20dd5bfd5341a725342bf72b6b686f.html">dynamic_programming</a></li><li class="navelem"><b>egg_dropping_puzzle.cpp</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: ciphers/elliptic_curve_key_exchange.cpp Pages: 1 -->
<svg width="410pt" height="204pt"

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 9.3 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: ciphers/elliptic_curve_key_exchange.cpp Pages: 1 -->
<svg width="410pt" height="204pt"

Before

Width:  |  Height:  |  Size: 8.6 KiB

After

Width:  |  Height:  |  Size: 8.6 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: Member List</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -142,7 +142,7 @@ $(function(){initNavTree('da/d19/classprobability_1_1geometric__dist_1_1geometri
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: range_queries/persistent_seg_tree_lazy_prop.cpp Pages: 1 -->
<svg width="191pt" height="94pt"

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: range_queries/persistent_seg_tree_lazy_prop.cpp Pages: 1 -->
<svg width="191pt" height="94pt"

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: search/median_search.cpp Pages: 1 -->
<svg width="263pt" height="83pt"

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: search/median_search.cpp Pages: 1 -->
<svg width="263pt" height="83pt"

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: range_queries::heavy_light_decomposition::HLD&lt; X &gt; Class Template Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -231,7 +231,7 @@ class range_queries::heavy_light_decomposition::HLD&lt; X &gt;</div><p>The Heavy
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename X &gt; </div>
template&lt;typename X&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -245,7 +245,7 @@ template&lt;typename X &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel explicit">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -259,21 +259,21 @@ template&lt;typename X &gt; </div>
</dl>
<p class="definition">Definition at line <a class="el" href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00409">409</a> of file <a class="el" href="../../d2/de9/heavy__light__decomposition_8cpp_source.html">heavy_light_decomposition.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 435</span> : <a class="code hl_function" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a835fb2bbb27307b8cacad9b287968bc1">Tree&lt;X&gt;</a>(nodes), <a class="code hl_function" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afba5c1225ba04c0025c7786c09ff28f1">SG&lt;X&gt;</a>(nodes) {</div>
<div class="fragment"><div class="line"><span class="lineno"> 435</span> : <a class="code hl_function" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a835fb2bbb27307b8cacad9b287968bc1">Tree&lt;X&gt;</a>(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">nodes</a>), <a class="code hl_function" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afba5c1225ba04c0025c7786c09ff28f1">SG&lt;X&gt;</a>(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">nodes</a>) {</div>
<div class="line"><span class="lineno"> 436</span> <span class="comment">/* Initialization and resize vectors */</span></div>
<div class="line"><span class="lineno"> 437</span> <a class="code hl_variable" href="#a722cc7cf2c3e4d15583601a48b09776f">label</a> = 0;</div>
<div class="line"><span class="lineno"> 438</span> <a class="code hl_variable" href="#aa86a91ae0cd7898990a8170a2f2c9cda">h_label</a>.assign(<a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae4630fa70a80a1dc65a875488a67178a">Tree&lt;X&gt;::t_nodes</a>, -1);</div>
<div class="line"><span class="lineno"> 439</span> <a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>.assign(<a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae4630fa70a80a1dc65a875488a67178a">Tree&lt;X&gt;::t_nodes</a>, -1);</div>
<div class="line"><span class="lineno"> 440</span> <a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>.resize(<a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae4630fa70a80a1dc65a875488a67178a">Tree&lt;X&gt;::t_nodes</a>);</div>
<div class="line"><span class="lineno"> 441</span> iota(<a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>.begin(), <a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>.end(), 0);</div>
<div class="line"><span class="lineno"> 438</span> <a class="code hl_variable" href="#aa86a91ae0cd7898990a8170a2f2c9cda">h_label</a>.assign(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_nodes</a>, -1);</div>
<div class="line"><span class="lineno"> 439</span> <a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>.assign(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_nodes</a>, -1);</div>
<div class="line"><span class="lineno"> 440</span> <a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>.resize(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_nodes</a>);</div>
<div class="line"><span class="lineno"> 441</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">iota</a>(<a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>.begin(), <a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>.end(), 0);</div>
<div class="line"><span class="lineno"> 442</span> }</div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_h_l_d_html"><div class="ttname"><a href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">range_queries::heavy_light_decomposition::HLD</a></div><div class="ttdoc">The Heavy-Light Decomposition class.</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00336">heavy_light_decomposition.cpp:336</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_h_l_d_html_a1b336474d17eff1aa4be73d4068dc725"><div class="ttname"><a href="#a1b336474d17eff1aa4be73d4068dc725">range_queries::heavy_light_decomposition::HLD::h_parent</a></div><div class="ttdeci">std::vector&lt; int &gt; h_parent</div><div class="ttdoc">stores the top of the heavy chain from a node</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00341">heavy_light_decomposition.cpp:341</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_h_l_d_html_a722cc7cf2c3e4d15583601a48b09776f"><div class="ttname"><a href="#a722cc7cf2c3e4d15583601a48b09776f">range_queries::heavy_light_decomposition::HLD::label</a></div><div class="ttdeci">int label</div><div class="ttdoc">utility member to assign labels in dfs_labels()</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00338">heavy_light_decomposition.cpp:338</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_h_l_d_html_a84424f180f12b514eaab57a6aa20b104"><div class="ttname"><a href="#a84424f180f12b514eaab57a6aa20b104">range_queries::heavy_light_decomposition::HLD::h_heavychlid</a></div><div class="ttdeci">std::vector&lt; int &gt; h_heavychlid</div><div class="ttdoc">stores the heavy child of a node</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00340">heavy_light_decomposition.cpp:340</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_h_l_d_html_aa86a91ae0cd7898990a8170a2f2c9cda"><div class="ttname"><a href="#aa86a91ae0cd7898990a8170a2f2c9cda">range_queries::heavy_light_decomposition::HLD::h_label</a></div><div class="ttdeci">std::vector&lt; int &gt; h_label</div><div class="ttdoc">stores the label of a node</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00339">heavy_light_decomposition.cpp:339</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_s_g_html_afba5c1225ba04c0025c7786c09ff28f1"><div class="ttname"><a href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afba5c1225ba04c0025c7786c09ff28f1">range_queries::heavy_light_decomposition::SG::SG</a></div><div class="ttdeci">SG(int size)</div><div class="ttdoc">Class parameterized constructor. Resizes the and initilizes the data members.</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00282">heavy_light_decomposition.cpp:282</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_tree_html_a835fb2bbb27307b8cacad9b287968bc1"><div class="ttname"><a href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a835fb2bbb27307b8cacad9b287968bc1">range_queries::heavy_light_decomposition::Tree::Tree</a></div><div class="ttdeci">Tree(int nodes)</div><div class="ttdoc">Class parameterized constructor, resizes the and initializes the data members.</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00140">heavy_light_decomposition.cpp:140</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_tree_html_ae4630fa70a80a1dc65a875488a67178a"><div class="ttname"><a href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae4630fa70a80a1dc65a875488a67178a">range_queries::heavy_light_decomposition::Tree::t_nodes</a></div><div class="ttdeci">const int t_nodes</div><div class="ttdoc">number of nodes</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00084">heavy_light_decomposition.cpp:84</a></div></div>
</div><!-- fragment -->
</div>
</div>
@@ -284,7 +284,7 @@ template&lt;typename X &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename X &gt; </div>
template&lt;typename X&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -302,7 +302,7 @@ template&lt;typename X &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">private</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -319,30 +319,25 @@ template&lt;typename X &gt; </div>
<p class="definition">Definition at line <a class="el" href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00409">409</a> of file <a class="el" href="../../d2/de9/heavy__light__decomposition_8cpp_source.html">heavy_light_decomposition.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 409</span> {</div>
<div class="line"><span class="lineno"> 410</span> X ret = <a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#aa7f93971a9f891e0bbb7023081f379d5">SG&lt;X&gt;::sret_init</a>;</div>
<div class="line"><span class="lineno"> 411</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a0efd0b9c564092f443ca97030d866ef1">Tree&lt;X&gt;::t_depth</a>[a] &lt; <a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a0efd0b9c564092f443ca97030d866ef1">Tree&lt;X&gt;::t_depth</a>[b]) {</div>
<div class="line"><span class="lineno"> 412</span> std::swap(a, b);</div>
<div class="line"><span class="lineno"> 410</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">X</a> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">ret</a> = <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">SG&lt;X&gt;::sret_init</a>;</div>
<div class="line"><span class="lineno"> 411</span> <span class="keywordflow">if</span> (<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_depth</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">a</a>] &lt; <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_depth</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">b</a>]) {</div>
<div class="line"><span class="lineno"> 412</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">std::swap</a>(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">a</a>, <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">b</a>);</div>
<div class="line"><span class="lineno"> 413</span> }</div>
<div class="line"><span class="lineno"> 414</span> <span class="keywordflow">while</span> (<a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a0efd0b9c564092f443ca97030d866ef1">Tree&lt;X&gt;::t_depth</a>[a] &gt;= <a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a0efd0b9c564092f443ca97030d866ef1">Tree&lt;X&gt;::t_depth</a>[b]) {</div>
<div class="line"><span class="lineno"> 415</span> <span class="keywordtype">int</span> <a class="code hl_function" href="../../d4/d18/composite__simpson__rule_8cpp.html#a6d8df83a6f26ce24a75d3b358b7f5b8a">l</a> = <a class="code hl_variable" href="#aa86a91ae0cd7898990a8170a2f2c9cda">h_label</a>[<a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>[a]];</div>
<div class="line"><span class="lineno"> 416</span> <span class="keywordtype">int</span> r = <a class="code hl_variable" href="#aa86a91ae0cd7898990a8170a2f2c9cda">h_label</a>[a];</div>
<div class="line"><span class="lineno"> 417</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a0efd0b9c564092f443ca97030d866ef1">Tree&lt;X&gt;::t_depth</a>[<a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>[a]] &lt; <a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a0efd0b9c564092f443ca97030d866ef1">Tree&lt;X&gt;::t_depth</a>[b]) {</div>
<div class="line"><span class="lineno"> 418</span> <a class="code hl_function" href="../../d4/d18/composite__simpson__rule_8cpp.html#a6d8df83a6f26ce24a75d3b358b7f5b8a">l</a> += <a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a0efd0b9c564092f443ca97030d866ef1">Tree&lt;X&gt;::t_depth</a>[b] - <a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a0efd0b9c564092f443ca97030d866ef1">Tree&lt;X&gt;::t_depth</a>[<a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>[a]];</div>
<div class="line"><span class="lineno"> 414</span> <span class="keywordflow">while</span> (<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_depth</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">a</a>] &gt;= <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_depth</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">b</a>]) {</div>
<div class="line"><span class="lineno"> 415</span> <span class="keywordtype">int</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">l</a> = <a class="code hl_variable" href="#aa86a91ae0cd7898990a8170a2f2c9cda">h_label</a>[<a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">a</a>]];</div>
<div class="line"><span class="lineno"> 416</span> <span class="keywordtype">int</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">r</a> = <a class="code hl_variable" href="#aa86a91ae0cd7898990a8170a2f2c9cda">h_label</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">a</a>];</div>
<div class="line"><span class="lineno"> 417</span> <span class="keywordflow">if</span> (<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_depth</a>[<a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">a</a>]] &lt; <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_depth</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">b</a>]) {</div>
<div class="line"><span class="lineno"> 418</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">l</a> += <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_depth</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">b</a>] - <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_depth</a>[<a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">a</a>]];</div>
<div class="line"><span class="lineno"> 419</span> }</div>
<div class="line"><span class="lineno"> 420</span> ret = <a class="code hl_function" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74">SG&lt;X&gt;::combine</a>(ret, <a class="code hl_function" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a1fda852e6e522707fd97f61cdb0a2591">SG&lt;X&gt;::query</a>(l, r));</div>
<div class="line"><span class="lineno"> 421</span> a = <a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a350157a5fb79f76fceae33fc84171203">Tree&lt;X&gt;::t_par</a>[<a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>[a]][0];</div>
<div class="line"><span class="lineno"> 422</span> <span class="keywordflow">if</span> (a == -1) {</div>
<div class="line"><span class="lineno"> 420</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">ret</a> = <a class="code hl_function" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74">SG&lt;X&gt;::combine</a>(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">ret</a>, <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">SG&lt;X&gt;::query</a>(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">l</a>, <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">r</a>));</div>
<div class="line"><span class="lineno"> 421</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">a</a> = <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_par</a>[<a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">a</a>]][0];</div>
<div class="line"><span class="lineno"> 422</span> <span class="keywordflow">if</span> (<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">a</a> == -1) {</div>
<div class="line"><span class="lineno"> 423</span> <span class="keywordflow">break</span>;</div>
<div class="line"><span class="lineno"> 424</span> }</div>
<div class="line"><span class="lineno"> 425</span> }</div>
<div class="line"><span class="lineno"> 426</span> <span class="keywordflow">return</span> ret;</div>
<div class="line"><span class="lineno"> 426</span> <span class="keywordflow">return</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">ret</a>;</div>
<div class="line"><span class="lineno"> 427</span> }</div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_s_g_html_a1fda852e6e522707fd97f61cdb0a2591"><div class="ttname"><a href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a1fda852e6e522707fd97f61cdb0a2591">range_queries::heavy_light_decomposition::SG::query</a></div><div class="ttdeci">X query(int l, int r)</div><div class="ttdoc">Make a range query from node label l to node label r.</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00305">heavy_light_decomposition.cpp:305</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_s_g_html_a41c733f5f5e262b308f7cb95c88c1e74"><div class="ttname"><a href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74">range_queries::heavy_light_decomposition::SG::combine</a></div><div class="ttdeci">X combine(X lhs, X rhs)</div><div class="ttdoc">Function that specifies the type of operation involved when segments are combined.</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00274">heavy_light_decomposition.cpp:274</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_s_g_html_aa7f93971a9f891e0bbb7023081f379d5"><div class="ttname"><a href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#aa7f93971a9f891e0bbb7023081f379d5">range_queries::heavy_light_decomposition::SG::sret_init</a></div><div class="ttdeci">X sret_init</div><div class="ttdoc">inital query return value</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00264">heavy_light_decomposition.cpp:264</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_tree_html_a0efd0b9c564092f443ca97030d866ef1"><div class="ttname"><a href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a0efd0b9c564092f443ca97030d866ef1">range_queries::heavy_light_decomposition::Tree::t_depth</a></div><div class="ttdeci">std::vector&lt; int &gt; t_depth</div><div class="ttdoc">a vector to store the depth of a node,</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00088">heavy_light_decomposition.cpp:88</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_tree_html_a350157a5fb79f76fceae33fc84171203"><div class="ttname"><a href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a350157a5fb79f76fceae33fc84171203">range_queries::heavy_light_decomposition::Tree::t_par</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; int &gt; &gt; t_par</div><div class="ttdoc">a matrix to store every node's 2^kth parent</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00087">heavy_light_decomposition.cpp:87</a></div></div>
<div class="ttc" id="acomposite__simpson__rule_8cpp_html_a6d8df83a6f26ce24a75d3b358b7f5b8a"><div class="ttname"><a href="../../d4/d18/composite__simpson__rule_8cpp.html#a6d8df83a6f26ce24a75d3b358b7f5b8a">numerical_methods::simpson_method::l</a></div><div class="ttdeci">double l(double x)</div><div class="ttdoc">Another test function.</div><div class="ttdef"><b>Definition</b> <a href="../../d4/d18/composite__simpson__rule_8cpp_source.html#l00119">composite_simpson_rule.cpp:119</a></div></div>
</div><!-- fragment -->
</div>
</div>
@@ -352,7 +347,7 @@ template&lt;typename X &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename X &gt; </div>
template&lt;typename X&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -370,7 +365,7 @@ template&lt;typename X &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">private</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -387,21 +382,19 @@ template&lt;typename X &gt; </div>
<p class="definition">Definition at line <a class="el" href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00350">350</a> of file <a class="el" href="../../d2/de9/heavy__light__decomposition_8cpp_source.html">heavy_light_decomposition.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 350</span> {</div>
<div class="line"><span class="lineno"> 351</span> <span class="keywordtype">int</span> hc_size = -1, hc_id = -1;</div>
<div class="line"><span class="lineno"> 352</span> <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keywordtype">int</span> &amp;v : <a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ab1aeaefa1bd97b867c652ba916fbdb43">Tree&lt;X&gt;::t_adj</a>[u]) {</div>
<div class="line"><span class="lineno"> 353</span> <span class="keywordflow">if</span> (v ^ p) {</div>
<div class="line"><span class="lineno"> 354</span> <a class="code hl_function" href="#af64848d6630c39d0f09ce2359cc7c4f8">dfs_hc</a>(v, u);</div>
<div class="line"><span class="lineno"> 355</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ada1494fccbc7f1f07b2f9be9f7e07ad5">Tree&lt;X&gt;::t_size</a>[v] &gt; hc_size) {</div>
<div class="line"><span class="lineno"> 356</span> hc_size = <a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ada1494fccbc7f1f07b2f9be9f7e07ad5">Tree&lt;X&gt;::t_size</a>[v];</div>
<div class="line"><span class="lineno"> 357</span> hc_id = v;</div>
<div class="line"><span class="lineno"> 351</span> <span class="keywordtype">int</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">hc_size</a> = -1, <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">hc_id</a> = -1;</div>
<div class="line"><span class="lineno"> 352</span> <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keywordtype">int</span> &amp;<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">v</a> : <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_adj</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>]) {</div>
<div class="line"><span class="lineno"> 353</span> <span class="keywordflow">if</span> (<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">v</a> ^ <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">p</a>) {</div>
<div class="line"><span class="lineno"> 354</span> <a class="code hl_function" href="#af64848d6630c39d0f09ce2359cc7c4f8">dfs_hc</a>(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">v</a>, <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>);</div>
<div class="line"><span class="lineno"> 355</span> <span class="keywordflow">if</span> (<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_size</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">v</a>] &gt; <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">hc_size</a>) {</div>
<div class="line"><span class="lineno"> 356</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">hc_size</a> = <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_size</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">v</a>];</div>
<div class="line"><span class="lineno"> 357</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">hc_id</a> = <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">v</a>;</div>
<div class="line"><span class="lineno"> 358</span> }</div>
<div class="line"><span class="lineno"> 359</span> }</div>
<div class="line"><span class="lineno"> 360</span> }</div>
<div class="line"><span class="lineno"> 361</span> <a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>[u] = hc_id;</div>
<div class="line"><span class="lineno"> 361</span> <a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>] = <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">hc_id</a>;</div>
<div class="line"><span class="lineno"> 362</span> }</div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_h_l_d_html_af64848d6630c39d0f09ce2359cc7c4f8"><div class="ttname"><a href="#af64848d6630c39d0f09ce2359cc7c4f8">range_queries::heavy_light_decomposition::HLD::dfs_hc</a></div><div class="ttdeci">void dfs_hc(int u, int p=-1)</div><div class="ttdoc">Utility function to assign heavy child to each node (-1 for a leaf node)</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00350">heavy_light_decomposition.cpp:350</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_tree_html_ab1aeaefa1bd97b867c652ba916fbdb43"><div class="ttname"><a href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ab1aeaefa1bd97b867c652ba916fbdb43">range_queries::heavy_light_decomposition::Tree::t_adj</a></div><div class="ttdeci">std::vector&lt; std::list&lt; int &gt; &gt; t_adj</div><div class="ttdoc">an adjacency list to stores the tree edges</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00083">heavy_light_decomposition.cpp:83</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_tree_html_ada1494fccbc7f1f07b2f9be9f7e07ad5"><div class="ttname"><a href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ada1494fccbc7f1f07b2f9be9f7e07ad5">range_queries::heavy_light_decomposition::Tree::t_size</a></div><div class="ttdeci">std::vector&lt; int &gt; t_size</div><div class="ttdoc">a vector to store the subtree size rooted at node</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00089">heavy_light_decomposition.cpp:89</a></div></div>
</div><!-- fragment -->
</div>
</div>
@@ -411,7 +404,7 @@ template&lt;typename X &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename X &gt; </div>
template&lt;typename X&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -429,7 +422,7 @@ template&lt;typename X &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">private</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -446,13 +439,13 @@ template&lt;typename X &gt; </div>
<p class="definition">Definition at line <a class="el" href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00390">390</a> of file <a class="el" href="../../d2/de9/heavy__light__decomposition_8cpp_source.html">heavy_light_decomposition.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 390</span> {</div>
<div class="line"><span class="lineno"> 391</span> <a class="code hl_variable" href="#aa86a91ae0cd7898990a8170a2f2c9cda">h_label</a>[u] = <a class="code hl_variable" href="#a722cc7cf2c3e4d15583601a48b09776f">label</a>++;</div>
<div class="line"><span class="lineno"> 392</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>[u] != -1) {</div>
<div class="line"><span class="lineno"> 393</span> <a class="code hl_function" href="#a0579062b384e54b611b80c6337c7f2c8">dfs_labels</a>(<a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>[u], u);</div>
<div class="line"><span class="lineno"> 391</span> <a class="code hl_variable" href="#aa86a91ae0cd7898990a8170a2f2c9cda">h_label</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>] = <a class="code hl_variable" href="#a722cc7cf2c3e4d15583601a48b09776f">label</a>++;</div>
<div class="line"><span class="lineno"> 392</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>] != -1) {</div>
<div class="line"><span class="lineno"> 393</span> <a class="code hl_function" href="#a0579062b384e54b611b80c6337c7f2c8">dfs_labels</a>(<a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>], <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>);</div>
<div class="line"><span class="lineno"> 394</span> }</div>
<div class="line"><span class="lineno"> 395</span> <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keywordtype">int</span> &amp;v : <a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ab1aeaefa1bd97b867c652ba916fbdb43">Tree&lt;X&gt;::t_adj</a>[u]) {</div>
<div class="line"><span class="lineno"> 396</span> <span class="keywordflow">if</span> (v ^ p and v ^ <a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>[u]) {</div>
<div class="line"><span class="lineno"> 397</span> <a class="code hl_function" href="#a0579062b384e54b611b80c6337c7f2c8">dfs_labels</a>(v, u);</div>
<div class="line"><span class="lineno"> 395</span> <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keywordtype">int</span> &amp;<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">v</a> : <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_adj</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>]) {</div>
<div class="line"><span class="lineno"> 396</span> <span class="keywordflow">if</span> (<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">v</a> ^ <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">p</a> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">and</a> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">v</a> ^ <a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>]) {</div>
<div class="line"><span class="lineno"> 397</span> <a class="code hl_function" href="#a0579062b384e54b611b80c6337c7f2c8">dfs_labels</a>(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">v</a>, <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>);</div>
<div class="line"><span class="lineno"> 398</span> }</div>
<div class="line"><span class="lineno"> 399</span> }</div>
<div class="line"><span class="lineno"> 400</span> }</div>
@@ -466,7 +459,7 @@ template&lt;typename X &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename X &gt; </div>
template&lt;typename X&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -484,7 +477,7 @@ template&lt;typename X &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">private</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -501,13 +494,13 @@ template&lt;typename X &gt; </div>
<p class="definition">Definition at line <a class="el" href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00371">371</a> of file <a class="el" href="../../d2/de9/heavy__light__decomposition_8cpp_source.html">heavy_light_decomposition.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 371</span> {</div>
<div class="line"><span class="lineno"> 372</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>[u] != -1) {</div>
<div class="line"><span class="lineno"> 373</span> <a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>[<a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>[u]] = <a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>[u];</div>
<div class="line"><span class="lineno"> 374</span> <a class="code hl_function" href="#a2dfbda148aad0bfaba2ebfda9ebc915a">dfs_par</a>(<a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>[u], u);</div>
<div class="line"><span class="lineno"> 372</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>] != -1) {</div>
<div class="line"><span class="lineno"> 373</span> <a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>[<a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>]] = <a class="code hl_variable" href="#a1b336474d17eff1aa4be73d4068dc725">h_parent</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>];</div>
<div class="line"><span class="lineno"> 374</span> <a class="code hl_function" href="#a2dfbda148aad0bfaba2ebfda9ebc915a">dfs_par</a>(<a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>], <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>);</div>
<div class="line"><span class="lineno"> 375</span> }</div>
<div class="line"><span class="lineno"> 376</span> <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keywordtype">int</span> &amp;v : <a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ab1aeaefa1bd97b867c652ba916fbdb43">Tree&lt;X&gt;::t_adj</a>[u]) {</div>
<div class="line"><span class="lineno"> 377</span> <span class="keywordflow">if</span> (v ^ p and v ^ <a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>[u]) {</div>
<div class="line"><span class="lineno"> 378</span> <a class="code hl_function" href="#a2dfbda148aad0bfaba2ebfda9ebc915a">dfs_par</a>(v, u);</div>
<div class="line"><span class="lineno"> 376</span> <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keywordtype">int</span> &amp;<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">v</a> : <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_adj</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>]) {</div>
<div class="line"><span class="lineno"> 377</span> <span class="keywordflow">if</span> (<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">v</a> ^ <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">p</a> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">and</a> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">v</a> ^ <a class="code hl_variable" href="#a84424f180f12b514eaab57a6aa20b104">h_heavychlid</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>]) {</div>
<div class="line"><span class="lineno"> 378</span> <a class="code hl_function" href="#a2dfbda148aad0bfaba2ebfda9ebc915a">dfs_par</a>(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">v</a>, <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">u</a>);</div>
<div class="line"><span class="lineno"> 379</span> }</div>
<div class="line"><span class="lineno"> 380</span> }</div>
<div class="line"><span class="lineno"> 381</span> }</div>
@@ -521,7 +514,7 @@ template&lt;typename X &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename X &gt; </div>
template&lt;typename X&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -535,7 +528,7 @@ template&lt;typename X &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -549,22 +542,19 @@ template&lt;typename X &gt; </div>
<div class="line"><span class="lineno"> 452</span> </div>
<div class="line"><span class="lineno"> 453</span> <span class="comment">// Fill the heavy child, greatest parent, and labels</span></div>
<div class="line"><span class="lineno"> 454</span> <a class="code hl_variable" href="#a722cc7cf2c3e4d15583601a48b09776f">label</a> = 0;</div>
<div class="line"><span class="lineno"> 455</span> <a class="code hl_function" href="#af64848d6630c39d0f09ce2359cc7c4f8">dfs_hc</a>(<a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa6c37e840355b9fb2105181c578694e8">Tree&lt;X&gt;::t_root</a>);</div>
<div class="line"><span class="lineno"> 456</span> <a class="code hl_function" href="#a2dfbda148aad0bfaba2ebfda9ebc915a">dfs_par</a>(<a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa6c37e840355b9fb2105181c578694e8">Tree&lt;X&gt;::t_root</a>);</div>
<div class="line"><span class="lineno"> 457</span> <a class="code hl_function" href="#a0579062b384e54b611b80c6337c7f2c8">dfs_labels</a>(<a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa6c37e840355b9fb2105181c578694e8">Tree&lt;X&gt;::t_root</a>);</div>
<div class="line"><span class="lineno"> 455</span> <a class="code hl_function" href="#af64848d6630c39d0f09ce2359cc7c4f8">dfs_hc</a>(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_root</a>);</div>
<div class="line"><span class="lineno"> 456</span> <a class="code hl_function" href="#a2dfbda148aad0bfaba2ebfda9ebc915a">dfs_par</a>(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_root</a>);</div>
<div class="line"><span class="lineno"> 457</span> <a class="code hl_function" href="#a0579062b384e54b611b80c6337c7f2c8">dfs_labels</a>(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_root</a>);</div>
<div class="line"><span class="lineno"> 458</span> </div>
<div class="line"><span class="lineno"> 459</span> <span class="comment">// Segment Tree Initialization</span></div>
<div class="line"><span class="lineno"> 460</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; Tree&lt;X&gt;::t_nodes; i++) {</div>
<div class="line"><span class="lineno"> 461</span> <a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afbf8a9cb9449d5ca844f4e141a801e6a">SG&lt;X&gt;::s_tree</a>[<a class="code hl_variable" href="#aa86a91ae0cd7898990a8170a2f2c9cda">h_label</a>[i] + <a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae4630fa70a80a1dc65a875488a67178a">Tree&lt;X&gt;::t_nodes</a>] = <a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a135b7952593c9b1aae38fcaf1cc1abf7">Tree&lt;X&gt;::t_val</a>[i];</div>
<div class="line"><span class="lineno"> 460</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">i</a> = 0; <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">i &lt; Tree&lt;X&gt;::t_nodes</a>; <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">i</a>++) {</div>
<div class="line"><span class="lineno"> 461</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">SG&lt;X&gt;::s_tree</a>[<a class="code hl_variable" href="#aa86a91ae0cd7898990a8170a2f2c9cda">h_label</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">i</a>] + <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_nodes</a>] = <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_val</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">i</a>];</div>
<div class="line"><span class="lineno"> 462</span> }</div>
<div class="line"><span class="lineno"> 463</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = <a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae4630fa70a80a1dc65a875488a67178a">Tree&lt;X&gt;::t_nodes</a> - 1; i &gt; 0; i--) {</div>
<div class="line"><span class="lineno"> 464</span> <a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afbf8a9cb9449d5ca844f4e141a801e6a">SG&lt;X&gt;::s_tree</a>[i] =</div>
<div class="line"><span class="lineno"> 465</span> <a class="code hl_function" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74">SG&lt;X&gt;::combine</a>(<a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afbf8a9cb9449d5ca844f4e141a801e6a">SG&lt;X&gt;::s_tree</a>[i &lt;&lt; 1], <a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afbf8a9cb9449d5ca844f4e141a801e6a">SG&lt;X&gt;::s_tree</a>[i &lt;&lt; 1 | 1]);</div>
<div class="line"><span class="lineno"> 463</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">i</a> = <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_nodes</a> - 1; <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">i</a> &gt; 0; <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">i</a>--) {</div>
<div class="line"><span class="lineno"> 464</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">SG&lt;X&gt;::s_tree</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">i</a>] =</div>
<div class="line"><span class="lineno"> 465</span> <a class="code hl_function" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74">SG&lt;X&gt;::combine</a>(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">SG&lt;X&gt;::s_tree</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">i</a> &lt;&lt; 1], <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">SG&lt;X&gt;::s_tree</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">i</a> &lt;&lt; 1 | 1]);</div>
<div class="line"><span class="lineno"> 466</span> }</div>
<div class="line"><span class="lineno"> 467</span> }</div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_s_g_html_afbf8a9cb9449d5ca844f4e141a801e6a"><div class="ttname"><a href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afbf8a9cb9449d5ca844f4e141a801e6a">range_queries::heavy_light_decomposition::SG::s_tree</a></div><div class="ttdeci">std::vector&lt; X &gt; s_tree</div><div class="ttdoc">Everything here is private, and can only be accessed through the methods, in the derived class (HLD)</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00262">heavy_light_decomposition.cpp:262</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_tree_html_a135b7952593c9b1aae38fcaf1cc1abf7"><div class="ttname"><a href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a135b7952593c9b1aae38fcaf1cc1abf7">range_queries::heavy_light_decomposition::Tree::t_val</a></div><div class="ttdeci">std::vector&lt; X &gt; t_val</div><div class="ttdoc">values of nodes</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00092">heavy_light_decomposition.cpp:92</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_tree_html_aa6c37e840355b9fb2105181c578694e8"><div class="ttname"><a href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa6c37e840355b9fb2105181c578694e8">range_queries::heavy_light_decomposition::Tree::t_root</a></div><div class="ttdeci">int t_root</div><div class="ttdoc">the root of the tree</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00091">heavy_light_decomposition.cpp:91</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_tree_html_ad22d760a5a33545a70e7ea5e1786c8dc"><div class="ttname"><a href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ad22d760a5a33545a70e7ea5e1786c8dc">range_queries::heavy_light_decomposition::Tree::init</a></div><div class="ttdeci">void init()</div><div class="ttdoc">This function must be called after the tree adjacency list and node values are populated The function...</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00186">heavy_light_decomposition.cpp:186</a></div></div>
</div><!-- fragment -->
</div>
@@ -575,7 +565,7 @@ template&lt;typename X &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename X &gt; </div>
template&lt;typename X&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -593,7 +583,7 @@ template&lt;typename X &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -610,12 +600,12 @@ template&lt;typename X &gt; </div>
<p class="definition">Definition at line <a class="el" href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00489">489</a> of file <a class="el" href="../../d2/de9/heavy__light__decomposition_8cpp_source.html">heavy_light_decomposition.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 489</span> {</div>
<div class="line"><span class="lineno"> 490</span> <span class="keywordtype">int</span> lc = <a class="code hl_function" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae2b407e64aaf9878fbee7ee6efe9c7d4">Tree&lt;X&gt;::lca</a>(a, b);</div>
<div class="line"><span class="lineno"> 491</span> X ret = <a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#aa7f93971a9f891e0bbb7023081f379d5">SG&lt;X&gt;::sret_init</a>;</div>
<div class="line"><span class="lineno"> 492</span> assert(lc != -1);</div>
<div class="line"><span class="lineno"> 493</span> ret += <a class="code hl_function" href="#a7d5b40c076347a6aabfb37a0590f2f24">chain_query</a>(a, lc);</div>
<div class="line"><span class="lineno"> 494</span> ret += <a class="code hl_function" href="#a7d5b40c076347a6aabfb37a0590f2f24">chain_query</a>(b, lc);</div>
<div class="line"><span class="lineno"> 495</span> <span class="keywordflow">return</span> ret - <a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a135b7952593c9b1aae38fcaf1cc1abf7">Tree&lt;X&gt;::t_val</a>[lc];</div>
<div class="line"><span class="lineno"> 490</span> <span class="keywordtype">int</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">lc</a> = <a class="code hl_function" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae2b407e64aaf9878fbee7ee6efe9c7d4">Tree&lt;X&gt;::lca</a>(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">a</a>, <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">b</a>);</div>
<div class="line"><span class="lineno"> 491</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">X</a> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">ret</a> = <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">SG&lt;X&gt;::sret_init</a>;</div>
<div class="line"><span class="lineno"> 492</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">assert</a>(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">lc</a> != -1);</div>
<div class="line"><span class="lineno"> 493</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">ret</a> += <a class="code hl_function" href="#a7d5b40c076347a6aabfb37a0590f2f24">chain_query</a>(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">a</a>, <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">lc</a>);</div>
<div class="line"><span class="lineno"> 494</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">ret</a> += <a class="code hl_function" href="#a7d5b40c076347a6aabfb37a0590f2f24">chain_query</a>(<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">b</a>, <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">lc</a>);</div>
<div class="line"><span class="lineno"> 495</span> <span class="keywordflow">return</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">ret</a> - <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_val</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">lc</a>];</div>
<div class="line"><span class="lineno"> 496</span> }</div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_h_l_d_html_a7d5b40c076347a6aabfb37a0590f2f24"><div class="ttname"><a href="#a7d5b40c076347a6aabfb37a0590f2f24">range_queries::heavy_light_decomposition::HLD::chain_query</a></div><div class="ttdeci">X chain_query(int a, int b)</div><div class="ttdoc">Utility function to break down a path query into two chain queries.</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00409">heavy_light_decomposition.cpp:409</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_tree_html_ae2b407e64aaf9878fbee7ee6efe9c7d4"><div class="ttname"><a href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae2b407e64aaf9878fbee7ee6efe9c7d4">range_queries::heavy_light_decomposition::Tree::lca</a></div><div class="ttdeci">int lca(int a, int b)</div><div class="ttdoc">The function returns the least common ancestor of two nodes.</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00229">heavy_light_decomposition.cpp:229</a></div></div>
@@ -628,7 +618,7 @@ template&lt;typename X &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename X &gt; </div>
template&lt;typename X&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -646,7 +636,7 @@ template&lt;typename X &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -663,13 +653,11 @@ template&lt;typename X &gt; </div>
<p class="definition">Definition at line <a class="el" href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00475">475</a> of file <a class="el" href="../../d2/de9/heavy__light__decomposition_8cpp_source.html">heavy_light_decomposition.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 475</span> {</div>
<div class="line"><span class="lineno"> 476</span> X diff = val - <a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a135b7952593c9b1aae38fcaf1cc1abf7">Tree&lt;X&gt;::t_val</a>[<a class="code hl_typedef" href="../../d8/dee/avltree_8cpp.html#a74f0cf18a0e5b832d9994e2f2d022287">node</a>];</div>
<div class="line"><span class="lineno"> 477</span> <a class="code hl_function" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a3c75bf5770790f8eba8cc92227b5400c">SG&lt;X&gt;::update</a>(<a class="code hl_variable" href="#aa86a91ae0cd7898990a8170a2f2c9cda">h_label</a>[<a class="code hl_class" href="../../d5/da1/structnode.html">node</a>], diff);</div>
<div class="line"><span class="lineno"> 478</span> <a class="code hl_variable" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a135b7952593c9b1aae38fcaf1cc1abf7">Tree&lt;X&gt;::t_val</a>[<a class="code hl_typedef" href="../../d8/dee/avltree_8cpp.html#a74f0cf18a0e5b832d9994e2f2d022287">node</a>] = val;</div>
<div class="line"><span class="lineno"> 476</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">X</a> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">diff</a> = <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">val</a> - <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_val</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">node</a>];</div>
<div class="line"><span class="lineno"> 477</span> <a class="code hl_function" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a3c75bf5770790f8eba8cc92227b5400c">SG&lt;X&gt;::update</a>(<a class="code hl_variable" href="#aa86a91ae0cd7898990a8170a2f2c9cda">h_label</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">node</a>], <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">diff</a>);</div>
<div class="line"><span class="lineno"> 478</span> <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">Tree&lt;X&gt;::t_val</a>[<a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">node</a>] = <a class="code hl_class" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">val</a>;</div>
<div class="line"><span class="lineno"> 479</span> }</div>
<div class="ttc" id="aavltree_8cpp_html_a74f0cf18a0e5b832d9994e2f2d022287"><div class="ttname"><a href="../../d8/dee/avltree_8cpp.html#a74f0cf18a0e5b832d9994e2f2d022287">node</a></div><div class="ttdeci">struct node { int data; int height; struct node *left; struct node *right;} node</div><div class="ttdoc">for std::queue</div><div class="ttdef"><b>Definition</b> <a href="../../d8/dee/avltree_8cpp_source.html#l00013">avltree.cpp:13</a></div></div>
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_s_g_html_a3c75bf5770790f8eba8cc92227b5400c"><div class="ttname"><a href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a3c75bf5770790f8eba8cc92227b5400c">range_queries::heavy_light_decomposition::SG::update</a></div><div class="ttdeci">void update(int p, X v)</div><div class="ttdoc">Update the value at a node.</div><div class="ttdef"><b>Definition</b> <a href="../../d2/de9/heavy__light__decomposition_8cpp_source.html#l00293">heavy_light_decomposition.cpp:293</a></div></div>
<div class="ttc" id="astructnode_html"><div class="ttname"><a href="../../d5/da1/structnode.html">node</a></div><div class="ttdef"><b>Definition</b> <a href="../../d3/d26/binary__search__tree_8cpp_source.html#l00011">binary_search_tree.cpp:11</a></div></div>
</div><!-- fragment -->
</div>
</div>
@@ -680,7 +668,7 @@ template&lt;typename X &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename X &gt; </div>
template&lt;typename X&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -691,7 +679,7 @@ template&lt;typename X &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -708,7 +696,7 @@ template&lt;typename X &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename X &gt; </div>
template&lt;typename X&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -719,7 +707,7 @@ template&lt;typename X &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -736,7 +724,7 @@ template&lt;typename X &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename X &gt; </div>
template&lt;typename X&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -747,7 +735,7 @@ template&lt;typename X &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -764,7 +752,7 @@ template&lt;typename X &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename X &gt; </div>
template&lt;typename X&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -775,7 +763,7 @@ template&lt;typename X &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -795,7 +783,7 @@ template&lt;typename X &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dd/d69/namespacerange__queries.html">range_queries</a></li><li class="navelem"><b>heavy_light_decomposition</b></li><li class="navelem"><a class="el" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html">HLD</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: greedy_algorithms Namespace Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -155,7 +155,7 @@ Functions</h2></td></tr>
<tr class="memitem:a33e3819aa9ffec0e380383c52603b502" id="r_a33e3819aa9ffec0e380383c52603b502"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a33e3819aa9ffec0e380383c52603b502">can_jump</a> (const std::vector&lt; int &gt; &amp;nums)</td></tr>
<tr class="memdesc:a33e3819aa9ffec0e380383c52603b502"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks whether the given element (default is <code>1</code>) can jump to the last index. <br /></td></tr>
<tr class="separator:a33e3819aa9ffec0e380383c52603b502"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a349e4ab9a97532c3931a2bd2a19c0098" id="r_a349e4ab9a97532c3931a2bd2a19c0098"><td class="memTemplParams" colspan="2">template&lt;typename T , std::size_t N, std::size_t M&gt; </td></tr>
<tr class="memitem:a349e4ab9a97532c3931a2bd2a19c0098" id="r_a349e4ab9a97532c3931a2bd2a19c0098"><td class="memTemplParams" colspan="2">template&lt;typename T, std::size_t N, std::size_t M&gt; </td></tr>
<tr class="memitem:a349e4ab9a97532c3931a2bd2a19c0098"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a349e4ab9a97532c3931a2bd2a19c0098">findMinimumEdge</a> (const T &amp;infinity, const std::array&lt; std::array&lt; T, N &gt;, M &gt; &amp;graph)</td></tr>
<tr class="memdesc:a349e4ab9a97532c3931a2bd2a19c0098"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds the minimum edge of the given graph. <br /></td></tr>
<tr class="separator:a349e4ab9a97532c3931a2bd2a19c0098"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -223,7 +223,7 @@ false if the index can NOT be reached </dd></dl>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , std::size_t N, std::size_t M&gt; </div>
template&lt;typename T, std::size_t N, std::size_t M&gt; </div>
<table class="memname">
<tr>
<td class="memname">void greedy_algorithms::findMinimumEdge </td>
@@ -264,7 +264,7 @@ template&lt;typename T , std::size_t N, std::size_t M&gt; </div>
<div class="line"><span class="lineno"> 51</span> minIndex = j;</div>
<div class="line"><span class="lineno"> 52</span> }</div>
<div class="line"><span class="lineno"> 53</span> }</div>
<div class="line"><span class="lineno"> 54</span> std::cout &lt;&lt; i &lt;&lt; <span class="stringliteral">&quot; - &quot;</span> &lt;&lt; minIndex &lt;&lt; <span class="stringliteral">&quot;\t&quot;</span> &lt;&lt; <a class="code hl_namespace" href="../../df/dce/namespacegraph.html">graph</a>[i][minIndex]</div>
<div class="line"><span class="lineno"> 54</span> std::cout &lt;&lt; i &lt;&lt; <span class="stringliteral">&quot; - &quot;</span> &lt;&lt; minIndex &lt;&lt; <span class="stringliteral">&quot;\t&quot;</span> &lt;&lt; graph[i][minIndex]</div>
<div class="line"><span class="lineno"> 55</span> &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div>
<div class="line"><span class="lineno"> 56</span> }</div>
<div class="line"><span class="lineno"> 57</span>}</div>
@@ -278,7 +278,7 @@ template&lt;typename T , std::size_t N, std::size_t M&gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d2/d90/namespacegreedy__algorithms.html">greedy_algorithms</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: probability::windowed_median::WindowedMedian Pages: 1 -->
<svg width="202pt" height="116pt"

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: probability::windowed_median::WindowedMedian Pages: 1 -->
<svg width="202pt" height="116pt"

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: range_queries/sparse_table_range_queries.cpp Source File</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -124,14 +124,15 @@ $(function(){initNavTree('d2/d96/sparse__table__range__queries_8cpp_source.html'
<div class="headertitle"><div class="title">sparse_table_range_queries.cpp</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include &lt;algorithm&gt;</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#include &lt;cassert&gt;</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="preprocessor">#include &lt;iostream&gt;</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="preprocessor">#include &lt;vector&gt;</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="keyword">namespace </span><a class="code hl_namespace" href="../../dd/d69/namespacerange__queries.html">range_queries</a> {</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span><span class="keyword">namespace </span><a class="code hl_namespace" href="../../d9/d55/namespacesparse__table.html">sparse_table</a> {</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span><span class="keyword">namespace </span>sparse_table {</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span>std::vector&lt;T&gt; computeLogs(<span class="keyword">const</span> std::vector&lt;T&gt;&amp; A) {</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> <span class="keywordtype">int</span> n = A.size();</div>
@@ -142,7 +143,7 @@ $(function(){initNavTree('d2/d96/sparse__table__range__queries_8cpp_source.html'
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> }</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">return</span> logs;</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span>}</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span></div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span><span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span>std::vector&lt;std::vector&lt;T&gt; &gt; buildTable(<span class="keyword">const</span> std::vector&lt;T&gt;&amp; A,</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keyword">const</span> std::vector&lt;T&gt;&amp; logs) {</div>
@@ -162,7 +163,7 @@ $(function(){initNavTree('d2/d96/sparse__table__range__queries_8cpp_source.html'
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> }</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <span class="keywordflow">return</span> table;</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span>}</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> </div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span></div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span><span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span><span class="keywordtype">int</span> getMinimum(<span class="keywordtype">int</span> beg, <span class="keywordtype">int</span> end, <span class="keyword">const</span> std::vector&lt;T&gt;&amp; logs,</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> <span class="keyword">const</span> std::vector&lt;std::vector&lt;T&gt; &gt;&amp; table) {</div>
@@ -172,7 +173,7 @@ $(function(){initNavTree('d2/d96/sparse__table__range__queries_8cpp_source.html'
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span>}</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span>} <span class="comment">// namespace sparse_table</span></div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span>} <span class="comment">// namespace range_queries</span></div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> </div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span></div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span><span class="keywordtype">int</span> <a class="code hl_function" href="../../dd/d1e/generate__parentheses_8cpp.html#gae66f6b31b5ad750f1fe042a706a4e3d4">main</a>() {</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> std::vector&lt;int&gt; A{1, 2, 0, 3, 9};</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> std::vector&lt;int&gt; logs = range_queries::sparse_table::computeLogs(A);</div>
@@ -185,14 +186,13 @@ $(function(){initNavTree('d2/d96/sparse__table__range__queries_8cpp_source.html'
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span>}</div>
<div class="ttc" id="agenerate__parentheses_8cpp_html_gae66f6b31b5ad750f1fe042a706a4e3d4"><div class="ttname"><a href="../../dd/d1e/generate__parentheses_8cpp.html#gae66f6b31b5ad750f1fe042a706a4e3d4">main</a></div><div class="ttdeci">int main()</div><div class="ttdoc">Main function.</div><div class="ttdef"><b>Definition</b> <a href="../../dd/d1e/generate__parentheses_8cpp_source.html#l00110">generate_parentheses.cpp:110</a></div></div>
<div class="ttc" id="anamespacerange__queries_html"><div class="ttname"><a href="../../dd/d69/namespacerange__queries.html">range_queries</a></div><div class="ttdoc">for std::vector</div><div class="ttdef"><b>Definition</b> <a href="../../d6/d2e/fenwick__tree_8cpp_source.html#l00028">fenwick_tree.cpp:28</a></div></div>
<div class="ttc" id="anamespacesparse__table_html"><div class="ttname"><a href="../../d9/d55/namespacesparse__table.html">sparse_table</a></div><div class="ttdoc">Functions for Implementation of Sparse Table</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_074119ce3a874b57120c49a0cc4bb5ad.html">range_queries</a></li><li class="navelem"><b>sparse_table_range_queries.cpp</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: others::iterative_tree_traversals::Node Struct Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -218,7 +218,7 @@ Public Attributes</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d0/d6f/namespaceothers.html">others</a></li><li class="navelem"><b>iterative_tree_traversals</b></li><li class="navelem"><a class="el" href="../../d2/d9a/structothers_1_1iterative__tree__traversals_1_1_node.html">Node</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: dynamic_programming/matrix_chain_multiplication.cpp Source File</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -194,7 +194,7 @@ $(function(){initNavTree('d2/da2/matrix__chain__multiplication_8cpp_source.html'
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_8a20dd5bfd5341a725342bf72b6b686f.html">dynamic_programming</a></li><li class="navelem"><b>matrix_chain_multiplication.cpp</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: find_non_repeating_integer Namespace Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -135,7 +135,7 @@ $(function(){initNavTree('d2/da7/namespacefind__non__repeating__integer.html','.
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d2/da7/namespacefind__non__repeating__integer.html">find_non_repeating_integer</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: greedy_algorithms::dijkstra::Graph Class Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -176,7 +176,7 @@ Public Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel explicit">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -237,7 +237,7 @@ Public Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -303,7 +303,7 @@ Public Attributes</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d2/d90/namespacegreedy__algorithms.html">greedy_algorithms</a></li><li class="navelem"><a class="el" href="../../d2/d2f/namespacegreedy__algorithms_1_1dijkstra.html">dijkstra</a></li><li class="navelem"><a class="el" href="../../d2/daa/classgreedy__algorithms_1_1dijkstra_1_1_graph.html">Graph</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: operations_on_datastructures::inorder_traversal_of_bst::Node Pages: 1 -->
<svg width="200pt" height="39pt"

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: operations_on_datastructures::inorder_traversal_of_bst::Node Pages: 1 -->
<svg width="200pt" height="39pt"

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: sieve_of_eratosthenes Namespace Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -135,7 +135,7 @@ $(function(){initNavTree('d2/db0/namespacesieve__of__eratosthenes.html','../../'
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d2/db0/namespacesieve__of__eratosthenes.html">sieve_of_eratosthenes</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -0,0 +1,140 @@
<!-- HTML header for doxygen 1.12.0-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: Member List</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@xpack-3rd-party/doxygen-awesome-css@2.2.0-1/doxygen-awesome-darkmode-toggle.js"></script>
<script type="text/javascript">
DoxygenAwesomeDarkModeToggle.init()
</script>
<script type="text/javascript" src="../../clipboard.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../navtreedata.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../cookie.js"></script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/javascript">
window.MathJax = {
options: {
ignoreHtmlClass: 'tex2jax_ignore',
processHtmlClass: 'tex2jax_process'
},
loader: {
load: ['[tex]/ams']
},
tex: {
macros: {},
packages: ['base','configmacros','ams']
}
};
</script>
<script type="text/javascript" id="MathJax-script" async="async" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml.js"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
<link href="../../doxygen-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectlogo"><img alt="Logo" src="../../project_logo.png"/></td>
<td id="projectalign">
<div id="projectname">TheAlgorithms/C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">All the algorithms implemented in C++</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(1); });
/* @license-end */
</script>
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('../../',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){initNavTree('d7/dfc/classvector.html','../../'); initResizable(true); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">vector&lt; T &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="../../d7/dfc/classvector.html">vector&lt; T &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="../../d7/dfc/classvector.html#a2396209900e8f592db1f0b2467f7d899">elements</a></td><td class="entry"><a class="el" href="../../d7/dfc/classvector.html">vector&lt; T &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>
</html>

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: data_structures::treap::Treap Pages: 1 -->
<svg width="272pt" height="150pt"

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: data_structures::treap::Treap Pages: 1 -->
<svg width="272pt" height="150pt"

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: cpu_scheduling_algorithms/non_preemptive_sjf_scheduling.cpp Pages: 1 -->
<!--zoomable 94 -->

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: cpu_scheduling_algorithms/non_preemptive_sjf_scheduling.cpp Pages: 1 -->
<svg width="552pt" height="94pt"

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 6.9 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: stack_linkedList Class Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -172,7 +172,7 @@ Public Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -200,7 +200,7 @@ Public Attributes</h2></td></tr>
<p class="definition">Definition at line <a class="el" href="../../de/d5b/queue__using__linkedlist_8cpp_source.html#l00032">32</a> of file <a class="el" href="../../de/d5b/queue__using__linkedlist_8cpp_source.html">queue_using_linkedlist.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 32</span> {</div>
<div class="line"><span class="lineno"> 33</span> <a class="code hl_struct" href="../../d0/dff/structlinkedlist.html">linkedlist</a> *temp;</div>
<div class="line"><span class="lineno"> 33</span> linkedlist *temp;</div>
<div class="line"><span class="lineno"> 34</span> <span class="keywordtype">int</span> ele;</div>
<div class="line"><span class="lineno"> 35</span> <span class="keywordflow">if</span> (front == NULL)</div>
<div class="line"><span class="lineno"> 36</span> std::cout &lt;&lt; <span class="stringliteral">&quot;\nStack is empty&quot;</span>;</div>
@@ -214,7 +214,6 @@ Public Attributes</h2></td></tr>
<div class="line"><span class="lineno"> 44</span> }</div>
<div class="line"><span class="lineno"> 45</span> <span class="keywordflow">return</span> ele;</div>
<div class="line"><span class="lineno"> 46</span>}</div>
<div class="ttc" id="astructlinkedlist_html"><div class="ttname"><a href="../../d0/dff/structlinkedlist.html">linkedlist</a></div><div class="ttdef"><b>Definition</b> <a href="../../de/d5b/queue__using__linkedlist_8cpp_source.html#l00006">queue_using_linkedlist.cpp:6</a></div></div>
</div><!-- fragment -->
</div>
</div>
@@ -239,7 +238,7 @@ Public Attributes</h2></td></tr>
<div class="line"><span class="lineno"> 49</span> std::cout &lt;&lt; <span class="stringliteral">&quot;\nStack is empty&quot;</span>;</div>
<div class="line"><span class="lineno"> 50</span> </div>
<div class="line"><span class="lineno"> 51</span> <span class="keywordflow">else</span> {</div>
<div class="line"><span class="lineno"> 52</span> <a class="code hl_struct" href="../../d0/dff/structlinkedlist.html">linkedlist</a> *temp;</div>
<div class="line"><span class="lineno"> 52</span> linkedlist *temp;</div>
<div class="line"><span class="lineno"> 53</span> temp = front;</div>
<div class="line"><span class="lineno"> 54</span> <span class="keywordflow">while</span> (temp != NULL) {</div>
<div class="line"><span class="lineno"> 55</span> std::cout &lt;&lt; temp-&gt;data &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div>
@@ -267,7 +266,7 @@ Public Attributes</h2></td></tr>
<p class="definition">Definition at line <a class="el" href="../../de/d5b/queue__using__linkedlist_8cpp_source.html#l00020">20</a> of file <a class="el" href="../../de/d5b/queue__using__linkedlist_8cpp_source.html">queue_using_linkedlist.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 20</span> {</div>
<div class="line"><span class="lineno"> 21</span> <a class="code hl_struct" href="../../d0/dff/structlinkedlist.html">linkedlist</a> *temp = <span class="keyword">new</span> <a class="code hl_struct" href="../../d0/dff/structlinkedlist.html">linkedlist</a>();</div>
<div class="line"><span class="lineno"> 21</span> linkedlist *temp = <span class="keyword">new</span> linkedlist();</div>
<div class="line"><span class="lineno"> 22</span> temp-&gt;data = ele;</div>
<div class="line"><span class="lineno"> 23</span> temp-&gt;next = NULL;</div>
<div class="line"><span class="lineno"> 24</span> </div>
@@ -323,7 +322,7 @@ Public Attributes</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d2/dc4/classstack__linked_list.html">stack_linkedList</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: dynamic_programming/armstrong_number_templated.cpp Pages: 1 -->
<svg width="189pt" height="94pt"

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: dynamic_programming/armstrong_number_templated.cpp Pages: 1 -->
<svg width="189pt" height="94pt"

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: data_structures::Stack&lt; T &gt; Class Template Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -194,7 +194,7 @@ class data_structures::Stack&lt; T &gt;</div><p>Class representation of a stack.
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -208,7 +208,7 @@ template&lt;typename T &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -222,7 +222,8 @@ template&lt;typename T &gt; </div>
</dl>
<p class="definition">Definition at line <a class="el" href="../../d8/d96/stack__using__array_8cpp_source.html#l00028">28</a> of file <a class="el" href="../../d8/d96/stack__using__array_8cpp_source.html">stack_using_array.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 28</span>: <a class="code hl_variable" href="#a88a10062c0662a385f172669f2f19b86">stackSize</a>(size), <a class="code hl_variable" href="#a71afc94746d47fb2c0c4fa4b612edee6">stackIndex</a>(-1), <a class="code hl_variable" href="#a3f912a0e9bed5b24b206584e3010dce3">stack</a>(<span class="keyword">new</span> T[size]) {}</div>
<div class="fragment"><div class="line"><span class="lineno"> 28</span>: <a class="code hl_variable" href="#a88a10062c0662a385f172669f2f19b86">stackSize</a>(<a class="code hl_class" href="../../d2/dc8/classdata__structures_1_1_stack.html">size</a>), <a class="code hl_variable" href="#a71afc94746d47fb2c0c4fa4b612edee6">stackIndex</a>(-1), <a class="code hl_variable" href="#a3f912a0e9bed5b24b206584e3010dce3">stack</a>(<span class="keyword">new</span> <a class="code hl_class" href="../../d2/dc8/classdata__structures_1_1_stack.html">T</a>[<a class="code hl_class" href="../../d2/dc8/classdata__structures_1_1_stack.html">size</a>]) {}</div>
<div class="ttc" id="aclassdata__structures_1_1_stack_html"><div class="ttname"><a href="../../d2/dc8/classdata__structures_1_1_stack.html">data_structures::Stack</a></div><div class="ttdoc">Class representation of a stack.</div><div class="ttdef"><b>Definition</b> <a href="../../d8/d96/stack__using__array_8cpp_source.html#l00016">stack_using_array.cpp:16</a></div></div>
<div class="ttc" id="aclassdata__structures_1_1_stack_html_a3f912a0e9bed5b24b206584e3010dce3"><div class="ttname"><a href="#a3f912a0e9bed5b24b206584e3010dce3">data_structures::Stack::stack</a></div><div class="ttdeci">std::unique_ptr&lt; T[]&gt; stack</div><div class="ttdoc">Smart pointer to the stack array.</div><div class="ttdef"><b>Definition</b> <a href="../../d8/d96/stack__using__array_8cpp_source.html#l00018">stack_using_array.cpp:18</a></div></div>
<div class="ttc" id="aclassdata__structures_1_1_stack_html_a71afc94746d47fb2c0c4fa4b612edee6"><div class="ttname"><a href="#a71afc94746d47fb2c0c4fa4b612edee6">data_structures::Stack::stackIndex</a></div><div class="ttdeci">int stackIndex</div><div class="ttdoc">Index pointing to the top element of the stack.</div><div class="ttdef"><b>Definition</b> <a href="../../d8/d96/stack__using__array_8cpp_source.html#l00020">stack_using_array.cpp:20</a></div></div>
<div class="ttc" id="aclassdata__structures_1_1_stack_html_a88a10062c0662a385f172669f2f19b86"><div class="ttname"><a href="#a88a10062c0662a385f172669f2f19b86">data_structures::Stack::stackSize</a></div><div class="ttdeci">int stackSize</div><div class="ttdoc">Maximum size of the stack.</div><div class="ttdef"><b>Definition</b> <a href="../../d8/d96/stack__using__array_8cpp_source.html#l00019">stack_using_array.cpp:19</a></div></div>
@@ -236,7 +237,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -250,7 +251,7 @@ template&lt;typename T &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -267,12 +268,11 @@ template&lt;typename T &gt; </div>
<p class="definition">Definition at line <a class="el" href="../../d8/d96/stack__using__array_8cpp_source.html#l00097">97</a> of file <a class="el" href="../../d8/d96/stack__using__array_8cpp_source.html">stack_using_array.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 97</span> {</div>
<div class="line"><span class="lineno"> 98</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="#a04e2e7cb58b2de6d3a15053bfaaf6080">empty</a>()) {</div>
<div class="line"><span class="lineno"> 99</span> <span class="keywordflow">throw</span> std::out_of_range(<span class="stringliteral">&quot;Stack underflow&quot;</span>);</div>
<div class="line"><span class="lineno"> 99</span> <span class="keywordflow">throw</span> <a class="code hl_class" href="../../d2/dc8/classdata__structures_1_1_stack.html">std::out_of_range</a>(<span class="stringliteral">&quot;Stack underflow&quot;</span>);</div>
<div class="line"><span class="lineno"> 100</span> }</div>
<div class="line"><span class="lineno"> 101</span> <span class="keywordflow">return</span> <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>[0];</div>
<div class="line"><span class="lineno"> 101</span> <span class="keywordflow">return</span> <a class="code hl_variable" href="#a3f912a0e9bed5b24b206584e3010dce3">stack</a>[0];</div>
<div class="line"><span class="lineno"> 102</span> }</div>
<div class="ttc" id="aclassdata__structures_1_1_stack_html_a04e2e7cb58b2de6d3a15053bfaaf6080"><div class="ttname"><a href="#a04e2e7cb58b2de6d3a15053bfaaf6080">data_structures::Stack::empty</a></div><div class="ttdeci">bool empty() const</div><div class="ttdoc">Checks if the stack is empty.</div><div class="ttdef"><b>Definition</b> <a href="../../d8/d96/stack__using__array_8cpp_source.html#l00041">stack_using_array.cpp:41</a></div></div>
<div class="ttc" id="aclassstack_html"><div class="ttname"><a href="../../d1/dc2/classstack.html">stack</a></div><div class="ttdoc">for std::invalid_argument</div><div class="ttdef"><b>Definition</b> <a href="../../df/d47/stack_8hpp_source.html#l00019">stack.hpp:19</a></div></div>
</div><!-- fragment -->
</div>
</div>
@@ -282,7 +282,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -296,7 +296,7 @@ template&lt;typename T &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -315,7 +315,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -329,7 +329,7 @@ template&lt;typename T &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -348,7 +348,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -362,7 +362,7 @@ template&lt;typename T &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -379,9 +379,9 @@ template&lt;typename T &gt; </div>
<p class="definition">Definition at line <a class="el" href="../../d8/d96/stack__using__array_8cpp_source.html#l00062">62</a> of file <a class="el" href="../../d8/d96/stack__using__array_8cpp_source.html">stack_using_array.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 62</span> {</div>
<div class="line"><span class="lineno"> 63</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="#a04e2e7cb58b2de6d3a15053bfaaf6080">empty</a>()) {</div>
<div class="line"><span class="lineno"> 64</span> <span class="keywordflow">throw</span> std::out_of_range(<span class="stringliteral">&quot;Stack underflow&quot;</span>);</div>
<div class="line"><span class="lineno"> 64</span> <span class="keywordflow">throw</span> <a class="code hl_class" href="../../d2/dc8/classdata__structures_1_1_stack.html">std::out_of_range</a>(<span class="stringliteral">&quot;Stack underflow&quot;</span>);</div>
<div class="line"><span class="lineno"> 65</span> }</div>
<div class="line"><span class="lineno"> 66</span> <span class="keywordflow">return</span> <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>[<a class="code hl_variable" href="#a71afc94746d47fb2c0c4fa4b612edee6">stackIndex</a>--];</div>
<div class="line"><span class="lineno"> 66</span> <span class="keywordflow">return</span> <a class="code hl_variable" href="#a3f912a0e9bed5b24b206584e3010dce3">stack</a>[<a class="code hl_variable" href="#a71afc94746d47fb2c0c4fa4b612edee6">stackIndex</a>--];</div>
<div class="line"><span class="lineno"> 67</span> }</div>
</div><!-- fragment -->
</div>
@@ -392,7 +392,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -406,7 +406,7 @@ template&lt;typename T &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -422,9 +422,9 @@ template&lt;typename T &gt; </div>
<p class="definition">Definition at line <a class="el" href="../../d8/d96/stack__using__array_8cpp_source.html#l00048">48</a> of file <a class="el" href="../../d8/d96/stack__using__array_8cpp_source.html">stack_using_array.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 48</span> {</div>
<div class="line"><span class="lineno"> 49</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="#aa753346c8ee5f21d4f4482398fe6d5c1">full</a>()) {</div>
<div class="line"><span class="lineno"> 50</span> <span class="keywordflow">throw</span> std::out_of_range(<span class="stringliteral">&quot;Stack overflow&quot;</span>);</div>
<div class="line"><span class="lineno"> 50</span> <span class="keywordflow">throw</span> <a class="code hl_class" href="../../d2/dc8/classdata__structures_1_1_stack.html">std::out_of_range</a>(<span class="stringliteral">&quot;Stack overflow&quot;</span>);</div>
<div class="line"><span class="lineno"> 51</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><span class="lineno"> 52</span> <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>[++<a class="code hl_variable" href="#a71afc94746d47fb2c0c4fa4b612edee6">stackIndex</a>] = element;</div>
<div class="line"><span class="lineno"> 52</span> <a class="code hl_variable" href="#a3f912a0e9bed5b24b206584e3010dce3">stack</a>[++<a class="code hl_variable" href="#a71afc94746d47fb2c0c4fa4b612edee6">stackIndex</a>] = <a class="code hl_class" href="../../d2/dc8/classdata__structures_1_1_stack.html">element</a>;</div>
<div class="line"><span class="lineno"> 53</span> }</div>
<div class="line"><span class="lineno"> 54</span> }</div>
<div class="ttc" id="aclassdata__structures_1_1_stack_html_aa753346c8ee5f21d4f4482398fe6d5c1"><div class="ttname"><a href="#aa753346c8ee5f21d4f4482398fe6d5c1">data_structures::Stack::full</a></div><div class="ttdeci">bool full() const</div><div class="ttdoc">Checks if the stack is full.</div><div class="ttdef"><b>Definition</b> <a href="../../d8/d96/stack__using__array_8cpp_source.html#l00035">stack_using_array.cpp:35</a></div></div>
@@ -437,7 +437,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -451,7 +451,7 @@ template&lt;typename T &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -460,8 +460,8 @@ template&lt;typename T &gt; </div>
<p class="definition">Definition at line <a class="el" href="../../d8/d96/stack__using__array_8cpp_source.html#l00072">72</a> of file <a class="el" href="../../d8/d96/stack__using__array_8cpp_source.html">stack_using_array.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 72</span> {</div>
<div class="line"><span class="lineno"> 73</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt;= <a class="code hl_variable" href="#a71afc94746d47fb2c0c4fa4b612edee6">stackIndex</a>; i++) {</div>
<div class="line"><span class="lineno"> 74</span> std::cout &lt;&lt; <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>[i] &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div>
<div class="line"><span class="lineno"> 73</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> <a class="code hl_class" href="../../d2/dc8/classdata__structures_1_1_stack.html">i</a> = 0; <a class="code hl_class" href="../../d2/dc8/classdata__structures_1_1_stack.html">i</a> &lt;= <a class="code hl_variable" href="#a71afc94746d47fb2c0c4fa4b612edee6">stackIndex</a>; <a class="code hl_class" href="../../d2/dc8/classdata__structures_1_1_stack.html">i</a>++) {</div>
<div class="line"><span class="lineno"> 74</span> <a class="code hl_class" href="../../d2/dc8/classdata__structures_1_1_stack.html">std::cout</a> &lt;&lt; <a class="code hl_variable" href="#a3f912a0e9bed5b24b206584e3010dce3">stack</a>[<a class="code hl_class" href="../../d2/dc8/classdata__structures_1_1_stack.html">i</a>] &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div>
<div class="line"><span class="lineno"> 75</span> }</div>
<div class="line"><span class="lineno"> 76</span> }</div>
</div><!-- fragment -->
@@ -473,7 +473,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -487,7 +487,7 @@ template&lt;typename T &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -504,9 +504,9 @@ template&lt;typename T &gt; </div>
<p class="definition">Definition at line <a class="el" href="../../d8/d96/stack__using__array_8cpp_source.html#l00084">84</a> of file <a class="el" href="../../d8/d96/stack__using__array_8cpp_source.html">stack_using_array.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 84</span> {</div>
<div class="line"><span class="lineno"> 85</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="#a04e2e7cb58b2de6d3a15053bfaaf6080">empty</a>()) {</div>
<div class="line"><span class="lineno"> 86</span> <span class="keywordflow">throw</span> std::out_of_range(<span class="stringliteral">&quot;Stack underflow&quot;</span>);</div>
<div class="line"><span class="lineno"> 86</span> <span class="keywordflow">throw</span> <a class="code hl_class" href="../../d2/dc8/classdata__structures_1_1_stack.html">std::out_of_range</a>(<span class="stringliteral">&quot;Stack underflow&quot;</span>);</div>
<div class="line"><span class="lineno"> 87</span> }</div>
<div class="line"><span class="lineno"> 88</span> <span class="keywordflow">return</span> <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>[<a class="code hl_variable" href="#a71afc94746d47fb2c0c4fa4b612edee6">stackIndex</a>];</div>
<div class="line"><span class="lineno"> 88</span> <span class="keywordflow">return</span> <a class="code hl_variable" href="#a3f912a0e9bed5b24b206584e3010dce3">stack</a>[<a class="code hl_variable" href="#a71afc94746d47fb2c0c4fa4b612edee6">stackIndex</a>];</div>
<div class="line"><span class="lineno"> 89</span> }</div>
</div><!-- fragment -->
</div>
@@ -518,7 +518,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -529,7 +529,7 @@ template&lt;typename T &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -546,7 +546,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -557,7 +557,7 @@ template&lt;typename T &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -574,7 +574,7 @@ template&lt;typename T &gt; </div>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
@@ -585,7 +585,7 @@ template&lt;typename T &gt; </div>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -605,7 +605,7 @@ template&lt;typename T &gt; </div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d5/d3c/namespacedata__structures.html">data_structures</a></li><li class="navelem"><a class="el" href="../../d2/dc8/classdata__structures_1_1_stack.html">Stack</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: Member List</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -136,7 +136,7 @@ $(function(){initNavTree('d9/d12/classothers_1_1iterative__tree__traversals_1_1_
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: statistics Namespace Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -145,7 +145,7 @@ Classes</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d2/dcf/namespacestatistics.html">statistics</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: std::is_integral&lt; uint128_t &gt; Struct Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -146,7 +146,7 @@ Collaboration diagram for std::is_integral&lt; uint128_t &gt;:</div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>std</b></li><li class="navelem"><a class="el" href="../../d2/dd4/structstd_1_1is__integral_3_01uint128__t_01_4.html">is_integral&lt; uint128_t &gt;</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: gcd_of_n_numbers Namespace Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -135,7 +135,7 @@ $(function(){initNavTree('d2/ddb/namespacegcd__of__n__numbers.html','../../'); i
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d2/ddb/namespacegcd__of__n__numbers.html">gcd_of_n_numbers</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: numerical_methods/gaussian_elimination.cpp Pages: 1 -->
<svg width="151pt" height="94pt"

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: numerical_methods/gaussian_elimination.cpp Pages: 1 -->
<svg width="151pt" height="94pt"

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: house_robber Namespace Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -135,7 +135,7 @@ $(function(){initNavTree('d2/de1/namespacehouse__robber.html','../../'); initRes
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d2/de1/namespacehouse__robber.html">house_robber</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: Member List</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -134,7 +134,7 @@ $(function(){initNavTree('db/d19/structlinear__probing_1_1_entry.html','../../')
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: dynamic_programming/maximum_circular_subarray.cpp Pages: 1 -->
<svg width="189pt" height="94pt"

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

View File

@@ -1,7 +1,7 @@
<?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 12.2.0 (20241103.1931)
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
-->
<!-- Title: dynamic_programming/maximum_circular_subarray.cpp Pages: 1 -->
<svg width="189pt" height="94pt"

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: runge_kutta Namespace Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -135,7 +135,7 @@ $(function(){initNavTree('d2/de7/namespacerunge__kutta.html','../../'); initResi
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d2/de7/namespacerunge__kutta.html">runge_kutta</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

View File

@@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: range_queries/heavy_light_decomposition.cpp File Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
@@ -60,7 +60,7 @@ window.MathJax = {
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -249,7 +249,7 @@ Functions</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
<span class="mlabels"><span class="mlabel static">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -317,7 +317,7 @@ Functions</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
<span class="mlabels"><span class="mlabel static">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -383,7 +383,7 @@ Functions</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
<span class="mlabels"><span class="mlabel static">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
@@ -437,7 +437,7 @@ Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_074119ce3a874b57120c49a0cc4bb5ad.html">range_queries</a></li><li class="navelem"><a class="el" href="../../d2/de9/heavy__light__decomposition_8cpp.html">heavy_light_decomposition.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>

Some files were not shown because too many files have changed in this diff Show More