Documentation for 341ed50da8

This commit is contained in:
github-actions
2021-09-03 19:56:17 +00:00
parent 52d0c55145
commit 08e8eb037e
3432 changed files with 71392 additions and 72953 deletions

View File

@@ -2,8 +2,8 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: numerical_methods/brent_method_extrema.cpp File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@@ -17,9 +17,9 @@
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
@@ -32,8 +32,7 @@
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Algorithms_in_C++
&#160;<span id="projectnumber">1.0.0</span>
<div id="projectname">Algorithms_in_C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">Set of algorithms implemented in C++.</div>
</td>
@@ -42,21 +41,22 @@
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<!-- Generated by Doxygen 1.9.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search",'Search','.html');
/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
@@ -70,7 +70,7 @@ $(function() {
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('db/d01/brent__method__extrema_8cpp.html','../../'); initResizable(); });
/* @license-end */
</script>
@@ -93,12 +93,11 @@ $(document).ready(function(){initNavTree('db/d01/brent__method__extrema_8cpp.htm
<div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">brent_method_extrema.cpp File Reference</div> </div>
<div class="headertitle"><div class="title">brent_method_extrema.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Find real extrema of a univariate real function in a given interval using <a href="https://en.wikipedia.org/wiki/Brent%27s_method">Brent's method</a>.
<p>Find real extrema of a univariate real function in a given interval using <a href="https://en.wikipedia.org/wiki/Brent%27s_method" target="_blank">Brent's method</a>.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;cassert&gt;</code><br />
<code>#include &lt;cmath&gt;</code><br />
@@ -112,48 +111,45 @@ Include dependency graph for brent_method_extrema.cpp:</div>
</div>
</div>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a525335710b53cb064ca56b936120431e"><td class="memItemLeft" align="right" valign="top"><a id="a525335710b53cb064ca56b936120431e"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d01/brent__method__extrema_8cpp.html#a525335710b53cb064ca56b936120431e">_USE_MATH_DEFINES</a></td></tr>
<tr class="memitem:a525335710b53cb064ca56b936120431e"><td class="memItemLeft" align="right" valign="top"><a id="a525335710b53cb064ca56b936120431e" name="a525335710b53cb064ca56b936120431e"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>_USE_MATH_DEFINES</b></td></tr>
<tr class="memdesc:a525335710b53cb064ca56b936120431e"><td class="mdescLeft">&#160;</td><td class="mdescRight">required for MS Visual C++ <br /></td></tr>
<tr class="separator:a525335710b53cb064ca56b936120431e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a002b2f4894492820fe708b1b7e7c5e70"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d01/brent__method__extrema_8cpp.html#a002b2f4894492820fe708b1b7e7c5e70">EPSILON</a></td></tr>
<tr class="memdesc:a002b2f4894492820fe708b1b7e7c5e70"><td class="mdescLeft">&#160;</td><td class="mdescRight">system accuracy limit <a href="../../db/d01/brent__method__extrema_8cpp.html#a002b2f4894492820fe708b1b7e7c5e70">More...</a><br /></td></tr>
<tr class="separator:a002b2f4894492820fe708b1b7e7c5e70"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a1aa76a6d5fd4d333f9072beff1dc486b"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d01/brent__method__extrema_8cpp.html#a1aa76a6d5fd4d333f9072beff1dc486b">get_minima</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/utility/functional/function.html">std::function</a>&lt; double(double)&gt; &amp;f, double lim_a, double lim_b)</td></tr>
<tr class="memdesc:a1aa76a6d5fd4d333f9072beff1dc486b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the real root of a function in the given interval. <a href="../../db/d01/brent__method__extrema_8cpp.html#a1aa76a6d5fd4d333f9072beff1dc486b">More...</a><br /></td></tr>
<tr class="separator:a1aa76a6d5fd4d333f9072beff1dc486b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1440a7779ac56f47a3f355ce4a8c7da0"><td class="memItemLeft" align="right" valign="top"><a id="a1440a7779ac56f47a3f355ce4a8c7da0"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d01/brent__method__extrema_8cpp.html#a1440a7779ac56f47a3f355ce4a8c7da0">test1</a> ()</td></tr>
<tr class="memitem:a1440a7779ac56f47a3f355ce4a8c7da0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d01/brent__method__extrema_8cpp.html#a1440a7779ac56f47a3f355ce4a8c7da0">test1</a> ()</td></tr>
<tr class="memdesc:a1440a7779ac56f47a3f355ce4a8c7da0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test function to find root for the function \(f(x)= (x-2)^2\) in the interval \([1,5]\) <br />
Expected result = 2. <br /></td></tr>
Expected result = 2. <a href="../../db/d01/brent__method__extrema_8cpp.html#a1440a7779ac56f47a3f355ce4a8c7da0">More...</a><br /></td></tr>
<tr class="separator:a1440a7779ac56f47a3f355ce4a8c7da0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0283886819c7c140a023582b7269e2d0"><td class="memItemLeft" align="right" valign="top"><a id="a0283886819c7c140a023582b7269e2d0"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d01/brent__method__extrema_8cpp.html#a0283886819c7c140a023582b7269e2d0">test2</a> ()</td></tr>
<tr class="memitem:a0283886819c7c140a023582b7269e2d0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d01/brent__method__extrema_8cpp.html#a0283886819c7c140a023582b7269e2d0">test2</a> ()</td></tr>
<tr class="memdesc:a0283886819c7c140a023582b7269e2d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test function to find root for the function \(f(x)= x^{\frac{1}{x}}\) in the interval \([-2,10]\) <br />
Expected result: \(e\approx 2.71828182845904509\). <br /></td></tr>
Expected result: \(e\approx 2.71828182845904509\). <a href="../../db/d01/brent__method__extrema_8cpp.html#a0283886819c7c140a023582b7269e2d0">More...</a><br /></td></tr>
<tr class="separator:a0283886819c7c140a023582b7269e2d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d0455dd5c30adda100e95f0423c786e"><td class="memItemLeft" align="right" valign="top"><a id="a6d0455dd5c30adda100e95f0423c786e"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d01/brent__method__extrema_8cpp.html#a6d0455dd5c30adda100e95f0423c786e">test3</a> ()</td></tr>
<tr class="memitem:a6d0455dd5c30adda100e95f0423c786e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d01/brent__method__extrema_8cpp.html#a6d0455dd5c30adda100e95f0423c786e">test3</a> ()</td></tr>
<tr class="memdesc:a6d0455dd5c30adda100e95f0423c786e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test function to find <em>maxima</em> for the function \(f(x)= \cos x\) in the interval \([0,12]\) <br />
Expected result: \(\pi\approx 3.14159265358979312\). <br /></td></tr>
Expected result: \(\pi\approx 3.14159265358979312\). <a href="../../db/d01/brent__method__extrema_8cpp.html#a6d0455dd5c30adda100e95f0423c786e">More...</a><br /></td></tr>
<tr class="separator:a6d0455dd5c30adda100e95f0423c786e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d01/brent__method__extrema_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Find real extrema of a univariate real function in a given interval using <a href="https://en.wikipedia.org/wiki/Brent%27s_method">Brent's method</a>. </p>
<p>Refer the algorithm discoverer's publication <a href="https://maths-people.anu.edu.au/~brent/pd/rpb011i.pdf">online</a> and also associated book: </p><blockquote class="doxtable">
<p>R. P. Brent, Algorithms for Minimization without Derivatives, Prentice-Hall, Englewood Cliffs, New Jersey, 1973 </p>
<div class="textblock"><p >Find real extrema of a univariate real function in a given interval using <a href="https://en.wikipedia.org/wiki/Brent%27s_method" target="_blank">Brent's method</a>. </p>
<p >Refer the algorithm discoverer's publication <a href="https://maths-people.anu.edu.au/~brent/pd/rpb011i.pdf" target="_blank">online</a> and also associated book: </p><blockquote class="doxtable">
<p >R. P. Brent, Algorithms for Minimization without Derivatives, Prentice-Hall, Englewood Cliffs, New Jersey, 1973 </p>
</blockquote>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="../../d6/d7a/golden__search__extrema_8cpp.html" title="Find extrema of a univariate real function in a given interval using golden section search algorithm.">golden_search_extrema.cpp</a></dd></dl>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/kvedala">Krishna Vedala</a> </dd></dl>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/kvedala" target="_blank">Krishna Vedala</a> </dd></dl>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a002b2f4894492820fe708b1b7e7c5e70"></a>
<a id="a002b2f4894492820fe708b1b7e7c5e70" name="a002b2f4894492820fe708b1b7e7c5e70"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a002b2f4894492820fe708b1b7e7c5e70">&#9670;&nbsp;</a></span>EPSILON</h2>
<div class="memitem">
@@ -164,8 +160,8 @@ void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../.
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"> <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/sqrt.html">std::sqrt</a>( \</div>
<div class="line"> <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/types/numeric_limits.html">std::numeric_limits&lt;double&gt;::epsilon</a>())</div>
<b>Value:</b><div class="fragment"><div class="line"> <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/sqrt.html">std::sqrt</a>( \</div>
<div class="line"> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/types/numeric_limits.html">std::numeric_limits&lt;double&gt;::epsilon</a>())</div>
<div class="ttc" id="anumeric_limits_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/types/numeric_limits.html">std::numeric_limits</a></div></div>
<div class="ttc" id="asqrt_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/numeric/math/sqrt.html">std::sqrt</a></div><div class="ttdeci">T sqrt(T... args)</div></div>
</div><!-- fragment -->
@@ -174,7 +170,7 @@ void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../.
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="a1aa76a6d5fd4d333f9072beff1dc486b"></a>
<a id="a1aa76a6d5fd4d333f9072beff1dc486b" name="a1aa76a6d5fd4d333f9072beff1dc486b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1aa76a6d5fd4d333f9072beff1dc486b">&#9670;&nbsp;</a></span>get_minima()</h2>
<div class="memitem">
@@ -216,106 +212,106 @@ void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../.
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>root found in the interval </dd></dl>
<div class="fragment"><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; {</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; uint32_t iters = 0;</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; </div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keywordflow">if</span> (lim_a &gt; lim_b) {</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/swap.html">std::swap</a>(lim_a, lim_b);</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (std::abs(lim_a - lim_b) &lt;= <a class="code" href="../../db/d01/brent__method__extrema_8cpp.html#a002b2f4894492820fe708b1b7e7c5e70">EPSILON</a>) {</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> &lt;&lt; <span class="stringliteral">&quot;Search range must be greater than &quot;</span> &lt;&lt; <a class="code" href="../../db/d01/brent__method__extrema_8cpp.html#a002b2f4894492820fe708b1b7e7c5e70">EPSILON</a> &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordflow">return</span> lim_a;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; }</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; </div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="comment">// golden ratio value</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keyword">const</span> <span class="keywordtype">double</span> M_GOLDEN_RATIO = (3.f - <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/sqrt.html">std::sqrt</a>(5.f)) / 2.f;</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; </div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordtype">double</span> v = lim_a + M_GOLDEN_RATIO * (lim_b - lim_a);</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordtype">double</span> u, w = v, x = v;</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordtype">double</span> fu, fv = f(v);</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordtype">double</span> fw = fv, fx = fv;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; </div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordtype">double</span> mid_point = (lim_a + lim_b) / 2.f;</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordtype">double</span> p = 0, q = 0, r = 0;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; </div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordtype">double</span> d, e = 0;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordtype">double</span> tolerance, tolerance2;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; </div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">do</span> {</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; mid_point = (lim_a + lim_b) / 2.f;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; tolerance = <a class="code" href="../../db/d01/brent__method__extrema_8cpp.html#a002b2f4894492820fe708b1b7e7c5e70">EPSILON</a> * std::abs(x);</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; tolerance2 = 2 * tolerance;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; </div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">if</span> (std::abs(e) &gt; tolerance2) {</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="comment">// fit parabola</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; r = (x - w) * (fx - fv);</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; q = (x - v) * (fx - fw);</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; p = (x - v) * q - (x - w) * r;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; q = 2.f * (q - r);</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">if</span> (q &gt; 0)</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; p = -p;</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; q = -q;</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; r = e;</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; e = d;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; }</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; </div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">if</span> (std::abs(p) &lt; std::abs(0.5 * q * r) &amp;&amp; p &lt; q * (lim_b - x)) {</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="comment">// parabolic interpolation step</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; d = p / q;</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; u = x + d;</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">if</span> (u - lim_a &lt; tolerance2 || lim_b - u &lt; tolerance2)</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; d = x &lt; mid_point ? tolerance : -tolerance;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="comment">// golden section interpolation step</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; e = (x &lt; mid_point ? lim_b : lim_a) - x;</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; d = M_GOLDEN_RATIO * e;</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; }</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; </div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="comment">// evaluate not too close to x</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">if</span> (std::abs(d) &gt;= tolerance)</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; u = d;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (d &gt; 0)</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; u = tolerance;</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; u = -tolerance;</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; u += x;</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; fu = f(u);</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; </div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="comment">// update variables</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">if</span> (fu &lt;= fx) {</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">if</span> (u &lt; x)</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; lim_b = x;</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; lim_a = x;</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; v = w;</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; fv = fw;</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; w = x;</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; fw = fx;</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; x = u;</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; fx = fu;</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">if</span> (u &lt; x)</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; lim_a = u;</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; lim_b = u;</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">if</span> (fu &lt;= fw || x == w) {</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; v = w;</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; fv = fw;</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; w = u;</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; fw = fu;</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (fu &lt;= fv || v == x || v == w) {</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; v = u;</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; fv = fu;</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; }</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; </div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; iters++;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; } <span class="keywordflow">while</span> (std::abs(x - mid_point) &gt; (tolerance - (lim_b - lim_a) / 2.f));</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; </div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot; (iters: &quot;</span> &lt;&lt; iters &lt;&lt; <span class="stringliteral">&quot;) &quot;</span>;</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; </div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">return</span> x;</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;}</div>
<div class="fragment"><div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> {</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> uint32_t iters = 0;</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> </div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> <span class="keywordflow">if</span> (lim_a &gt; lim_b) {</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/swap.html">std::swap</a>(lim_a, lim_b);</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (std::abs(lim_a - lim_b) &lt;= <a class="code hl_define" href="../../db/d01/brent__method__extrema_8cpp.html#a002b2f4894492820fe708b1b7e7c5e70">EPSILON</a>) {</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> &lt;&lt; <span class="stringliteral">&quot;Search range must be greater than &quot;</span> &lt;&lt; <a class="code hl_define" href="../../db/d01/brent__method__extrema_8cpp.html#a002b2f4894492820fe708b1b7e7c5e70">EPSILON</a> &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <span class="keywordflow">return</span> lim_a;</div>
<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> </div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <span class="comment">// golden ratio value</span></div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <span class="keyword">const</span> <span class="keywordtype">double</span> M_GOLDEN_RATIO = (3.f - <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/sqrt.html">std::sqrt</a>(5.f)) / 2.f;</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> </div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="keywordtype">double</span> v = lim_a + M_GOLDEN_RATIO * (lim_b - lim_a);</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <span class="keywordtype">double</span> u, w = v, x = v;</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keywordtype">double</span> fu, fv = f(v);</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <span class="keywordtype">double</span> fw = fv, fx = fv;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> </div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="keywordtype">double</span> mid_point = (lim_a + lim_b) / 2.f;</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <span class="keywordtype">double</span> p = 0, q = 0, r = 0;</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> </div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordtype">double</span> d, e = 0;</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keywordtype">double</span> tolerance, tolerance2;</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> </div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">do</span> {</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> mid_point = (lim_a + lim_b) / 2.f;</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> tolerance = <a class="code hl_define" href="../../db/d01/brent__method__extrema_8cpp.html#a002b2f4894492820fe708b1b7e7c5e70">EPSILON</a> * std::abs(x);</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> tolerance2 = 2 * tolerance;</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">if</span> (std::abs(e) &gt; tolerance2) {</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="comment">// fit parabola</span></div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> r = (x - w) * (fx - fv);</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> q = (x - v) * (fx - fw);</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> p = (x - v) * q - (x - w) * r;</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> q = 2.f * (q - r);</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">if</span> (q &gt; 0)</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> p = -p;</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">else</span></div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> q = -q;</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> r = e;</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> e = d;</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> }</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> </div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">if</span> (std::abs(p) &lt; std::abs(0.5 * q * r) &amp;&amp; p &lt; q * (lim_b - x)) {</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="comment">// parabolic interpolation step</span></div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> d = p / q;</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> u = x + d;</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">if</span> (u - lim_a &lt; tolerance2 || lim_b - u &lt; tolerance2)</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> d = x &lt; mid_point ? tolerance : -tolerance;</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> <span class="comment">// golden section interpolation step</span></div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> e = (x &lt; mid_point ? lim_b : lim_a) - x;</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> d = M_GOLDEN_RATIO * e;</div>
<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> </div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <span class="comment">// evaluate not too close to x</span></div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="keywordflow">if</span> (std::abs(d) &gt;= tolerance)</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> u = d;</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (d &gt; 0)</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> u = tolerance;</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">else</span></div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> u = -tolerance;</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> u += x;</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> fu = f(u);</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> </div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <span class="comment">// update variables</span></div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <span class="keywordflow">if</span> (fu &lt;= fx) {</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> <span class="keywordflow">if</span> (u &lt; x)</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> lim_b = x;</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">else</span></div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> lim_a = x;</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> v = w;</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> fv = fw;</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> w = x;</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> fw = fx;</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> x = u;</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> fx = fu;</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">if</span> (u &lt; x)</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> lim_a = u;</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> <span class="keywordflow">else</span></div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> lim_b = u;</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> <span class="keywordflow">if</span> (fu &lt;= fw || x == w) {</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> v = w;</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> fv = fw;</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> w = u;</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> fw = fu;</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (fu &lt;= fv || v == x || v == w) {</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> v = u;</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> fv = fu;</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> }</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> }</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> </div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> iters++;</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> } <span class="keywordflow">while</span> (std::abs(x - mid_point) &gt; (tolerance - (lim_b - lim_a) / 2.f));</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> </div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot; (iters: &quot;</span> &lt;&lt; iters &lt;&lt; <span class="stringliteral">&quot;) &quot;</span>;</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> </div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> <span class="keywordflow">return</span> x;</div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span>}</div>
<div class="ttc" id="abasic_ostream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a></div></div>
<div class="ttc" id="abrent__method__extrema_8cpp_html_a002b2f4894492820fe708b1b7e7c5e70"><div class="ttname"><a href="../../db/d01/brent__method__extrema_8cpp.html#a002b2f4894492820fe708b1b7e7c5e70">EPSILON</a></div><div class="ttdeci">#define EPSILON</div><div class="ttdoc">system accuracy limit</div><div class="ttdef"><b>Definition:</b> brent_method_extrema.cpp:23</div></div>
<div class="ttc" id="aswap_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/algorithm/swap.html">std::swap</a></div><div class="ttdeci">T swap(T... args)</div></div>
@@ -328,7 +324,7 @@ Here is the call graph for this function:</div>
</div>
</div>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">&#9670;&nbsp;</a></span>main()</h2>
<div class="memitem">
@@ -343,19 +339,19 @@ Here is the call graph for this function:</div>
</tr>
</table>
</div><div class="memdoc">
<p>Main function </p>
<div class="fragment"><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; {</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a>.precision(18);</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; </div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Computations performed with machine epsilon: &quot;</span> &lt;&lt; <a class="code" href="../../db/d01/brent__method__extrema_8cpp.html#a002b2f4894492820fe708b1b7e7c5e70">EPSILON</a></div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; </div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <a class="code" href="../../db/d01/brent__method__extrema_8cpp.html#a1440a7779ac56f47a3f355ce4a8c7da0">test1</a>();</div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <a class="code" href="../../db/d01/brent__method__extrema_8cpp.html#a0283886819c7c140a023582b7269e2d0">test2</a>();</div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <a class="code" href="../../db/d01/brent__method__extrema_8cpp.html#a6d0455dd5c30adda100e95f0423c786e">test3</a>();</div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; </div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;}</div>
<p >Main function </p>
<div class="fragment"><div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> {</div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a>.precision(18);</div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> </div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Computations performed with machine epsilon: &quot;</span> &lt;&lt; <a class="code hl_define" href="../../db/d01/brent__method__extrema_8cpp.html#a002b2f4894492820fe708b1b7e7c5e70">EPSILON</a></div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> </div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> <a class="code hl_function" href="../../db/d01/brent__method__extrema_8cpp.html#a1440a7779ac56f47a3f355ce4a8c7da0">test1</a>();</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> <a class="code hl_function" href="../../db/d01/brent__method__extrema_8cpp.html#a0283886819c7c140a023582b7269e2d0">test2</a>();</div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> <a class="code hl_function" href="../../db/d01/brent__method__extrema_8cpp.html#a6d0455dd5c30adda100e95f0423c786e">test3</a>();</div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span> </div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span>}</div>
<div class="ttc" id="abrent__method__extrema_8cpp_html_a0283886819c7c140a023582b7269e2d0"><div class="ttname"><a href="../../db/d01/brent__method__extrema_8cpp.html#a0283886819c7c140a023582b7269e2d0">test2</a></div><div class="ttdeci">void test2()</div><div class="ttdoc">Test function to find root for the function in the interval Expected result: .</div><div class="ttdef"><b>Definition:</b> brent_method_extrema.cpp:165</div></div>
<div class="ttc" id="abrent__method__extrema_8cpp_html_a1440a7779ac56f47a3f355ce4a8c7da0"><div class="ttname"><a href="../../db/d01/brent__method__extrema_8cpp.html#a1440a7779ac56f47a3f355ce4a8c7da0">test1</a></div><div class="ttdeci">void test1()</div><div class="ttdoc">Test function to find root for the function in the interval Expected result = 2.</div><div class="ttdef"><b>Definition:</b> brent_method_extrema.cpp:143</div></div>
<div class="ttc" id="abrent__method__extrema_8cpp_html_a6d0455dd5c30adda100e95f0423c786e"><div class="ttname"><a href="../../db/d01/brent__method__extrema_8cpp.html#a6d0455dd5c30adda100e95f0423c786e">test3</a></div><div class="ttdeci">void test3()</div><div class="ttdoc">Test function to find maxima for the function in the interval Expected result: .</div><div class="ttdef"><b>Definition:</b> brent_method_extrema.cpp:188</div></div>
@@ -366,6 +362,133 @@ Here is the call graph for this function:</div>
</div>
</div>
</div>
</div>
<a id="a1440a7779ac56f47a3f355ce4a8c7da0" name="a1440a7779ac56f47a3f355ce4a8c7da0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1440a7779ac56f47a3f355ce4a8c7da0">&#9670;&nbsp;</a></span>test1()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void test1 </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Test function to find root for the function \(f(x)= (x-2)^2\) in the interval \([1,5]\) <br />
Expected result = 2. </p>
<div class="fragment"><div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> {</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> <span class="comment">// define the function to minimize as a lambda function</span></div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/utility/functional/function.html">std::function</a>&lt;double(<span class="keywordtype">double</span>)&gt; f1 = [](<span class="keywordtype">double</span> x) {</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> <span class="keywordflow">return</span> (x - 2) * (x - 2);</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> };</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> </div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Test 1.... &quot;</span>;</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> </div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> <span class="keywordtype">double</span> minima = <a class="code hl_function" href="../../db/d01/brent__method__extrema_8cpp.html#a1aa76a6d5fd4d333f9072beff1dc486b">get_minima</a>(f1, -1, 5);</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> </div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; minima &lt;&lt; <span class="stringliteral">&quot;...&quot;</span>;</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> </div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> assert(std::abs(minima - 2) &lt; <a class="code hl_define" href="../../db/d01/brent__method__extrema_8cpp.html#a002b2f4894492820fe708b1b7e7c5e70">EPSILON</a>);</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed\n&quot;</span>;</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span>}</div>
<div class="ttc" id="abrent__method__extrema_8cpp_html_a1aa76a6d5fd4d333f9072beff1dc486b"><div class="ttname"><a href="../../db/d01/brent__method__extrema_8cpp.html#a1aa76a6d5fd4d333f9072beff1dc486b">get_minima</a></div><div class="ttdeci">double get_minima(const std::function&lt; double(double)&gt; &amp;f, double lim_a, double lim_b)</div><div class="ttdoc">Get the real root of a function in the given interval.</div><div class="ttdef"><b>Definition:</b> brent_method_extrema.cpp:35</div></div>
<div class="ttc" id="afunction_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/utility/functional/function.html">std::function</a></div></div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="../../db/d01/brent__method__extrema_8cpp_a1440a7779ac56f47a3f355ce4a8c7da0_cgraph.svg" width="327" height="88"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</div>
</div>
</div>
<a id="a0283886819c7c140a023582b7269e2d0" name="a0283886819c7c140a023582b7269e2d0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0283886819c7c140a023582b7269e2d0">&#9670;&nbsp;</a></span>test2()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void test2 </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Test function to find root for the function \(f(x)= x^{\frac{1}{x}}\) in the interval \([-2,10]\) <br />
Expected result: \(e\approx 2.71828182845904509\). </p>
<div class="fragment"><div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> {</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> <span class="comment">// define the function to maximize as a lambda function</span></div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> <span class="comment">// since we are maximixing, we negated the function return value</span></div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/utility/functional/function.html">std::function</a>&lt;double(<span class="keywordtype">double</span>)&gt; func = [](<span class="keywordtype">double</span> x) {</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> <span class="keywordflow">return</span> -<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/pow.html">std::pow</a>(x, 1.f / x);</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> };</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> </div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Test 2.... &quot;</span>;</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> </div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> <span class="keywordtype">double</span> minima = <a class="code hl_function" href="../../db/d01/brent__method__extrema_8cpp.html#a1aa76a6d5fd4d333f9072beff1dc486b">get_minima</a>(func, -2, 5);</div>
<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> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; minima &lt;&lt; <span class="stringliteral">&quot; (&quot;</span> &lt;&lt; M_E &lt;&lt; <span class="stringliteral">&quot;)...&quot;</span>;</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> </div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> assert(std::abs(minima - M_E) &lt; <a class="code hl_define" href="../../db/d01/brent__method__extrema_8cpp.html#a002b2f4894492820fe708b1b7e7c5e70">EPSILON</a>);</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed\n&quot;</span>;</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span>}</div>
<div class="ttc" id="apow_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/numeric/math/pow.html">std::pow</a></div><div class="ttdeci">T pow(T... args)</div></div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="../../db/d01/brent__method__extrema_8cpp_a0283886819c7c140a023582b7269e2d0_cgraph.svg" width="327" height="114"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</div>
</div>
</div>
<a id="a6d0455dd5c30adda100e95f0423c786e" name="a6d0455dd5c30adda100e95f0423c786e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6d0455dd5c30adda100e95f0423c786e">&#9670;&nbsp;</a></span>test3()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void test3 </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Test function to find <em>maxima</em> for the function \(f(x)= \cos x\) in the interval \([0,12]\) <br />
Expected result: \(\pi\approx 3.14159265358979312\). </p>
<div class="fragment"><div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> {</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> <span class="comment">// define the function to maximize as a lambda function</span></div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> <span class="comment">// since we are maximixing, we negated the function return value</span></div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/utility/functional/function.html">std::function</a>&lt;double(<span class="keywordtype">double</span>)&gt; func = [](<span class="keywordtype">double</span> x) { <span class="keywordflow">return</span> <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/cos.html">std::cos</a>(x); };</div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> </div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Test 3.... &quot;</span>;</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> </div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> <span class="keywordtype">double</span> minima = <a class="code hl_function" href="../../db/d01/brent__method__extrema_8cpp.html#a1aa76a6d5fd4d333f9072beff1dc486b">get_minima</a>(func, -4, 12);</div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> </div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; minima &lt;&lt; <span class="stringliteral">&quot; (&quot;</span> &lt;&lt; M_PI &lt;&lt; <span class="stringliteral">&quot;)...&quot;</span>;</div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> </div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> assert(std::abs(minima - M_PI) &lt; <a class="code hl_define" href="../../db/d01/brent__method__extrema_8cpp.html#a002b2f4894492820fe708b1b7e7c5e70">EPSILON</a>);</div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed\n&quot;</span>;</div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span>}</div>
<div class="ttc" id="acos_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/numeric/math/cos.html">std::cos</a></div><div class="ttdeci">T cos(T... args)</div></div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="../../db/d01/brent__method__extrema_8cpp_a6d0455dd5c30adda100e95f0423c786e_cgraph.svg" width="327" height="114"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</div>
</div>
</div>
</div><!-- contents -->
@@ -374,7 +497,7 @@ Here is the call graph for this function:</div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_9c6faab82c22511b50177aa2e38e2780.html">numerical_methods</a></li><li class="navelem"><a class="el" href="../../db/d01/brent__method__extrema_8cpp.html">brent_method_extrema.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.9.1 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.2 </li>
</ul>
</div>
</body>

View File

@@ -0,0 +1,7 @@
<map id="test2" name="test2">
<area shape="rect" id="node1" title="Test function to find root for the function &#160;in the interval &#160;&#160;&#160;Expected result: ." alt="" coords="5,56,56,83"/>
<area shape="rect" id="node2" href="$db/d01/brent__method__extrema_8cpp.html#a1aa76a6d5fd4d333f9072beff1dc486b" title="Get the real root of a function in the given interval." alt="" coords="104,31,195,57"/>
<area shape="rect" id="node5" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/math/pow.html#" title=" " alt="" coords="113,81,185,108"/>
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/math/sqrt.html#" title=" " alt="" coords="247,5,317,32"/>
<area shape="rect" id="node4" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/swap.html#" title=" " alt="" coords="243,56,321,83"/>
</map>

View File

@@ -0,0 +1 @@
07a2610fa56c3c1116c699d944f4c856

View File

@@ -0,0 +1,82 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: test2 Pages: 1 -->
<svg width="245pt" height="85pt"
viewBox="0.00 0.00 245.00 85.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 81)">
<title>test2</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-81 241,-81 241,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title="Test function to find root for the function &#160;in the interval &#160;&#160;&#160;Expected result: .">
<polygon fill="#bfbfbf" stroke="black" points="0,-19.5 0,-38.5 38,-38.5 38,-19.5 0,-19.5"/>
<text text-anchor="middle" x="19" y="-26.5" font-family="Helvetica,sans-Serif" font-size="10.00">test2</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../db/d01/brent__method__extrema_8cpp.html#a1aa76a6d5fd4d333f9072beff1dc486b" target="_top" xlink:title="Get the real root of a function in the given interval.">
<polygon fill="white" stroke="black" points="74,-38.5 74,-57.5 142,-57.5 142,-38.5 74,-38.5"/>
<text text-anchor="middle" x="108" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_minima</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M38.03,-32.94C45.63,-34.6 54.83,-36.61 64.01,-38.61"/>
<polygon fill="midnightblue" stroke="midnightblue" points="63.36,-42.05 73.88,-40.77 64.85,-35.21 63.36,-42.05"/>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<title>Node5</title>
<g id="a_node5"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/numeric/math/pow.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="81,-0.5 81,-19.5 135,-19.5 135,-0.5 81,-0.5"/>
<text text-anchor="middle" x="108" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::pow</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<title>Node1&#45;&gt;Node5</title>
<path fill="none" stroke="midnightblue" d="M38.03,-25.06C47.48,-23 59.4,-20.39 70.67,-17.93"/>
<polygon fill="midnightblue" stroke="midnightblue" points="71.72,-21.29 80.74,-15.73 70.23,-14.45 71.72,-21.29"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/numeric/math/sqrt.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="181.5,-57.5 181.5,-76.5 233.5,-76.5 233.5,-57.5 181.5,-57.5"/>
<text text-anchor="middle" x="207.5" y="-64.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::sqrt</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node2&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M142.01,-54.43C151.42,-56.27 161.71,-58.27 171.25,-60.13"/>
<polygon fill="midnightblue" stroke="midnightblue" points="170.75,-63.6 181.23,-62.08 172.09,-56.73 170.75,-63.6"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/algorithm/swap.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="178,-19.5 178,-38.5 237,-38.5 237,-19.5 178,-19.5"/>
<text text-anchor="middle" x="207.5" y="-26.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::swap</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node2&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M142.01,-41.57C150.26,-39.96 159.18,-38.22 167.68,-36.57"/>
<polygon fill="midnightblue" stroke="midnightblue" points="168.62,-39.95 177.77,-34.6 167.28,-33.08 168.62,-39.95"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@@ -0,0 +1,6 @@
<map id="test1" name="test1">
<area shape="rect" id="node1" title="Test function to find root for the function &#160;in the interval &#160;&#160;&#160;Expected result = 2." alt="" coords="5,31,56,57"/>
<area shape="rect" id="node2" href="$db/d01/brent__method__extrema_8cpp.html#a1aa76a6d5fd4d333f9072beff1dc486b" title="Get the real root of a function in the given interval." alt="" coords="104,31,195,57"/>
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/math/sqrt.html#" title=" " alt="" coords="247,5,317,32"/>
<area shape="rect" id="node4" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/swap.html#" title=" " alt="" coords="243,56,321,83"/>
</map>

View File

@@ -0,0 +1 @@
af2c8af6e7e431c1063353c2dcefe6c3

View File

@@ -0,0 +1,67 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: test1 Pages: 1 -->
<svg width="245pt" height="66pt"
viewBox="0.00 0.00 245.00 66.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 62)">
<title>test1</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-62 241,-62 241,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title="Test function to find root for the function &#160;in the interval &#160;&#160;&#160;Expected result = 2.">
<polygon fill="#bfbfbf" stroke="black" points="0,-19.5 0,-38.5 38,-38.5 38,-19.5 0,-19.5"/>
<text text-anchor="middle" x="19" y="-26.5" font-family="Helvetica,sans-Serif" font-size="10.00">test1</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../db/d01/brent__method__extrema_8cpp.html#a1aa76a6d5fd4d333f9072beff1dc486b" target="_top" xlink:title="Get the real root of a function in the given interval.">
<polygon fill="white" stroke="black" points="74,-19.5 74,-38.5 142,-38.5 142,-19.5 74,-19.5"/>
<text text-anchor="middle" x="108" y="-26.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_minima</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M38.03,-29C45.55,-29 54.64,-29 63.72,-29"/>
<polygon fill="midnightblue" stroke="midnightblue" points="63.88,-32.5 73.88,-29 63.88,-25.5 63.88,-32.5"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/numeric/math/sqrt.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="181.5,-38.5 181.5,-57.5 233.5,-57.5 233.5,-38.5 181.5,-38.5"/>
<text text-anchor="middle" x="207.5" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::sqrt</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node2&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M142.01,-35.43C151.42,-37.27 161.71,-39.27 171.25,-41.13"/>
<polygon fill="midnightblue" stroke="midnightblue" points="170.75,-44.6 181.23,-43.08 172.09,-37.73 170.75,-44.6"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/algorithm/swap.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="178,-0.5 178,-19.5 237,-19.5 237,-0.5 178,-0.5"/>
<text text-anchor="middle" x="207.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::swap</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node2&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M142.01,-22.57C150.26,-20.96 159.18,-19.22 167.68,-17.57"/>
<polygon fill="midnightblue" stroke="midnightblue" points="168.62,-20.95 177.77,-15.6 167.28,-14.08 168.62,-20.95"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.2 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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: get_minima Pages: 1 -->
<svg width="171pt" height="66pt"

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -0,0 +1,7 @@
<map id="test3" name="test3">
<area shape="rect" id="node1" title="Test function to find maxima for the function &#160;in the interval &#160;&#160;&#160;Expected result: ." alt="" coords="5,31,56,57"/>
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/math/cos.html#" title=" " alt="" coords="115,5,183,32"/>
<area shape="rect" id="node3" href="$db/d01/brent__method__extrema_8cpp.html#a1aa76a6d5fd4d333f9072beff1dc486b" title="Get the real root of a function in the given interval." alt="" coords="104,56,195,83"/>
<area shape="rect" id="node4" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/math/sqrt.html#" title=" " alt="" coords="247,31,317,57"/>
<area shape="rect" id="node5" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/swap.html#" title=" " alt="" coords="243,81,321,108"/>
</map>

View File

@@ -0,0 +1 @@
6786877db7f419e38717fa3378b2c413

View File

@@ -0,0 +1,82 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: test3 Pages: 1 -->
<svg width="245pt" height="85pt"
viewBox="0.00 0.00 245.00 85.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 81)">
<title>test3</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-81 241,-81 241,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title="Test function to find maxima for the function &#160;in the interval &#160;&#160;&#160;Expected result: .">
<polygon fill="#bfbfbf" stroke="black" points="0,-38.5 0,-57.5 38,-57.5 38,-38.5 0,-38.5"/>
<text text-anchor="middle" x="19" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">test3</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/numeric/math/cos.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="82.5,-57.5 82.5,-76.5 133.5,-76.5 133.5,-57.5 82.5,-57.5"/>
<text text-anchor="middle" x="108" y="-64.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::cos</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M38.03,-51.94C47.96,-54.11 60.63,-56.87 72.39,-59.44"/>
<polygon fill="midnightblue" stroke="midnightblue" points="71.88,-62.91 82.4,-61.63 73.38,-56.07 71.88,-62.91"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a xlink:href="../../db/d01/brent__method__extrema_8cpp.html#a1aa76a6d5fd4d333f9072beff1dc486b" target="_top" xlink:title="Get the real root of a function in the given interval.">
<polygon fill="white" stroke="black" points="74,-19.5 74,-38.5 142,-38.5 142,-19.5 74,-19.5"/>
<text text-anchor="middle" x="108" y="-26.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_minima</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node1&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M38.03,-44.06C45.63,-42.4 54.83,-40.39 64.01,-38.39"/>
<polygon fill="midnightblue" stroke="midnightblue" points="64.85,-41.79 73.88,-36.23 63.36,-34.95 64.85,-41.79"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/numeric/math/sqrt.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="181.5,-38.5 181.5,-57.5 233.5,-57.5 233.5,-38.5 181.5,-38.5"/>
<text text-anchor="middle" x="207.5" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::sqrt</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node3&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M142.01,-35.43C151.42,-37.27 161.71,-39.27 171.25,-41.13"/>
<polygon fill="midnightblue" stroke="midnightblue" points="170.75,-44.6 181.23,-43.08 172.09,-37.73 170.75,-44.6"/>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<title>Node5</title>
<g id="a_node5"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/algorithm/swap.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="178,-0.5 178,-19.5 237,-19.5 237,-0.5 178,-0.5"/>
<text text-anchor="middle" x="207.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::swap</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<title>Node3&#45;&gt;Node5</title>
<path fill="none" stroke="midnightblue" d="M142.01,-22.57C150.26,-20.96 159.18,-19.22 167.68,-17.57"/>
<polygon fill="midnightblue" stroke="midnightblue" points="168.62,-20.95 177.77,-15.6 167.28,-14.08 168.62,-20.95"/>
</g>
</g>
</svg>

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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: main Pages: 1 -->
<svg width="319pt" height="104pt"

Before

Width:  |  Height:  |  Size: 7.5 KiB

After

Width:  |  Height:  |  Size: 7.5 KiB

View File

@@ -2,8 +2,8 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: ST</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@@ -17,9 +17,9 @@
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
@@ -32,8 +32,7 @@
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Algorithms_in_C++
&#160;<span id="projectnumber">1.0.0</span>
<div id="projectname">Algorithms_in_C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">Set of algorithms implemented in C++.</div>
</td>
@@ -42,21 +41,22 @@
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<!-- Generated by Doxygen 1.9.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search",'Search','.html');
/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
@@ -70,7 +70,7 @@ $(function() {
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('db/d03/_s_t-example.html','../../'); initResizable(); });
/* @license-end */
</script>
@@ -90,11 +90,10 @@ $(document).ready(function(){initNavTree('db/d03/_s_t-example.html','../../'); i
</div>
<div class="header">
<div class="headertitle">
<div class="title">ST</div> </div>
<div class="headertitle"><div class="title">ST</div></div>
</div><!--header-->
<div class="contents">
<p>Builds the sparse table for computing min/max/gcd/lcm/...etc for any contiguous sub-segment of the array.This is an example of computing the index of the minimum value. </p><dl class="section return"><dt>Returns</dt><dd>void @complexity: O(n.log(n))&lt; precomputing <code>log2(i+1)</code></dd></dl>
<p >Builds the sparse table for computing min/max/gcd/lcm/...etc for any contiguous sub-segment of the array.This is an example of computing the index of the minimum value. </p><dl class="section return"><dt>Returns</dt><dd>void @complexity: O(n.log(n))&lt; precomputing <code>log2(i+1)</code></dd></dl>
<dl class="section note"><dt>Note</dt><dd>notice how we deal with the range of length <code>pow(2,i)</code>, and we can reuse the computation that we did for the range of length <code>pow(2,i-1)</code>.</dd></dl>
<p>So, ST[j][i] = min( ST[j-1][i], ST[j-1][i + pow(2,j-1)]). [2][3] = min(ST[1][3], ST[1][5])</p>
<div class="fragment"> </div><!-- fragment --> </div><!-- contents -->
@@ -102,7 +101,7 @@ $(document).ready(function(){initNavTree('db/d03/_s_t-example.html','../../'); i
<!-- 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.9.1 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.2 </li>
</ul>
</div>
</body>

View File

@@ -2,8 +2,8 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: wildcard_matching Namespace Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@@ -17,9 +17,9 @@
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
@@ -32,8 +32,7 @@
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Algorithms_in_C++
&#160;<span id="projectnumber">1.0.0</span>
<div id="projectname">Algorithms_in_C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">Set of algorithms implemented in C++.</div>
</td>
@@ -42,21 +41,22 @@
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<!-- Generated by Doxygen 1.9.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search",'Search','.html');
/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
@@ -70,7 +70,7 @@ $(function() {
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('db/d03/namespacewildcard__matching.html','../../'); initResizable(); });
/* @license-end */
</script>
@@ -90,22 +90,21 @@ $(document).ready(function(){initNavTree('db/d03/namespacewildcard__matching.htm
</div>
<div class="header">
<div class="headertitle">
<div class="title">wildcard_matching Namespace Reference</div> </div>
<div class="headertitle"><div class="title">wildcard_matching Namespace Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Functions for the <a href="https://www.geeksforgeeks.org/wildcard-pattern-matching/">Wildcard Matching</a> problem.
<p>Functions for the <a href="https://www.geeksforgeeks.org/wildcard-pattern-matching/" target="_blank">Wildcard Matching</a> problem.
<a href="../../db/d03/namespacewildcard__matching.html#details">More...</a></p>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Functions for the <a href="https://www.geeksforgeeks.org/wildcard-pattern-matching/">Wildcard Matching</a> problem. </p>
<div class="textblock"><p >Functions for the <a href="https://www.geeksforgeeks.org/wildcard-pattern-matching/" target="_blank">Wildcard Matching</a> problem. </p>
</div></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="../../db/d03/namespacewildcard__matching.html">wildcard_matching</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.2 </li>
</ul>
</div>
</body>

View File

@@ -2,8 +2,8 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: others/spiral_print.cpp File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@@ -17,9 +17,9 @@
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
@@ -32,8 +32,7 @@
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Algorithms_in_C++
&#160;<span id="projectnumber">1.0.0</span>
<div id="projectname">Algorithms_in_C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">Set of algorithms implemented in C++.</div>
</td>
@@ -42,21 +41,22 @@
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<!-- Generated by Doxygen 1.9.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search",'Search','.html');
/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
@@ -70,7 +70,7 @@ $(function() {
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('db/d07/spiral__print_8cpp.html','../../'); initResizable(); });
/* @license-end */
</script>
@@ -92,8 +92,7 @@ $(document).ready(function(){initNavTree('db/d07/spiral__print_8cpp.html','../..
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">spiral_print.cpp File Reference</div> </div>
<div class="headertitle"><div class="title">spiral_print.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
@@ -107,7 +106,7 @@ Include dependency graph for spiral_print.cpp:</div>
</div>
</div>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:acfff36db81326fb990a643ab198ee8a5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d07/spiral__print_8cpp.html#acfff36db81326fb990a643ab198ee8a5">genArray</a> (int **a, int r, int c)</td></tr>
<tr class="separator:acfff36db81326fb990a643ab198ee8a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -117,9 +116,9 @@ Functions</h2></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Print the elements of a matrix traversing it spirally. </p>
<div class="textblock"><p >Print the elements of a matrix traversing it spirally. </p>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="acfff36db81326fb990a643ab198ee8a5"></a>
<a id="acfff36db81326fb990a643ab198ee8a5" name="acfff36db81326fb990a643ab198ee8a5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acfff36db81326fb990a643ab198ee8a5">&#9670;&nbsp;</a></span>genArray()</h2>
<div class="memitem">
@@ -150,7 +149,7 @@ Functions</h2></td></tr>
</tr>
</table>
</div><div class="memdoc">
<p>Arrange sequence of numbers from '1' in a matrix form </p><dl class="params"><dt>Parameters</dt><dd>
<p >Arrange sequence of numbers from '1' in a matrix form </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[out]</td><td class="paramname">a</td><td>matrix to fill </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">r</td><td>number of rows </td></tr>
@@ -158,17 +157,17 @@ Functions</h2></td></tr>
</table>
</dd>
</dl>
<div class="fragment"><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160; {</div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160; <span class="keywordtype">int</span> value = 1;</div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; r; i++) {</div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j &lt; c; j++) {</div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160; a[i][j] = value;</div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; a[i][j] &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; value++;</div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; }</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; }</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;}</div>
<div class="fragment"><div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> {</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> <span class="keywordtype">int</span> value = 1;</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; r; i++) {</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j &lt; c; j++) {</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> a[i][j] = value;</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; a[i][j] &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> value++;</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> }</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</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>}</div>
<div class="ttc" id="abasic_ostream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div></div>
<div class="ttc" id="aendl_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a></div><div class="ttdeci">T endl(T... args)</div></div>
</div><!-- fragment --><div class="dynheader">
@@ -180,7 +179,7 @@ Here is the call graph for this function:</div>
</div>
</div>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">&#9670;&nbsp;</a></span>main()</h2>
<div class="memitem">
@@ -195,20 +194,20 @@ Here is the call graph for this function:</div>
</tr>
</table>
</div><div class="memdoc">
<p>main function </p>
<div class="fragment"><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; {</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordtype">int</span> r, c;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; r &gt;&gt; c;</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordtype">int</span> **a = <span class="keyword">new</span> <span class="keywordtype">int</span> *[r];</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; r; i++) a[i] = <span class="keyword">new</span> <span class="keywordtype">int</span>[c];</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; </div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="../../db/d07/spiral__print_8cpp.html#acfff36db81326fb990a643ab198ee8a5">genArray</a>(a, r, c);</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="../../db/d07/spiral__print_8cpp.html#a850d3f55e1a8d227176cdcc67352c197">spiralPrint</a>(a, r, c);</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; </div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; r; i++) <span class="keyword">delete</span>[] a[i];</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keyword">delete</span>[] a;</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;}</div>
<p >main function </p>
<div class="fragment"><div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> {</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <span class="keywordtype">int</span> r, c;</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; r &gt;&gt; c;</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <span class="keywordtype">int</span> **a = <span class="keyword">new</span> <span class="keywordtype">int</span> *[r];</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; r; i++) a[i] = <span class="keyword">new</span> <span class="keywordtype">int</span>[c];</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> </div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <a class="code hl_function" href="../../db/d07/spiral__print_8cpp.html#acfff36db81326fb990a643ab198ee8a5">genArray</a>(a, r, c);</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <a class="code hl_function" href="../../db/d07/spiral__print_8cpp.html#a850d3f55e1a8d227176cdcc67352c197">spiralPrint</a>(a, r, c);</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> </div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; r; i++) <span class="keyword">delete</span>[] a[i];</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="keyword">delete</span>[] a;</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span>}</div>
<div class="ttc" id="abasic_istream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a></div></div>
<div class="ttc" id="aspiral__print_8cpp_html_a850d3f55e1a8d227176cdcc67352c197"><div class="ttname"><a href="../../db/d07/spiral__print_8cpp.html#a850d3f55e1a8d227176cdcc67352c197">spiralPrint</a></div><div class="ttdeci">void spiralPrint(int **a, int r, int c)</div><div class="ttdef"><b>Definition:</b> spiral_print.cpp:29</div></div>
<div class="ttc" id="aspiral__print_8cpp_html_acfff36db81326fb990a643ab198ee8a5"><div class="ttname"><a href="../../db/d07/spiral__print_8cpp.html#acfff36db81326fb990a643ab198ee8a5">genArray</a></div><div class="ttdeci">void genArray(int **a, int r, int c)</div><div class="ttdef"><b>Definition:</b> spiral_print.cpp:12</div></div>
@@ -221,7 +220,7 @@ Here is the call graph for this function:</div>
</div>
</div>
<a id="a850d3f55e1a8d227176cdcc67352c197"></a>
<a id="a850d3f55e1a8d227176cdcc67352c197" name="a850d3f55e1a8d227176cdcc67352c197"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a850d3f55e1a8d227176cdcc67352c197">&#9670;&nbsp;</a></span>spiralPrint()</h2>
<div class="memitem">
@@ -252,7 +251,7 @@ Here is the call graph for this function:</div>
</tr>
</table>
</div><div class="memdoc">
<p>Traverse the matrix spirally and print the sequence of elements </p><dl class="params"><dt>Parameters</dt><dd>
<p >Traverse the matrix spirally and print the sequence of elements </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">a</td><td>matrix to read from </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">r</td><td>number of rows </td></tr>
@@ -260,48 +259,48 @@ Here is the call graph for this function:</div>
</table>
</dd>
</dl>
<p>Print start row</p>
<p>Print the end col</p>
<p>Print the end row</p>
<p>Print the start Col</p>
<div class="fragment"><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; {</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keywordtype">int</span> startRow = 0, endRow = r - 1;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keywordtype">int</span> startCol = 0, endCol = c - 1;</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keywordtype">int</span> cnt = 0;</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; </div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <span class="keywordflow">while</span> (startRow &lt;= endRow &amp;&amp; startCol &lt;= endCol) {<span class="comment"></span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> /// Print start row</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment"></span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = startCol; i &lt;= endCol; i++, cnt++) {</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; a[startRow][i] &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; }</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; startRow++;</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> /// Print the end col</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"></span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = startRow; i &lt;= endRow; i++, cnt++) {</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; a[i][endCol] &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; }</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; endCol--;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> /// Print the end row</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"></span> <span class="keywordflow">if</span> (cnt == r * c) {</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; }</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; </div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = endCol; i &gt;= startCol; i--, cnt++) {</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; a[endRow][i] &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; }</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; endRow--;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> /// Print the start Col</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"></span> <span class="keywordflow">if</span> (cnt == r * c) {</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; }</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = endRow; i &gt;= startRow; i--, cnt++) {</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; a[i][startCol] &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; }</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; startCol++;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; }</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;}</div>
<p >Print start row</p>
<p >Print the end col</p>
<p >Print the end row</p>
<p >Print the start Col</p>
<div class="fragment"><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="keywordtype">int</span> startRow = 0, endRow = r - 1;</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keywordtype">int</span> startCol = 0, endCol = c - 1;</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <span class="keywordtype">int</span> cnt = 0;</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> </div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <span class="keywordflow">while</span> (startRow &lt;= endRow &amp;&amp; startCol &lt;= endCol) {<span class="comment"></span></div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span><span class="comment"> /// Print start row</span></div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="comment"></span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = startCol; i &lt;= endCol; i++, cnt++) {</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; a[startRow][i] &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> }</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> startRow++;</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span><span class="comment"></span> </div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span><span class="comment"> /// Print the end col</span></div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span><span class="comment"></span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = startRow; i &lt;= endRow; i++, cnt++) {</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; a[i][endCol] &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div>
<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> endCol--;</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span><span class="comment"></span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span><span class="comment"> /// Print the end row</span></div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span><span class="comment"></span> <span class="keywordflow">if</span> (cnt == r * c) {</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> }</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> </div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = endCol; i &gt;= startCol; i--, cnt++) {</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; a[endRow][i] &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> }</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> endRow--;</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span><span class="comment"></span> </div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span><span class="comment"> /// Print the start Col</span></div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span><span class="comment"></span> <span class="keywordflow">if</span> (cnt == r * c) {</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> }</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = endRow; i &gt;= startRow; i--, cnt++) {</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; a[i][startCol] &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> }</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> startCol++;</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> }</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span>}</div>
</div><!-- fragment -->
</div>
</div>
@@ -311,7 +310,7 @@ Here is the call graph for this function:</div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_9510827d0b234b3cc54b29892f217477.html">others</a></li><li class="navelem"><a class="el" href="../../db/d07/spiral__print_8cpp.html">spiral_print.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.9.1 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: genArray Pages: 1 -->
<svg width="155pt" height="28pt"

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: main Pages: 1 -->
<svg width="233pt" height="66pt"

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 3.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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: math/check_amicable_pair.cpp Pages: 1 -->
<svg width="130pt" height="95pt"

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -2,8 +2,8 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: math/prime_factorization.cpp File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@@ -17,9 +17,9 @@
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
@@ -32,8 +32,7 @@
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Algorithms_in_C++
&#160;<span id="projectnumber">1.0.0</span>
<div id="projectname">Algorithms_in_C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">Set of algorithms implemented in C++.</div>
</td>
@@ -42,21 +41,22 @@
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<!-- Generated by Doxygen 1.9.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search",'Search','.html');
/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
@@ -70,7 +70,7 @@ $(function() {
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('db/d0d/prime__factorization_8cpp.html','../../'); initResizable(); });
/* @license-end */
</script>
@@ -93,8 +93,7 @@ $(document).ready(function(){initNavTree('db/d0d/prime__factorization_8cpp.html'
<div class="summary">
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">prime_factorization.cpp File Reference</div> </div>
<div class="headertitle"><div class="title">prime_factorization.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
@@ -111,7 +110,7 @@ Include dependency graph for prime_factorization.cpp:</div>
</div>
</div>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:affe577b9bce8f604f5e2f861c63c7099"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d0d/prime__factorization_8cpp.html#affe577b9bce8f604f5e2f861c63c7099">SieveOfEratosthenes</a> (int N)</td></tr>
<tr class="separator:affe577b9bce8f604f5e2f861c63c7099"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -120,7 +119,7 @@ Functions</h2></td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d0d/prime__factorization_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="var-members" name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a7fe38b570a51e448430d6a0f072c2f23"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d0d/prime__factorization_8cpp.html#a7fe38b570a51e448430d6a0f072c2f23">isprime</a> [1000006]</td></tr>
<tr class="separator:a7fe38b570a51e448430d6a0f072c2f23"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -130,9 +129,9 @@ Variables</h2></td></tr>
<tr class="separator:acfb0df439a4beae5a34ef131ce737c1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Prime factorization of positive integers. </p>
<div class="textblock"><p >Prime factorization of positive integers. </p>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">&#9670;&nbsp;</a></span>main()</h2>
<div class="memitem">
@@ -147,24 +146,24 @@ Variables</h2></td></tr>
</tr>
</table>
</div><div class="memdoc">
<p>Main program </p>
<div class="fragment"><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; {</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordtype">int</span> num;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;\t\tComputes the prime factorization\n\n&quot;</span>;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Type in a number: &quot;</span>;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; num;</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; </div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="../../db/d0d/prime__factorization_8cpp.html#affe577b9bce8f604f5e2f861c63c7099">SieveOfEratosthenes</a>(num);</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; </div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="../../db/d0d/prime__factorization_8cpp.html#a0ece0145fb29a5cf48378c23dde2da46">prime_factorization</a>(num);</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; </div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="comment">// Prime factors with their powers in the given number in new line</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> it : <a class="code" href="../../db/d0d/prime__factorization_8cpp.html#acfb0df439a4beae5a34ef131ce737c1b">factors</a>) {</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; it.first &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; it.second &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; }</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; </div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;}</div>
<p >Main program </p>
<div class="fragment"><div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> {</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <span class="keywordtype">int</span> num;</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;\t\tComputes the prime factorization\n\n&quot;</span>;</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Type in a number: &quot;</span>;</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; num;</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> </div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <a class="code hl_function" href="../../db/d0d/prime__factorization_8cpp.html#affe577b9bce8f604f5e2f861c63c7099">SieveOfEratosthenes</a>(num);</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> </div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <a class="code hl_function" href="../../db/d0d/prime__factorization_8cpp.html#a0ece0145fb29a5cf48378c23dde2da46">prime_factorization</a>(num);</div>
<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="comment">// Prime factors with their powers in the given number in new line</span></div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> it : <a class="code hl_variable" href="../../db/d0d/prime__factorization_8cpp.html#acfb0df439a4beae5a34ef131ce737c1b">factors</a>) {</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; it.first &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; it.second &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> }</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> </div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span>}</div>
<div class="ttc" id="abasic_istream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a></div></div>
<div class="ttc" id="abasic_ostream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div></div>
<div class="ttc" id="aendl_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a></div><div class="ttdeci">T endl(T... args)</div></div>
@@ -174,13 +173,13 @@ Variables</h2></td></tr>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="../../db/d0d/prime__factorization_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4_cgraph.svg" width="462" height="139"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
<div class="center"><iframe scrolling="no" frameborder="0" src="../../db/d0d/prime__factorization_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4_cgraph.svg" width="415" height="139"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</div>
</div>
</div>
<a id="a0ece0145fb29a5cf48378c23dde2da46"></a>
<a id="a0ece0145fb29a5cf48378c23dde2da46" name="a0ece0145fb29a5cf48378c23dde2da46"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0ece0145fb29a5cf48378c23dde2da46">&#9670;&nbsp;</a></span>prime_factorization()</h2>
<div class="memitem">
@@ -195,27 +194,27 @@ Here is the call graph for this function:</div>
</tr>
</table>
</div><div class="memdoc">
<p>Prime factorization of a number </p>
<div class="fragment"><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; {</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordtype">int</span> number = num;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; </div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; <a class="code" href="../../db/d0d/prime__factorization_8cpp.html#af097796783684712b8326e5b82bfd4fe">prime_numbers</a>[i] &lt;= num; i++) {</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordtype">int</span> count = 0;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; </div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="comment">// termination condition</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">if</span> (number == 1) {</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; }</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; </div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">while</span> (number % <a class="code" href="../../db/d0d/prime__factorization_8cpp.html#af097796783684712b8326e5b82bfd4fe">prime_numbers</a>[i] == 0) {</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; count++;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; number = number / <a class="code" href="../../db/d0d/prime__factorization_8cpp.html#af097796783684712b8326e5b82bfd4fe">prime_numbers</a>[i];</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; }</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; </div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">if</span> (count)</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <a class="code" href="../../db/d0d/prime__factorization_8cpp.html#acfb0df439a4beae5a34ef131ce737c1b">factors</a>.push_back(<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/utility/pair/make_pair.html">std::make_pair</a>(<a class="code" href="../../db/d0d/prime__factorization_8cpp.html#af097796783684712b8326e5b82bfd4fe">prime_numbers</a>[i], count));</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; }</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;}</div>
<p >Prime factorization of a number </p>
<div class="fragment"><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="keywordtype">int</span> number = num;</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> </div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; <a class="code hl_variable" href="../../db/d0d/prime__factorization_8cpp.html#af097796783684712b8326e5b82bfd4fe">prime_numbers</a>[i] &lt;= num; i++) {</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">int</span> count = 0;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> </div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <span class="comment">// termination condition</span></div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <span class="keywordflow">if</span> (number == 1) {</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">break</span>;</div>
<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 class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keywordflow">while</span> (number % <a class="code hl_variable" href="../../db/d0d/prime__factorization_8cpp.html#af097796783684712b8326e5b82bfd4fe">prime_numbers</a>[i] == 0) {</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> count++;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> number = number / <a class="code hl_variable" href="../../db/d0d/prime__factorization_8cpp.html#af097796783684712b8326e5b82bfd4fe">prime_numbers</a>[i];</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> }</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> </div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">if</span> (count)</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <a class="code hl_variable" href="../../db/d0d/prime__factorization_8cpp.html#acfb0df439a4beae5a34ef131ce737c1b">factors</a>.push_back(<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/utility/pair/make_pair.html">std::make_pair</a>(<a class="code hl_variable" href="../../db/d0d/prime__factorization_8cpp.html#af097796783684712b8326e5b82bfd4fe">prime_numbers</a>[i], count));</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> }</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span>}</div>
<div class="ttc" id="amake_pair_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/utility/pair/make_pair.html">std::make_pair</a></div><div class="ttdeci">T make_pair(T... args)</div></div>
<div class="ttc" id="aprime__factorization_8cpp_html_af097796783684712b8326e5b82bfd4fe"><div class="ttname"><a href="../../db/d0d/prime__factorization_8cpp.html#af097796783684712b8326e5b82bfd4fe">prime_numbers</a></div><div class="ttdeci">std::vector&lt; int &gt; prime_numbers</div><div class="ttdef"><b>Definition:</b> prime_factorization.cpp:16</div></div>
</div><!-- fragment --><div class="dynheader">
@@ -227,7 +226,7 @@ Here is the call graph for this function:</div>
</div>
</div>
<a id="affe577b9bce8f604f5e2f861c63c7099"></a>
<a id="affe577b9bce8f604f5e2f861c63c7099" name="affe577b9bce8f604f5e2f861c63c7099"></a>
<h2 class="memtitle"><span class="permalink"><a href="#affe577b9bce8f604f5e2f861c63c7099">&#9670;&nbsp;</a></span>SieveOfEratosthenes()</h2>
<div class="memitem">
@@ -242,37 +241,30 @@ Here is the call graph for this function:</div>
</tr>
</table>
</div><div class="memdoc">
<p>Calculating prime number upto a given range </p>
<div class="fragment"><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; {</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; <span class="comment">// initializes the array isprime</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/byte/memset.html">memset</a>(<a class="code" href="../../db/d0d/prime__factorization_8cpp.html#a7fe38b570a51e448430d6a0f072c2f23">isprime</a>, <span class="keyword">true</span>, <span class="keyword">sizeof</span> <a class="code" href="../../db/d0d/prime__factorization_8cpp.html#a7fe38b570a51e448430d6a0f072c2f23">isprime</a>);</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; </div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 2; i &lt;= <a class="code" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a>; i++) {</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="../../db/d0d/prime__factorization_8cpp.html#a7fe38b570a51e448430d6a0f072c2f23">isprime</a>[i]) {</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 2 * i; j &lt;= <a class="code" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a>; j += i) <a class="code" href="../../db/d0d/prime__factorization_8cpp.html#a7fe38b570a51e448430d6a0f072c2f23">isprime</a>[j] = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; }</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; }</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; </div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 2; i &lt;= <a class="code" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a>; i++) {</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="../../db/d0d/prime__factorization_8cpp.html#a7fe38b570a51e448430d6a0f072c2f23">isprime</a>[i])</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <a class="code" href="../../db/d0d/prime__factorization_8cpp.html#af097796783684712b8326e5b82bfd4fe">prime_numbers</a>.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/push_back.html">push_back</a>(i);</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; }</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;}</div>
<p >Calculating prime number upto a given range </p>
<div class="fragment"><div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> {</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <span class="comment">// initializes the array isprime</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/byte/memset.html">memset</a>(<a class="code hl_variable" href="../../db/d0d/prime__factorization_8cpp.html#a7fe38b570a51e448430d6a0f072c2f23">isprime</a>, <span class="keyword">true</span>, <span class="keyword">sizeof</span> <a class="code hl_variable" href="../../db/d0d/prime__factorization_8cpp.html#a7fe38b570a51e448430d6a0f072c2f23">isprime</a>);</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> </div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 2; i &lt;= <a class="code hl_variable" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a>; i++) {</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="../../db/d0d/prime__factorization_8cpp.html#a7fe38b570a51e448430d6a0f072c2f23">isprime</a>[i]) {</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 2 * i; j &lt;= <a class="code hl_variable" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a>; j += i) <a class="code hl_variable" href="../../db/d0d/prime__factorization_8cpp.html#a7fe38b570a51e448430d6a0f072c2f23">isprime</a>[j] = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> }</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> }</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 2; i &lt;= <a class="code hl_variable" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a>; i++) {</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="../../db/d0d/prime__factorization_8cpp.html#a7fe38b570a51e448430d6a0f072c2f23">isprime</a>[i])</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <a class="code hl_variable" href="../../db/d0d/prime__factorization_8cpp.html#af097796783684712b8326e5b82bfd4fe">prime_numbers</a>.push_back(i);</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> }</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span>}</div>
<div class="ttc" id="adata__structures_2sparse__table_8cpp_html_a10f3ffb3f6f7e1b83d556b9c8de89a5d"><div class="ttname"><a href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">data_structures::sparse_table::N</a></div><div class="ttdeci">constexpr uint32_t N</div><div class="ttdoc">A struct to represent sparse table for min() as their invariant function, for the given array A....</div><div class="ttdef"><b>Definition:</b> sparse_table.cpp:47</div></div>
<div class="ttc" id="amemset_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/string/byte/memset.html">std::memset</a></div><div class="ttdeci">T memset(T... args)</div></div>
<div class="ttc" id="aprime__factorization_8cpp_html_a7fe38b570a51e448430d6a0f072c2f23"><div class="ttname"><a href="../../db/d0d/prime__factorization_8cpp.html#a7fe38b570a51e448430d6a0f072c2f23">isprime</a></div><div class="ttdeci">bool isprime[1000006]</div><div class="ttdef"><b>Definition:</b> prime_factorization.cpp:13</div></div>
<div class="ttc" id="apush_back_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector/push_back.html">std::vector::push_back</a></div><div class="ttdeci">T push_back(T... args)</div></div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="../../db/d0d/prime__factorization_8cpp_affe577b9bce8f604f5e2f861c63c7099_cgraph.svg" width="363" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a id="acfb0df439a4beae5a34ef131ce737c1b"></a>
<a id="acfb0df439a4beae5a34ef131ce737c1b" name="acfb0df439a4beae5a34ef131ce737c1b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acfb0df439a4beae5a34ef131ce737c1b">&#9670;&nbsp;</a></span>factors</h2>
<div class="memitem">
@@ -283,11 +275,11 @@ Here is the call graph for this function:</div>
</tr>
</table>
</div><div class="memdoc">
<p>list of prime factor-pairs </p>
<p >list of prime factor-pairs </p>
</div>
</div>
<a id="a7fe38b570a51e448430d6a0f072c2f23"></a>
<a id="a7fe38b570a51e448430d6a0f072c2f23" name="a7fe38b570a51e448430d6a0f072c2f23"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7fe38b570a51e448430d6a0f072c2f23">&#9670;&nbsp;</a></span>isprime</h2>
<div class="memitem">
@@ -298,11 +290,11 @@ Here is the call graph for this function:</div>
</tr>
</table>
</div><div class="memdoc">
<p>Declaring variables for maintaing prime numbers and to check whether a number is prime or not </p>
<p >Declaring variables for maintaing prime numbers and to check whether a number is prime or not </p>
</div>
</div>
<a id="af097796783684712b8326e5b82bfd4fe"></a>
<a id="af097796783684712b8326e5b82bfd4fe" name="af097796783684712b8326e5b82bfd4fe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af097796783684712b8326e5b82bfd4fe">&#9670;&nbsp;</a></span>prime_numbers</h2>
<div class="memitem">
@@ -313,7 +305,7 @@ Here is the call graph for this function:</div>
</tr>
</table>
</div><div class="memdoc">
<p>list of prime numbers </p>
<p >list of prime numbers </p>
</div>
</div>
@@ -323,7 +315,7 @@ Here is the call graph for this function:</div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_296d53ceaeaa7e099814a6def439fe8a.html">math</a></li><li class="navelem"><a class="el" href="../../db/d0d/prime__factorization_8cpp.html">prime_factorization.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.9.1 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: prime_factorization Pages: 1 -->
<svg width="227pt" height="28pt"

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -3,6 +3,5 @@
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="142,5,214,32"/>
<area shape="rect" id="node3" href="$db/d0d/prime__factorization_8cpp.html#a0ece0145fb29a5cf48378c23dde2da46" title=" " alt="" coords="111,56,245,83"/>
<area shape="rect" id="node5" href="$db/d0d/prime__factorization_8cpp.html#affe577b9bce8f604f5e2f861c63c7099" title=" " alt="" coords="104,107,252,133"/>
<area shape="rect" id="node4" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/utility/pair/make_pair.html#" title=" " alt="" coords="323,56,433,83"/>
<area shape="rect" id="node6" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/push_back.html#" title=" " alt="" coords="300,107,456,133"/>
<area shape="rect" id="node4" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/utility/pair/make_pair.html#" title=" " alt="" coords="300,56,409,83"/>
</map>

View File

@@ -1 +1 @@
0cbc5a266bc39b5747ed984836ea5a92
fb4a1335f4a079fc891c9879634dad1d

View File

@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: main Pages: 1 -->
<svg width="346pt" height="104pt"
viewBox="0.00 0.00 346.00 104.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<svg width="311pt" height="104pt"
viewBox="0.00 0.00 311.00 104.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 100)">
<title>main</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-100 342,-100 342,4 -4,4"/>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-100 307,-100 307,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
@@ -67,31 +67,16 @@
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/utility/pair/make_pair.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="238.5,-38.5 238.5,-57.5 320.5,-57.5 320.5,-38.5 238.5,-38.5"/>
<text text-anchor="middle" x="279.5" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::make_pair</text>
<polygon fill="white" stroke="black" points="221,-38.5 221,-57.5 303,-57.5 303,-38.5 221,-38.5"/>
<text text-anchor="middle" x="262" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::make_pair</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node3&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M180.19,-48C195.48,-48 212.32,-48 227.68,-48"/>
<polygon fill="midnightblue" stroke="midnightblue" points="228.03,-51.5 238.03,-48 228.03,-44.5 228.03,-51.5"/>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<title>Node6</title>
<g id="a_node6"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/push_back.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="221,-0.5 221,-19.5 338,-19.5 338,-0.5 221,-0.5"/>
<text text-anchor="middle" x="279.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<title>Node5&#45;&gt;Node6</title>
<path fill="none" stroke="midnightblue" d="M185.19,-10C193.38,-10 201.92,-10 210.35,-10"/>
<polygon fill="midnightblue" stroke="midnightblue" points="210.56,-13.5 220.56,-10 210.56,-6.5 210.56,-13.5"/>
<path fill="none" stroke="midnightblue" d="M180.21,-48C190.15,-48 200.61,-48 210.57,-48"/>
<polygon fill="midnightblue" stroke="midnightblue" points="210.74,-51.5 220.74,-48 210.74,-44.5 210.74,-51.5"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@@ -1,4 +0,0 @@
<map id="SieveOfEratosthenes" name="SieveOfEratosthenes">
<area shape="rect" id="node1" title=" " alt="" coords="5,5,153,32"/>
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/push_back.html#" title=" " alt="" coords="201,5,357,32"/>
</map>

View File

@@ -1 +0,0 @@
d6b51d3b85029606e5156b1df6bc3f9a

View File

@@ -1,37 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
-->
<!-- Title: SieveOfEratosthenes Pages: 1 -->
<svg width="272pt" height="28pt"
viewBox="0.00 0.00 272.00 28.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 24)">
<title>SieveOfEratosthenes</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-24 268,-24 268,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<polygon fill="#bfbfbf" stroke="black" points="0,-0.5 0,-19.5 111,-19.5 111,-0.5 0,-0.5"/>
<text text-anchor="middle" x="55.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">SieveOfEratosthenes</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/push_back.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="147,-0.5 147,-19.5 264,-19.5 264,-0.5 147,-0.5"/>
<text text-anchor="middle" x="205.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M111.19,-10C119.38,-10 127.92,-10 136.35,-10"/>
<polygon fill="midnightblue" stroke="midnightblue" points="136.56,-13.5 146.56,-10 136.56,-6.5 136.56,-13.5"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -1,5 +0,0 @@
<map id="data_structures::queue_using_array::Queue_Array" name="data_structures::queue_using_array::Queue_Array">
<area shape="rect" id="node1" title="Queue_Array class containing the main data and also index of head and tail of the array." alt="" coords="5,199,191,240"/>
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/array.html" title=" " alt="" coords="31,95,165,136"/>
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/types/integer.html" title=" " alt="" coords="55,5,141,32"/>
</map>

View File

@@ -1 +0,0 @@
db27848e9a64e618488a8665cb3ae1d1

View File

@@ -1,56 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
-->
<!-- Title: data_structures::queue_using_array::Queue_Array Pages: 1 -->
<svg width="147pt" height="184pt"
viewBox="0.00 0.00 147.00 184.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 180)">
<title>data_structures::queue_using_array::Queue_Array</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-180 143,-180 143,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title="Queue_Array class containing the main data and also index of head and tail of the array.">
<polygon fill="#bfbfbf" stroke="black" points="0,-0.5 0,-30.5 139,-30.5 139,-0.5 0,-0.5"/>
<text text-anchor="start" x="8" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">data_structures::queue</text>
<text text-anchor="middle" x="69.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">_using_array::Queue_Array</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/array.html" xlink:title=" ">
<polygon fill="white" stroke="black" points="19.5,-78.5 19.5,-108.5 119.5,-108.5 119.5,-78.5 19.5,-78.5"/>
<text text-anchor="start" x="27.5" y="-96.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::array&lt; int16_t,</text>
<text text-anchor="middle" x="69.5" y="-85.5" font-family="Helvetica,sans-Serif" font-size="10.00"> max_size &gt;</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node1 -->
<g id="edge1" class="edge">
<title>Node2&#45;&gt;Node1</title>
<path fill="none" stroke="#9a32cd" stroke-dasharray="5,2" d="M69.5,-68.09C69.5,-55.76 69.5,-41.22 69.5,-30.73"/>
<polygon fill="#9a32cd" stroke="#9a32cd" points="66,-68.2 69.5,-78.2 73,-68.21 66,-68.2"/>
<text text-anchor="middle" x="77" y="-52" font-family="Helvetica,sans-Serif" font-size="10.00"> arr</text>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/types/integer.html" xlink:title=" ">
<polygon fill="white" stroke="black" points="37,-156.5 37,-175.5 102,-175.5 102,-156.5 37,-156.5"/>
<text text-anchor="middle" x="69.5" y="-163.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::int16_t</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node2 -->
<g id="edge2" class="edge">
<title>Node3&#45;&gt;Node2</title>
<path fill="none" stroke="#9a32cd" stroke-dasharray="5,2" d="M69.5,-146.24C69.5,-134.41 69.5,-119.38 69.5,-108.58"/>
<polygon fill="#9a32cd" stroke="#9a32cd" points="66,-146.36 69.5,-156.36 73,-146.36 66,-146.36"/>
<text text-anchor="middle" x="91.5" y="-130" font-family="Helvetica,sans-Serif" font-size="10.00"> elements</text>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.0 KiB

View File

@@ -2,8 +2,8 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: dynamic_programming/0_1_knapsack.cpp File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@@ -17,9 +17,9 @@
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
@@ -32,8 +32,7 @@
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Algorithms_in_C++
&#160;<span id="projectnumber">1.0.0</span>
<div id="projectname">Algorithms_in_C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">Set of algorithms implemented in C++.</div>
</td>
@@ -42,21 +41,22 @@
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<!-- Generated by Doxygen 1.9.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search",'Search','.html');
/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
@@ -70,7 +70,7 @@ $(function() {
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('db/d16/0__1__knapsack_8cpp.html','../../'); initResizable(); });
/* @license-end */
</script>
@@ -93,12 +93,11 @@ $(document).ready(function(){initNavTree('db/d16/0__1__knapsack_8cpp.html','../.
<div class="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">0_1_knapsack.cpp File Reference</div> </div>
<div class="headertitle"><div class="title">0_1_knapsack.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Implementation of <a href="https://en.wikipedia.org/wiki/Knapsack_problem">0-1 Knapsack Problem</a>
<p>Implementation of <a href="https://en.wikipedia.org/wiki/Knapsack_problem" target="_blank">0-1 Knapsack Problem</a>
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;array&gt;</code><br />
<code>#include &lt;cassert&gt;</code><br />
@@ -111,16 +110,16 @@ Include dependency graph for 0_1_knapsack.cpp:</div>
</div>
</div>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:dd/d24/namespacedynamic__programming"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d24/namespacedynamic__programming.html">dynamic_programming</a></td></tr>
<tr class="memitem:dd/d24/namespacedynamic__programming"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d24/namespacedynamic__programming.html">dynamic_programming</a></td></tr>
<tr class="memdesc:dd/d24/namespacedynamic__programming"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dynamic Programming algorithms. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:d7/daf/namespace_knapsack"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/daf/namespace_knapsack.html">Knapsack</a></td></tr>
<tr class="memitem:d7/daf/namespace_knapsack"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/daf/namespace_knapsack.html">Knapsack</a></td></tr>
<tr class="memdesc:d7/daf/namespace_knapsack"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implementation of 0-1 <a class="el" href="../../d7/daf/namespace_knapsack.html" title="Implementation of 0-1 Knapsack problem.">Knapsack</a> problem. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a15edf30f336885e5b851f6b7199c6cd1"><td class="memTemplParams" colspan="2">template&lt;size_t n&gt; </td></tr>
<tr class="memitem:a15edf30f336885e5b851f6b7199c6cd1"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../db/d16/0__1__knapsack_8cpp.html#a15edf30f336885e5b851f6b7199c6cd1">dynamic_programming::knapsack::maxKnapsackValue</a> (const int capacity, const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array</a>&lt; int, n &gt; &amp;weight, const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array</a>&lt; int, n &gt; &amp;value)</td></tr>
@@ -134,16 +133,16 @@ Functions</h2></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Implementation of <a href="https://en.wikipedia.org/wiki/Knapsack_problem">0-1 Knapsack Problem</a> </p>
<p>Given weights and values of n items, put these items in a knapsack of capacity <code>W</code> to get the maximum total value in the knapsack. In other words, given two integer arrays <code>val[0..n-1]</code> and <code>wt[0..n-1]</code> which represent values and weights associated with n items respectively. Also given an integer W which represents knapsack capacity, find out the maximum value subset of <code>val[]</code> such that sum of the weights of this subset is smaller than or equal to W. You cannot break an item, either pick the complete item or dont pick it (0-1 property)</p>
<div class="textblock"><p >Implementation of <a href="https://en.wikipedia.org/wiki/Knapsack_problem" target="_blank">0-1 Knapsack Problem</a> </p>
<p >Given weights and values of n items, put these items in a knapsack of capacity <code>W</code> to get the maximum total value in the knapsack. In other words, given two integer arrays <code>val[0..n-1]</code> and <code>wt[0..n-1]</code> which represent values and weights associated with n items respectively. Also given an integer W which represents knapsack capacity, find out the maximum value subset of <code>val[]</code> such that sum of the weights of this subset is smaller than or equal to W. You cannot break an item, either pick the complete item or dont pick it (0-1 property)</p>
<h3><a class="anchor" id="autotoc_md58"></a>
Algorithm</h3>
<p>The idea is to consider all subsets of items and calculate the total weight and value of all subsets. Consider the only subsets whose total weight is smaller than <code>W</code>. From all such subsets, pick the maximum value subset.</p>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/Anmol3299">Anmol</a> </dd>
<p >The idea is to consider all subsets of items and calculate the total weight and value of all subsets. Consider the only subsets whose total weight is smaller than <code>W</code>. From all such subsets, pick the maximum value subset.</p>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/Anmol3299" target="_blank">Anmol</a> </dd>
<dd>
<a href="https://github.com/Pardeep009">Pardeep</a> </dd></dl>
<a href="https://github.com/Pardeep009" target="_blank">Pardeep</a> </dd></dl>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">&#9670;&nbsp;</a></span>main()</h2>
<div class="memitem">
@@ -161,11 +160,11 @@ Algorithm</h3>
<p>Main function. </p>
<dl class="section return"><dt>Returns</dt><dd>0 on exit </dd></dl>
<div class="fragment"><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; {</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="comment">// Testing</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <a class="code" href="../../db/d16/0__1__knapsack_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>();</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;}</div>
<div class="fragment"><div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> {</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> <span class="comment">// Testing</span></div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> <a class="code hl_function" href="../../db/d16/0__1__knapsack_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>();</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span>}</div>
<div class="ttc" id="a0__1__knapsack_8cpp_html_aa8dca7b867074164d5f45b0f3851269d"><div class="ttname"><a href="../../db/d16/0__1__knapsack_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a></div><div class="ttdeci">static void test()</div><div class="ttdoc">Function to test above algorithm.</div><div class="ttdef"><b>Definition:</b> 0_1_knapsack.cpp:96</div></div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
@@ -176,7 +175,7 @@ Here is the call graph for this function:</div>
</div>
</div>
<a id="a15edf30f336885e5b851f6b7199c6cd1"></a>
<a id="a15edf30f336885e5b851f6b7199c6cd1" name="a15edf30f336885e5b851f6b7199c6cd1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a15edf30f336885e5b851f6b7199c6cd1">&#9670;&nbsp;</a></span>maxKnapsackValue()</h2>
<div class="memitem">
@@ -226,43 +225,43 @@ template&lt;size_t n&gt; </div>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>maximum value obtainable with given capacity. </dd></dl>
<div class="fragment"><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; {</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;std::vector&lt;int&gt;</a> &gt; maxValue(n + 1,</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int&gt;</a>(capacity + 1, 0));</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="comment">// outer loop will select no of items allowed</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="comment">// inner loop will select capcity of knapsack bag</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordtype">int</span> items = <span class="keyword">sizeof</span>(weight) / <span class="keyword">sizeof</span>(weight[0]);</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; items + 1; ++i) {</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 0; j &lt; capacity + 1; ++j) {</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">if</span> (i == 0 || j == 0) {</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="comment">// if no of items is zero or capacity is zero, then maxValue</span></div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="comment">// will be zero</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; maxValue[i][j] = 0;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (weight[i - 1] &lt;= j) {</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">// if the ith item&#39;s weight(in actual array it will be at i-1)</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="comment">// is less than or equal to the allowed weight i.e. j then we</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="comment">// can pick that item for our knapsack. maxValue will be the</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="comment">// obtained either by picking the current item or by not picking</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="comment">// current item</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; </div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="comment">// picking current item</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordtype">int</span> profit1 = value[i - 1] + maxValue[i - 1][j - weight[i - 1]];</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; </div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="comment">// not picking current item</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordtype">int</span> profit2 = maxValue[i - 1][j];</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; </div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; maxValue[i][j] = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/max.html">std::max</a>(profit1, profit2);</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="comment">// as weight of current item is greater than allowed weight, so</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="comment">// maxProfit will be profit obtained by excluding current item.</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; maxValue[i][j] = maxValue[i - 1][j];</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; }</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; }</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; }</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; </div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="comment">// returning maximum value</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">return</span> maxValue[items][capacity];</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;}</div>
<div class="fragment"><div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> {</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;std::vector&lt;int&gt;</a> &gt; maxValue(n + 1,</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int&gt;</a>(capacity + 1, 0));</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <span class="comment">// outer loop will select no of items allowed</span></div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="comment">// inner loop will select capcity of knapsack bag</span></div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordtype">int</span> items = <span class="keyword">sizeof</span>(weight) / <span class="keyword">sizeof</span>(weight[0]);</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; items + 1; ++i) {</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 0; j &lt; capacity + 1; ++j) {</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">if</span> (i == 0 || j == 0) {</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> <span class="comment">// if no of items is zero or capacity is zero, then maxValue</span></div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="comment">// will be zero</span></div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> maxValue[i][j] = 0;</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (weight[i - 1] &lt;= j) {</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="comment">// if the ith item&#39;s weight(in actual array it will be at i-1)</span></div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="comment">// is less than or equal to the allowed weight i.e. j then we</span></div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="comment">// can pick that item for our knapsack. maxValue will be the</span></div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <span class="comment">// obtained either by picking the current item or by not picking</span></div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> <span class="comment">// current item</span></div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> </div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="comment">// picking current item</span></div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <span class="keywordtype">int</span> profit1 = value[i - 1] + maxValue[i - 1][j - weight[i - 1]];</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> <span class="comment">// not picking current item</span></div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <span class="keywordtype">int</span> profit2 = maxValue[i - 1][j];</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> </div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> maxValue[i][j] = <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/max.html">std::max</a>(profit1, profit2);</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="comment">// as weight of current item is greater than allowed weight, so</span></div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="comment">// maxProfit will be profit obtained by excluding current item.</span></div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> maxValue[i][j] = maxValue[i - 1][j];</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> }</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> }</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> }</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> </div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> <span class="comment">// returning maximum value</span></div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">return</span> maxValue[items][capacity];</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span>}</div>
<div class="ttc" id="amax_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/algorithm/max.html">std::max</a></div><div class="ttdeci">T max(T... args)</div></div>
<div class="ttc" id="avector_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a></div></div>
</div><!-- fragment --><div class="dynheader">
@@ -274,7 +273,7 @@ Here is the call graph for this function:</div>
</div>
</div>
<a id="aa8dca7b867074164d5f45b0f3851269d"></a>
<a id="aa8dca7b867074164d5f45b0f3851269d" name="aa8dca7b867074164d5f45b0f3851269d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa8dca7b867074164d5f45b0f3851269d">&#9670;&nbsp;</a></span>test()</h2>
<div class="memitem">
@@ -299,31 +298,31 @@ Here is the call graph for this function:</div>
<p>Function to test above algorithm. </p>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
<div class="fragment"><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; {</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="comment">// Test 1</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> n1 = 3; <span class="comment">// number of items</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array&lt;int, n1&gt;</a> weight1 = {10, 20, 30}; <span class="comment">// weight of each item</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array&lt;int, n1&gt;</a> value1 = {60, 100, 120}; <span class="comment">// value of each item</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> capacity1 = 50; <span class="comment">// capacity of carrying bag</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> max_value1 = <a class="code" href="../../db/d16/0__1__knapsack_8cpp.html#a15edf30f336885e5b851f6b7199c6cd1">dynamic_programming::knapsack::maxKnapsackValue</a>(</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; capacity1, weight1, value1);</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> expected_max_value1 = 220;</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; assert(max_value1 == expected_max_value1);</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Maximum Knapsack value with &quot;</span> &lt;&lt; n1 &lt;&lt; <span class="stringliteral">&quot; items is &quot;</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; &lt;&lt; max_value1 &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; </div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="comment">// Test 2</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> n2 = 4; <span class="comment">// number of items</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array&lt;int, n2&gt;</a> weight2 = {24, 10, 10, 7}; <span class="comment">// weight of each item</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array&lt;int, n2&gt;</a> value2 = {24, 18, 18, 10}; <span class="comment">// value of each item</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> capacity2 = 25; <span class="comment">// capacity of carrying bag</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> max_value2 = <a class="code" href="../../db/d16/0__1__knapsack_8cpp.html#a15edf30f336885e5b851f6b7199c6cd1">dynamic_programming::knapsack::maxKnapsackValue</a>(</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; capacity2, weight2, value2);</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> expected_max_value2 = 36;</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; assert(max_value2 == expected_max_value2);</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Maximum Knapsack value with &quot;</span> &lt;&lt; n2 &lt;&lt; <span class="stringliteral">&quot; items is &quot;</span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; &lt;&lt; max_value2 &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;}</div>
<div class="fragment"><div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> {</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <span class="comment">// Test 1</span></div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n1 = 3; <span class="comment">// number of items</span></div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array&lt;int, n1&gt;</a> weight1 = {10, 20, 30}; <span class="comment">// weight of each item</span></div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array&lt;int, n1&gt;</a> value1 = {60, 100, 120}; <span class="comment">// value of each item</span></div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <span class="keyword">const</span> <span class="keywordtype">int</span> capacity1 = 50; <span class="comment">// capacity of carrying bag</span></div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <span class="keyword">const</span> <span class="keywordtype">int</span> max_value1 = <a class="code hl_function" href="../../db/d16/0__1__knapsack_8cpp.html#a15edf30f336885e5b851f6b7199c6cd1">dynamic_programming::knapsack::maxKnapsackValue</a>(</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> capacity1, weight1, value1);</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <span class="keyword">const</span> <span class="keywordtype">int</span> expected_max_value1 = 220;</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> assert(max_value1 == expected_max_value1);</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Maximum Knapsack value with &quot;</span> &lt;&lt; n1 &lt;&lt; <span class="stringliteral">&quot; items is &quot;</span></div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> &lt;&lt; max_value1 &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> </div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> <span class="comment">// Test 2</span></div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n2 = 4; <span class="comment">// number of items</span></div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array&lt;int, n2&gt;</a> weight2 = {24, 10, 10, 7}; <span class="comment">// weight of each item</span></div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array&lt;int, n2&gt;</a> value2 = {24, 18, 18, 10}; <span class="comment">// value of each item</span></div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <span class="keyword">const</span> <span class="keywordtype">int</span> capacity2 = 25; <span class="comment">// capacity of carrying bag</span></div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <span class="keyword">const</span> <span class="keywordtype">int</span> max_value2 = <a class="code hl_function" href="../../db/d16/0__1__knapsack_8cpp.html#a15edf30f336885e5b851f6b7199c6cd1">dynamic_programming::knapsack::maxKnapsackValue</a>(</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> capacity2, weight2, value2);</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> <span class="keyword">const</span> <span class="keywordtype">int</span> expected_max_value2 = 36;</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> assert(max_value2 == expected_max_value2);</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Maximum Knapsack value with &quot;</span> &lt;&lt; n2 &lt;&lt; <span class="stringliteral">&quot; items is &quot;</span></div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> &lt;&lt; max_value2 &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span>}</div>
<div class="ttc" id="a0__1__knapsack_8cpp_html_a15edf30f336885e5b851f6b7199c6cd1"><div class="ttname"><a href="../../db/d16/0__1__knapsack_8cpp.html#a15edf30f336885e5b851f6b7199c6cd1">dynamic_programming::knapsack::maxKnapsackValue</a></div><div class="ttdeci">int maxKnapsackValue(const int capacity, const std::array&lt; int, n &gt; &amp;weight, const std::array&lt; int, n &gt; &amp;value)</div><div class="ttdoc">Picking up all those items whose combined weight is below given capacity and calculating value of tho...</div><div class="ttdef"><b>Definition:</b> 0_1_knapsack.cpp:51</div></div>
<div class="ttc" id="aarray_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/array.html">std::array</a></div></div>
<div class="ttc" id="abasic_ostream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div></div>
@@ -343,7 +342,7 @@ Here is the call graph for this function:</div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_8a20dd5bfd5341a725342bf72b6b686f.html">dynamic_programming</a></li><li class="navelem"><a class="el" href="../../db/d16/0__1__knapsack_8cpp.html">0_1_knapsack.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.9.1 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: dynamic_programming::knapsack::maxKnapsackValue Pages: 1 -->
<svg width="255pt" height="57pt"

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: test Pages: 1 -->
<svg width="131pt" height="28pt"

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: main Pages: 1 -->
<svg width="205pt" height="28pt"

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: data_structures/stack.h Pages: 1 -->
<svg width="131pt" height="84pt"

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -2,8 +2,8 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: linear_probing::Entry Struct Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@@ -17,9 +17,9 @@
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
@@ -32,8 +32,7 @@
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Algorithms_in_C++
&#160;<span id="projectnumber">1.0.0</span>
<div id="projectname">Algorithms_in_C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">Set of algorithms implemented in C++.</div>
</td>
@@ -42,21 +41,22 @@
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<!-- Generated by Doxygen 1.9.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search",'Search','.html');
/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
@@ -70,7 +70,7 @@ $(function() {
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('db/d19/structlinear__probing_1_1_entry.html','../../'); initResizable(); });
/* @license-end */
</script>
@@ -94,27 +94,26 @@ $(document).ready(function(){initNavTree('db/d19/structlinear__probing_1_1_entry
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="../../d2/de3/structlinear__probing_1_1_entry-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">linear_probing::Entry Struct Reference</div> </div>
<div class="headertitle"><div class="title">linear_probing::Entry Struct Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
<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:a2139f643a3caf074da1db8a9fa16fa77"><td class="memItemLeft" align="right" valign="top"><a id="a2139f643a3caf074da1db8a9fa16fa77"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d19/structlinear__probing_1_1_entry.html#a2139f643a3caf074da1db8a9fa16fa77">Entry</a> (int <a class="el" href="../../db/d19/structlinear__probing_1_1_entry.html#a4d84e90b73022083761f85f8586c4c2a">key</a>=notPresent)</td></tr>
<tr class="memitem:a2139f643a3caf074da1db8a9fa16fa77"><td class="memItemLeft" align="right" valign="top"><a id="a2139f643a3caf074da1db8a9fa16fa77" name="a2139f643a3caf074da1db8a9fa16fa77"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>Entry</b> (int <a class="el" href="../../db/d19/structlinear__probing_1_1_entry.html#a4d84e90b73022083761f85f8586c4c2a">key</a>=notPresent)</td></tr>
<tr class="memdesc:a2139f643a3caf074da1db8a9fa16fa77"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor <br /></td></tr>
<tr class="separator:a2139f643a3caf074da1db8a9fa16fa77"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a4d84e90b73022083761f85f8586c4c2a"><td class="memItemLeft" align="right" valign="top"><a id="a4d84e90b73022083761f85f8586c4c2a"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d19/structlinear__probing_1_1_entry.html#a4d84e90b73022083761f85f8586c4c2a">key</a></td></tr>
<tr class="memitem:a4d84e90b73022083761f85f8586c4c2a"><td class="memItemLeft" align="right" valign="top"><a id="a4d84e90b73022083761f85f8586c4c2a" name="a4d84e90b73022083761f85f8586c4c2a"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>key</b></td></tr>
<tr class="memdesc:a4d84e90b73022083761f85f8586c4c2a"><td class="mdescLeft">&#160;</td><td class="mdescRight">key value <br /></td></tr>
<tr class="separator:a4d84e90b73022083761f85f8586c4c2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a class="el" href="../../db/d8b/struct_node.html">Node</a> object that holds key </p>
<div class="textblock"><p ><a class="el" href="../../db/d8b/struct_node.html">Node</a> object that holds key </p>
</div><hr/>The documentation for this struct was generated from the following file:<ul>
<li>hashing/<a class="el" href="../../d1/dc7/linear__probing__hash__table_8cpp.html">linear_probing_hash_table.cpp</a></li>
</ul>
@@ -124,7 +123,7 @@ int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../..
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d8/d89/namespacelinear__probing.html">linear_probing</a></li><li class="navelem"><a class="el" href="../../db/d19/structlinear__probing_1_1_entry.html">Entry</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.2 </li>
</ul>
</div>
</body>

View File

@@ -2,8 +2,8 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: Member List</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@@ -17,9 +17,9 @@
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
@@ -32,8 +32,7 @@
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Algorithms_in_C++
&#160;<span id="projectnumber">1.0.0</span>
<div id="projectname">Algorithms_in_C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">Set of algorithms implemented in C++.</div>
</td>
@@ -42,21 +41,22 @@
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<!-- Generated by Doxygen 1.9.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search",'Search','.html');
/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
@@ -70,7 +70,7 @@ $(function() {
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dc/d61/classgraph_1_1_graph.html','../../'); initResizable(); });
/* @license-end */
</script>
@@ -90,26 +90,25 @@ $(document).ready(function(){initNavTree('dc/d61/classgraph_1_1_graph.html','../
</div>
<div class="header">
<div class="headertitle">
<div class="title">graph::Graph&lt; T &gt; Member List</div> </div>
<div class="headertitle"><div class="title">graph::Graph&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="../../dc/d61/classgraph_1_1_graph.html">graph::Graph&lt; T &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html#a877b2cba40d8d46dde6fb4209effed19">add_edge</a>(T u, T v, bool bidir=true)</td><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html">graph::Graph&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html#acebf0505d625b043bb9c8c27c7a8def0">adjacency_list</a></td><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html">graph::Graph&lt; T &gt;</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html#ab1a1a96cd4cddf0d4feb02855c4c16af">breadth_first_search</a>(T src)</td><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html">graph::Graph&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>Graph</b>()=default (defined in <a class="el" href="../../dc/d61/classgraph_1_1_graph.html">graph::Graph&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html">graph::Graph&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html#acebf0505d625b043bb9c8c27c7a8def0">adjacency_list</a></td><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html">graph::Graph&lt; T &gt;</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html#a3755ec9e6a842238c7f4aac10b661981">breadth_first_search</a>(T src)</td><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html">graph::Graph&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Graph</b>()=default (defined in <a class="el" href="../../dc/d61/classgraph_1_1_graph.html">graph::Graph&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html">graph::Graph&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html#a8839fa14bff19d2deab4a618447c13e5">Graph</a>(size_t N, const std::vector&lt; std::pair&lt; int, int &gt; &gt; &amp;undirected_edges)</td><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html">graph::Graph&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html#a59940c462861f2fcf4951d1b6c084e6a">neighbors</a></td><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html">graph::Graph&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html#a59940c462861f2fcf4951d1b6c084e6a">neighbors</a></td><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html">graph::Graph&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html#a8930d1470d132b19e430d1c71f94c904">number_of_vertices</a>() const</td><td class="entry"><a class="el" href="../../dc/d61/classgraph_1_1_graph.html">graph::Graph&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></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.9.1 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.2 </li>
</ul>
</div>
</body>

View File

@@ -2,8 +2,8 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: math/n_bonacci.cpp File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@@ -17,9 +17,9 @@
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
@@ -32,8 +32,7 @@
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Algorithms_in_C++
&#160;<span id="projectnumber">1.0.0</span>
<div id="projectname">Algorithms_in_C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">Set of algorithms implemented in C++.</div>
</td>
@@ -42,21 +41,22 @@
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<!-- Generated by Doxygen 1.9.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search",'Search','.html');
/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
@@ -70,7 +70,7 @@ $(function() {
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('db/d27/n__bonacci_8cpp.html','../../'); initResizable(); });
/* @license-end */
</script>
@@ -93,12 +93,11 @@ $(document).ready(function(){initNavTree('db/d27/n__bonacci_8cpp.html','../../')
<div class="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">n_bonacci.cpp File Reference</div> </div>
<div class="headertitle"><div class="title">n_bonacci.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Implementation of the <a href="http://oeis.org/wiki/N-bonacci_numbers">N-bonacci</a> series.
<p>Implementation of the <a href="http://oeis.org/wiki/N-bonacci_numbers" target="_blank">N-bonacci</a> series.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;algorithm&gt;</code><br />
<code>#include &lt;cassert&gt;</code><br />
@@ -111,20 +110,20 @@ Include dependency graph for n_bonacci.cpp:</div>
</div>
</div>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:dd/d47/namespacemath"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d47/namespacemath.html">math</a></td></tr>
<tr class="memitem:dd/d47/namespacemath"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d47/namespacemath.html">math</a></td></tr>
<tr class="memdesc:dd/d47/namespacemath"><td class="mdescLeft">&#160;</td><td class="mdescRight">for IO operations <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:de/d36/namespacen__bonacci"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../de/d36/namespacen__bonacci.html">n_bonacci</a></td></tr>
<tr class="memdesc:de/d36/namespacen__bonacci"><td class="mdescLeft">&#160;</td><td class="mdescRight">Functions for the <a href="http://oeis.org/wiki/N-bonacci_numbers">N-bonacci</a> implementation. <br /></td></tr>
<tr class="memitem:de/d36/namespacen__bonacci"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../de/d36/namespacen__bonacci.html">n_bonacci</a></td></tr>
<tr class="memdesc:de/d36/namespacen__bonacci"><td class="mdescLeft">&#160;</td><td class="mdescRight">Functions for the <a href="http://oeis.org/wiki/N-bonacci_numbers" target="_blank">N-bonacci</a> implementation. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a767bc5427e0ebaf88ab5a7572a7d852e"><td class="memItemLeft" align="right" valign="top"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt; uint64_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d27/n__bonacci_8cpp.html#a767bc5427e0ebaf88ab5a7572a7d852e">math::n_bonacci::N_bonacci</a> (const uint64_t &amp;n, const uint64_t &amp;m)</td></tr>
<tr class="memdesc:a767bc5427e0ebaf88ab5a7572a7d852e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds the N-Bonacci series for the <code>n</code> parameter value and <code>m</code> parameter terms. <a href="../../db/d27/n__bonacci_8cpp.html#a767bc5427e0ebaf88ab5a7572a7d852e">More...</a><br /></td></tr>
<tr class="separator:a767bc5427e0ebaf88ab5a7572a7d852e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6849b68f760be628d5975ab3eddec63d"><td class="memItemLeft" align="right" valign="top"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt; uint64_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d27/n__bonacci_8cpp.html#a6849b68f760be628d5975ab3eddec63d">math::n_bonacci::N_bonacci</a> (const uint64_t &amp;n, const uint64_t &amp;m)</td></tr>
<tr class="memdesc:a6849b68f760be628d5975ab3eddec63d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds the N-Bonacci series for the <code>n</code> parameter value and <code>m</code> parameter terms. <a href="../../db/d27/n__bonacci_8cpp.html#a6849b68f760be628d5975ab3eddec63d">More...</a><br /></td></tr>
<tr class="separator:a6849b68f760be628d5975ab3eddec63d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8dca7b867074164d5f45b0f3851269d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d27/n__bonacci_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a> ()</td></tr>
<tr class="memdesc:aa8dca7b867074164d5f45b0f3851269d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self-test implementations. <a href="../../db/d27/n__bonacci_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">More...</a><br /></td></tr>
<tr class="separator:aa8dca7b867074164d5f45b0f3851269d"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -133,12 +132,12 @@ Functions</h2></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Implementation of the <a href="http://oeis.org/wiki/N-bonacci_numbers">N-bonacci</a> series. </p>
<p>In general, in N-bonacci sequence, we generate sum of preceding N numbers from the next term.</p>
<p>For example, a 3-bonacci sequence is the following: 0, 0, 1, 1, 2, 4, 7, 13, 24, 44, 81 In this code we take N and M as input where M is the number of terms to be printed of the N-bonacci series</p>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/Swastyy">Swastika Gupta</a> </dd></dl>
<div class="textblock"><p >Implementation of the <a href="http://oeis.org/wiki/N-bonacci_numbers" target="_blank">N-bonacci</a> series. </p>
<p >In general, in N-bonacci sequence, we generate sum of preceding N numbers from the next term.</p>
<p >For example, a 3-bonacci sequence is the following: 0, 0, 1, 1, 2, 4, 7, 13, 24, 44, 81 In this code we take N and M as input where M is the number of terms to be printed of the N-bonacci series</p>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/Swastyy" target="_blank">Swastika Gupta</a> </dd></dl>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">&#9670;&nbsp;</a></span>main()</h2>
<div class="memitem">
@@ -156,10 +155,10 @@ Functions</h2></td></tr>
<p>Main function. </p>
<dl class="section return"><dt>Returns</dt><dd>0 on exit </dd></dl>
<div class="fragment"><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; {</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <a class="code" href="../../db/d27/n__bonacci_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>(); <span class="comment">// run self-test implementations</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;}</div>
<div class="fragment"><div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> {</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> <a class="code hl_function" href="../../db/d27/n__bonacci_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>(); <span class="comment">// run self-test implementations</span></div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span>}</div>
<div class="ttc" id="an__bonacci_8cpp_html_aa8dca7b867074164d5f45b0f3851269d"><div class="ttname"><a href="../../db/d27/n__bonacci_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a></div><div class="ttdeci">static void test()</div><div class="ttdoc">Self-test implementations.</div><div class="ttdef"><b>Definition:</b> n_bonacci.cpp:63</div></div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
@@ -170,14 +169,14 @@ Here is the call graph for this function:</div>
</div>
</div>
<a id="a767bc5427e0ebaf88ab5a7572a7d852e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a767bc5427e0ebaf88ab5a7572a7d852e">&#9670;&nbsp;</a></span>N_bonacci()</h2>
<a id="a6849b68f760be628d5975ab3eddec63d" name="a6849b68f760be628d5975ab3eddec63d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6849b68f760be628d5975ab3eddec63d">&#9670;&nbsp;</a></span>N_bonacci()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt;uint64_t&gt; math::n_bonacci::N_bonacci </td>
<td class="memname"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt; uint64_t &gt; math::n_bonacci::N_bonacci </td>
<td>(</td>
<td class="paramtype">const uint64_t &amp;&#160;</td>
<td class="paramname"><em>n</em>, </td>
@@ -205,34 +204,34 @@ Here is the call graph for this function:</div>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the n-bonacci sequence as vector array </dd></dl>
<p>we initialise the (n-1)th term as 1 which is the sum of preceding N zeros</p>
<p>similarily the sum of preceding N zeros and the (N+1)th 1 is also 1</p>
<div class="fragment"><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; {</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> a(m, 0); <span class="comment">// we create an empty array of size m</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; </div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; a[n - 1] = 1; <span class="comment">/// we initialise the (n-1)th term as 1 which is the sum of</span><span class="comment"></span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> /// preceding N zeros</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"></span> a[n] = 1; <span class="comment">/// similarily the sum of preceding N zeros and the (N+1)th 1 is</span><span class="comment"></span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> /// also 1</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"></span> <span class="keywordflow">for</span> (uint64_t i = n + 1; i &lt; m; i++) {</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="comment">// this is an optimized solution that works in O(M) time and takes O(M)</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="comment">// extra space here we use the concept of the sliding window the current</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="comment">// term can be computed using the given formula</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; a[i] = 2 * a[i - 1] - a[i - 1 - n];</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; }</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordflow">return</span> a;</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;}</div>
<div class="ttc" id="avector_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt; uint64_t &gt;</a></div></div>
<p >we initialise the (n-1)th term as 1 which is the sum of preceding N zeros</p>
<p >similarily the sum of preceding N zeros and the (N+1)th 1 is also 1</p>
<div class="fragment"><div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> {</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> a(m, 0); <span class="comment">// we create an empty array of size m</span></div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> a[n - 1] = 1; <span class="comment">/// we initialise the (n-1)th term as 1 which is the sum of</span><span class="comment"></span></div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span><span class="comment"> /// preceding N zeros</span></div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span><span class="comment"></span> a[n] = 1; <span class="comment">/// similarily the sum of preceding N zeros and the (N+1)th 1 is</span><span class="comment"></span></div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span><span class="comment"> /// also 1</span></div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span><span class="comment"></span> <span class="keywordflow">for</span> (uint64_t i = n + 1; i &lt; m; i++) {</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="comment">// this is an optimized solution that works in O(M) time and takes O(M)</span></div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <span class="comment">// extra space here we use the concept of the sliding window the current</span></div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="comment">// term can be computed using the given formula</span></div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> a[i] = 2 * a[i - 1] - a[i - 1 - n];</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> }</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">return</span> a;</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span>}</div>
<div class="ttc" id="avector_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a></div></div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="../../db/d27/n__bonacci_8cpp_a767bc5427e0ebaf88ab5a7572a7d852e_cgraph.svg" width="148" height="76"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
<div class="center"><iframe scrolling="no" frameborder="0" src="../../db/d27/n__bonacci_8cpp_a6849b68f760be628d5975ab3eddec63d_cgraph.svg" width="148" height="76"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</div>
</div>
</div>
<a id="aa8dca7b867074164d5f45b0f3851269d"></a>
<a id="aa8dca7b867074164d5f45b0f3851269d" name="aa8dca7b867074164d5f45b0f3851269d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa8dca7b867074164d5f45b0f3851269d">&#9670;&nbsp;</a></span>test()</h2>
<div class="memitem">
@@ -257,64 +256,64 @@ Here is the call graph for this function:</div>
<p>Self-test implementations. </p>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
<div class="fragment"><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; {</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="comment">// n = 1 m = 1 return [1, 1]</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;1st test&quot;</span>;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> arr1 = <a class="code" href="../../db/d27/n__bonacci_8cpp.html#a767bc5427e0ebaf88ab5a7572a7d852e">math::n_bonacci::N_bonacci</a>(</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; 1, 1); <span class="comment">// first input is the param n and second one is the param m for</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="comment">// N-bonacci func</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> output_array1 = {</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; 1, 1}; <span class="comment">// It is the expected output series of length m</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; assert(<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/equal.html">std::equal</a>(<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(arr1), <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/end.html">std::end</a>(arr1),</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(output_array1)));</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; </div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="comment">// n = 5 m = 15 return [0, 0, 0, 0, 1, 1, 2, 4, 8, 16, 31, 61, 120, 236,</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="comment">// 464]</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;2nd test&quot;</span>;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> arr2 = <a class="code" href="../../db/d27/n__bonacci_8cpp.html#a767bc5427e0ebaf88ab5a7572a7d852e">math::n_bonacci::N_bonacci</a>(</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; 5, 15); <span class="comment">// first input is the param n and second one is the param m for</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="comment">// N-bonacci func</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> output_array2 = {</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; 0, 0, 0, 0, 1, 1, 2, 4,</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; 8, 16, 31, 61, 120, 236, 464}; <span class="comment">// It is the expected output series of</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="comment">// length m</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; assert(<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/equal.html">std::equal</a>(<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(arr2), <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/end.html">std::end</a>(arr2),</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(output_array2)));</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; </div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="comment">// n = 6 m = 17 return [0, 0, 0, 0, 0, 1, 1, 2, 4, 8, 16, 32, 63, 125, 248,</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="comment">// 492, 976]</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;3rd test&quot;</span>;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> arr3 = <a class="code" href="../../db/d27/n__bonacci_8cpp.html#a767bc5427e0ebaf88ab5a7572a7d852e">math::n_bonacci::N_bonacci</a>(</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; 6, 17); <span class="comment">// first input is the param n and second one is the param m for</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="comment">// N-bonacci func</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> output_array3 = {</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; 0, 0, 0, 0, 0, 1, 1, 2, 4,</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; 8, 16, 32, 63, 125, 248, 492, 976}; <span class="comment">// It is the expected output series</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="comment">// of length m</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; assert(<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/equal.html">std::equal</a>(<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(arr3), <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/end.html">std::end</a>(arr3),</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(output_array3)));</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; </div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="comment">// n = 56 m = 15 return [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;4th test&quot;</span>;</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> arr4 = <a class="code" href="../../db/d27/n__bonacci_8cpp.html#a767bc5427e0ebaf88ab5a7572a7d852e">math::n_bonacci::N_bonacci</a>(</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; 56, 15); <span class="comment">// first input is the param n and second one is the param m</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="comment">// for N-bonacci func</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> output_array4 = {</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; 0, 0, 0, 0, 0, 0, 0, 0,</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; 0, 0, 0, 0, 0, 0, 0}; <span class="comment">// It is the expected output series of length m</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; assert(<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/equal.html">std::equal</a>(<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(arr4), <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/end.html">std::end</a>(arr4),</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(output_array4)));</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;}</div>
<div class="fragment"><div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> {</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <span class="comment">// n = 1 m = 1 return [1, 1]</span></div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;1st test&quot;</span>;</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> arr1 = <a class="code hl_function" href="../../db/d27/n__bonacci_8cpp.html#a6849b68f760be628d5975ab3eddec63d">math::n_bonacci::N_bonacci</a>(</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> 1, 1); <span class="comment">// first input is the param n and second one is the param m for</span></div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <span class="comment">// N-bonacci func</span></div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> output_array1 = {</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> 1, 1}; <span class="comment">// It is the expected output series of length m</span></div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> assert(<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/equal.html">std::equal</a>(<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(arr1), <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/end.html">std::end</a>(arr1),</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(output_array1)));</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> </div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <span class="comment">// n = 5 m = 15 return [0, 0, 0, 0, 1, 1, 2, 4, 8, 16, 31, 61, 120, 236,</span></div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="comment">// 464]</span></div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;2nd test&quot;</span>;</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> arr2 = <a class="code hl_function" href="../../db/d27/n__bonacci_8cpp.html#a6849b68f760be628d5975ab3eddec63d">math::n_bonacci::N_bonacci</a>(</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> 5, 15); <span class="comment">// first input is the param n and second one is the param m for</span></div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="comment">// N-bonacci func</span></div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> output_array2 = {</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> 0, 0, 0, 0, 1, 1, 2, 4,</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> 8, 16, 31, 61, 120, 236, 464}; <span class="comment">// It is the expected output series of</span></div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="comment">// length m</span></div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> assert(<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/equal.html">std::equal</a>(<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(arr2), <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/end.html">std::end</a>(arr2),</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(output_array2)));</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> </div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> <span class="comment">// n = 6 m = 17 return [0, 0, 0, 0, 0, 1, 1, 2, 4, 8, 16, 32, 63, 125, 248,</span></div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> <span class="comment">// 492, 976]</span></div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;3rd test&quot;</span>;</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> arr3 = <a class="code hl_function" href="../../db/d27/n__bonacci_8cpp.html#a6849b68f760be628d5975ab3eddec63d">math::n_bonacci::N_bonacci</a>(</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> 6, 17); <span class="comment">// first input is the param n and second one is the param m for</span></div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="comment">// N-bonacci func</span></div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> output_array3 = {</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> 0, 0, 0, 0, 0, 1, 1, 2, 4,</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> 8, 16, 32, 63, 125, 248, 492, 976}; <span class="comment">// It is the expected output series</span></div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="comment">// of length m</span></div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> assert(<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/equal.html">std::equal</a>(<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(arr3), <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/end.html">std::end</a>(arr3),</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(output_array3)));</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> </div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> <span class="comment">// n = 56 m = 15 return [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]</span></div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;4th test&quot;</span>;</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> arr4 = <a class="code hl_function" href="../../db/d27/n__bonacci_8cpp.html#a6849b68f760be628d5975ab3eddec63d">math::n_bonacci::N_bonacci</a>(</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> 56, 15); <span class="comment">// first input is the param n and second one is the param m</span></div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <span class="comment">// for N-bonacci func</span></div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;uint64_t&gt;</a> output_array4 = {</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> 0, 0, 0, 0, 0, 0, 0, 0,</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> 0, 0, 0, 0, 0, 0, 0}; <span class="comment">// It is the expected output series of length m</span></div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> assert(<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/equal.html">std::equal</a>(<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(arr4), <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/end.html">std::end</a>(arr4),</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(output_array4)));</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span>}</div>
<div class="ttc" id="abasic_ostream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div></div>
<div class="ttc" id="abegin_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a></div><div class="ttdeci">T begin(T... args)</div></div>
<div class="ttc" id="aend_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/iterator/end.html">std::end</a></div><div class="ttdeci">T end(T... args)</div></div>
<div class="ttc" id="aendl_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a></div><div class="ttdeci">T endl(T... args)</div></div>
<div class="ttc" id="aequal_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/algorithm/equal.html">std::equal</a></div><div class="ttdeci">T equal(T... args)</div></div>
<div class="ttc" id="an__bonacci_8cpp_html_a767bc5427e0ebaf88ab5a7572a7d852e"><div class="ttname"><a href="../../db/d27/n__bonacci_8cpp.html#a767bc5427e0ebaf88ab5a7572a7d852e">math::n_bonacci::N_bonacci</a></div><div class="ttdeci">std::vector&lt; uint64_t &gt; N_bonacci(const uint64_t &amp;n, const uint64_t &amp;m)</div><div class="ttdoc">Finds the N-Bonacci series for the n parameter value and m parameter terms.</div><div class="ttdef"><b>Definition:</b> n_bonacci.cpp:41</div></div>
<div class="ttc" id="an__bonacci_8cpp_html_a6849b68f760be628d5975ab3eddec63d"><div class="ttname"><a href="../../db/d27/n__bonacci_8cpp.html#a6849b68f760be628d5975ab3eddec63d">math::n_bonacci::N_bonacci</a></div><div class="ttdeci">std::vector&lt; uint64_t &gt; N_bonacci(const uint64_t &amp;n, const uint64_t &amp;m)</div><div class="ttdoc">Finds the N-Bonacci series for the n parameter value and m parameter terms.</div><div class="ttdef"><b>Definition:</b> n_bonacci.cpp:41</div></div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
@@ -330,7 +329,7 @@ Here is the call graph for this function:</div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_296d53ceaeaa7e099814a6def439fe8a.html">math</a></li><li class="navelem"><a class="el" href="../../db/d27/n__bonacci_8cpp.html">n_bonacci.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.9.1 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.2 </li>
</ul>
</div>
</body>

View File

@@ -1,6 +1,6 @@
var n__bonacci_8cpp =
[
[ "main", "db/d27/n__bonacci_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4", null ],
[ "N_bonacci", "db/d27/n__bonacci_8cpp.html#a767bc5427e0ebaf88ab5a7572a7d852e", null ],
[ "N_bonacci", "db/d27/n__bonacci_8cpp.html#a6849b68f760be628d5975ab3eddec63d", null ],
[ "test", "db/d27/n__bonacci_8cpp.html#aa8dca7b867074164d5f45b0f3851269d", 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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: math::n_bonacci::N_bonacci Pages: 1 -->
<svg width="111pt" height="57pt"

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: test Pages: 1 -->
<svg width="137pt" height="142pt"

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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: main Pages: 1 -->
<svg width="211pt" height="142pt"

Before

Width:  |  Height:  |  Size: 4.5 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

View File

@@ -1,5 +0,0 @@
<map id="geometry::jarvis::Convexhull" name="geometry::jarvis::Convexhull">
<area shape="rect" id="node1" title=" " alt="" coords="5,199,195,225"/>
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector.html" title=" " alt="" coords="25,95,175,136"/>
<area shape="rect" id="node3" href="$d9/d5a/structgeometry_1_1jarvis_1_1_point.html" title=" " alt="" coords="23,5,177,32"/>
</map>

View File

@@ -1 +0,0 @@
b5b9bdb210c61fea80c27a247d8cec3e

View File

@@ -1,55 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
-->
<!-- Title: geometry::jarvis::Convexhull Pages: 1 -->
<svg width="150pt" height="173pt"
viewBox="0.00 0.00 150.00 173.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 169)">
<title>geometry::jarvis::Convexhull</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-169 146,-169 146,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<polygon fill="#bfbfbf" stroke="black" points="0,-0.5 0,-19.5 142,-19.5 142,-0.5 0,-0.5"/>
<text text-anchor="middle" x="71" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">geometry::jarvis::Convexhull</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector.html" xlink:title=" ">
<polygon fill="white" stroke="black" points="14.5,-67.5 14.5,-97.5 127.5,-97.5 127.5,-67.5 14.5,-67.5"/>
<text text-anchor="start" x="22.5" y="-85.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector&lt; geometry</text>
<text text-anchor="middle" x="71" y="-74.5" font-family="Helvetica,sans-Serif" font-size="10.00">::jarvis::Point &gt;</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node1 -->
<g id="edge1" class="edge">
<title>Node2&#45;&gt;Node1</title>
<path fill="none" stroke="#9a32cd" stroke-dasharray="5,2" d="M71,-57.09C71,-44.21 71,-29.2 71,-19.89"/>
<polygon fill="#9a32cd" stroke="#9a32cd" points="67.5,-57.23 71,-67.23 74.5,-57.23 67.5,-57.23"/>
<text text-anchor="middle" x="86" y="-41" font-family="Helvetica,sans-Serif" font-size="10.00"> points</text>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a xlink:href="../../d9/d5a/structgeometry_1_1jarvis_1_1_point.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="13.5,-145.5 13.5,-164.5 128.5,-164.5 128.5,-145.5 13.5,-145.5"/>
<text text-anchor="middle" x="71" y="-152.5" font-family="Helvetica,sans-Serif" font-size="10.00">geometry::jarvis::Point</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node2 -->
<g id="edge2" class="edge">
<title>Node3&#45;&gt;Node2</title>
<path fill="none" stroke="#9a32cd" stroke-dasharray="5,2" d="M71,-135.24C71,-123.41 71,-108.38 71,-97.58"/>
<polygon fill="#9a32cd" stroke="#9a32cd" points="67.5,-135.36 71,-145.36 74.5,-135.36 67.5,-135.36"/>
<text text-anchor="middle" x="93" y="-119" font-family="Helvetica,sans-Serif" font-size="10.00"> elements</text>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: math/fast_power.cpp Pages: 1 -->
<svg width="378pt" height="84pt"

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 4.7 KiB

View File

@@ -2,8 +2,8 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: Member List</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@@ -17,9 +17,9 @@
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
@@ -32,8 +32,7 @@
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Algorithms_in_C++
&#160;<span id="projectnumber">1.0.0</span>
<div id="projectname">Algorithms_in_C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">Set of algorithms implemented in C++.</div>
</td>
@@ -42,21 +41,22 @@
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<!-- Generated by Doxygen 1.9.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search",'Search','.html');
/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
@@ -70,7 +70,7 @@ $(function() {
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html','../../'); initResizable(); });
/* @license-end */
</script>
@@ -90,24 +90,23 @@ $(document).ready(function(){initNavTree('da/d37/structdata__structures_1_1spars
</div>
<div class="header">
<div class="headertitle">
<div class="title">data_structures::sparse_table::Sparse_table Member List</div> </div>
<div class="headertitle"><div class="title">data_structures::sparse_table::Sparse_table Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="../../da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html">data_structures::sparse_table::Sparse_table</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="../../da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html#ab78620742305a35ff2f8d61179f47d3e">A</a></td><td class="entry"><a class="el" href="../../da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html">data_structures::sparse_table::Sparse_table</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="../../da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html#a6cf72f93b1551f0d943c585b4f173be3">LOG</a></td><td class="entry"><a class="el" href="../../da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html">data_structures::sparse_table::Sparse_table</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="../../da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html#a6cf72f93b1551f0d943c585b4f173be3">LOG</a></td><td class="entry"><a class="el" href="../../da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html">data_structures::sparse_table::Sparse_table</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html#ad71ecd43d0af1127df5f4006258f9635">n</a></td><td class="entry"><a class="el" href="../../da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html">data_structures::sparse_table::Sparse_table</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="../../da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html#a0c8cbe7239232863f104793c08273039">query</a>(int64_t l, int64_t r)</td><td class="entry"><a class="el" href="../../da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html">data_structures::sparse_table::Sparse_table</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="../../da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html#a0c8cbe7239232863f104793c08273039">query</a>(int64_t l, int64_t r)</td><td class="entry"><a class="el" href="../../da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html">data_structures::sparse_table::Sparse_table</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html#ad36b9a20fed47b068e407008c04e9f81">ST</a></td><td class="entry"><a class="el" href="../../da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html">data_structures::sparse_table::Sparse_table</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.9.1 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.2 </li>
</ul>
</div>
</body>

View File

@@ -2,8 +2,8 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: others/tower_of_hanoi.cpp File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@@ -17,9 +17,9 @@
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
@@ -32,8 +32,7 @@
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Algorithms_in_C++
&#160;<span id="projectnumber">1.0.0</span>
<div id="projectname">Algorithms_in_C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">Set of algorithms implemented in C++.</div>
</td>
@@ -42,21 +41,22 @@
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<!-- Generated by Doxygen 1.9.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search",'Search','.html');
/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
@@ -70,7 +70,7 @@ $(function() {
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('db/d3c/tower__of__hanoi_8cpp.html','../../'); initResizable(); });
/* @license-end */
</script>
@@ -93,12 +93,11 @@ $(document).ready(function(){initNavTree('db/d3c/tower__of__hanoi_8cpp.html','..
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">tower_of_hanoi.cpp File Reference</div> </div>
<div class="headertitle"><div class="title">tower_of_hanoi.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Solve the <a href="https://en.wikipedia.org/wiki/Tower_of_Hanoi">Tower of Hanoi</a> problem.
<p>Solve the <a href="https://en.wikipedia.org/wiki/Tower_of_Hanoi" target="_blank">Tower of Hanoi</a> problem.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;iostream&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
@@ -108,12 +107,12 @@ Include dependency graph for tower_of_hanoi.cpp:</div>
</div>
</div>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d2c/structtower.html">tower</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a746d9a3984bba88fd6dd91978f6931ed"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d3c/tower__of__hanoi_8cpp.html#a746d9a3984bba88fd6dd91978f6931ed">show</a> (const struct <a class="el" href="../../d2/d2c/structtower.html">tower</a> *const F, const struct <a class="el" href="../../d2/d2c/structtower.html">tower</a> *const T, const struct <a class="el" href="../../d2/d2c/structtower.html">tower</a> *const U)</td></tr>
<tr class="separator:a746d9a3984bba88fd6dd91978f6931ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -125,9 +124,9 @@ Functions</h2></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Solve the <a href="https://en.wikipedia.org/wiki/Tower_of_Hanoi">Tower of Hanoi</a> problem. </p>
<div class="textblock"><p >Solve the <a href="https://en.wikipedia.org/wiki/Tower_of_Hanoi" target="_blank">Tower of Hanoi</a> problem. </p>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">&#9670;&nbsp;</a></span>main()</h2>
<div class="memitem">
@@ -142,28 +141,28 @@ Functions</h2></td></tr>
</tr>
</table>
</div><div class="memdoc">
<p>Main function </p>
<div class="fragment"><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; {</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">struct </span><a class="code" href="../../d2/d2c/structtower.html">tower</a> F, U, T;</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; </div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; F.<a class="code" href="../../d2/d2c/structtower.html#acb535964abd34c47678a4ade0628223d">top</a> = 0;</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; U.top = 0;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; T.top = 0;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; </div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordtype">int</span> no;</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; </div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;\nEnter number of discs : &quot;</span>;</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; no;</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; </div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = no; i &gt; 0; i--) {</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; F.values[F.top++] = i;</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; }</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; </div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="../../db/d3c/tower__of__hanoi_8cpp.html#a746d9a3984bba88fd6dd91978f6931ed">show</a>(&amp;F, &amp;T, &amp;U);</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="../../db/d3c/tower__of__hanoi_8cpp.html#ab037f72a5eac476535a6cfbbcb965417">TH</a>(no, &amp;F, &amp;U, &amp;T);</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; </div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;}</div>
<p >Main function </p>
<div class="fragment"><div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> {</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="keyword">struct </span><a class="code hl_struct" href="../../d2/d2c/structtower.html">tower</a> F, U, T;</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> </div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> F.<a class="code hl_variable" href="../../d2/d2c/structtower.html#acb535964abd34c47678a4ade0628223d">top</a> = 0;</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> U.top = 0;</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> T.top = 0;</div>
<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="keywordtype">int</span> no;</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> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;\nEnter number of discs : &quot;</span>;</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; no;</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> </div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = no; i &gt; 0; i--) {</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> F.values[F.top++] = i;</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> }</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> </div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> <a class="code hl_function" href="../../db/d3c/tower__of__hanoi_8cpp.html#a746d9a3984bba88fd6dd91978f6931ed">show</a>(&amp;F, &amp;T, &amp;U);</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> <a class="code hl_function" href="../../db/d3c/tower__of__hanoi_8cpp.html#ab037f72a5eac476535a6cfbbcb965417">TH</a>(no, &amp;F, &amp;U, &amp;T);</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> </div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span>}</div>
<div class="ttc" id="abasic_istream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a></div></div>
<div class="ttc" id="abasic_ostream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div></div>
<div class="ttc" id="astructtower_html"><div class="ttname"><a href="../../d2/d2c/structtower.html">tower</a></div><div class="ttdef"><b>Definition:</b> tower_of_hanoi.cpp:11</div></div>
@@ -173,13 +172,13 @@ Functions</h2></td></tr>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="../../db/d3c/tower__of__hanoi_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4_cgraph.svg" width="251" height="88"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
<div class="center"><iframe scrolling="no" frameborder="0" src="../../db/d3c/tower__of__hanoi_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4_cgraph.svg" width="251" height="100"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</div>
</div>
</div>
<a id="af4cfc41e546f1f8d25f01e0804e8b61d"></a>
<a id="af4cfc41e546f1f8d25f01e0804e8b61d" name="af4cfc41e546f1f8d25f01e0804e8b61d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af4cfc41e546f1f8d25f01e0804e8b61d">&#9670;&nbsp;</a></span>mov()</h2>
<div class="memitem">
@@ -204,23 +203,23 @@ Here is the call graph for this function:</div>
</tr>
</table>
</div><div class="memdoc">
<p>Move one disc from one tower to another </p><dl class="params"><dt>Parameters</dt><dd>
<p >Move one disc from one tower to another </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in,out]</td><td class="paramname">From</td><td>tower to move disk <em>from</em> </td></tr>
<tr><td class="paramdir">[in,out]</td><td class="paramname">To</td><td>tower to move disk <em>to</em> </td></tr>
</table>
</dd>
</dl>
<div class="fragment"><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; {</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; --From-&gt;<a class="code" href="../../d2/d2c/structtower.html#acb535964abd34c47678a4ade0628223d">top</a>;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; To-&gt;<a class="code" href="../../d2/d2c/structtower.html#a3ebb75c13c57d51a8a1ba1ea54a515e9">values</a>[To-&gt;<a class="code" href="../../d2/d2c/structtower.html#acb535964abd34c47678a4ade0628223d">top</a>] = From-&gt;<a class="code" href="../../d2/d2c/structtower.html#a3ebb75c13c57d51a8a1ba1ea54a515e9">values</a>[From-&gt;<a class="code" href="../../d2/d2c/structtower.html#acb535964abd34c47678a4ade0628223d">top</a>];</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; ++To-&gt;<a class="code" href="../../d2/d2c/structtower.html#acb535964abd34c47678a4ade0628223d">top</a>;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;}</div>
<div class="fragment"><div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> {</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> --From-&gt;<a class="code hl_variable" href="../../d2/d2c/structtower.html#acb535964abd34c47678a4ade0628223d">top</a>;</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> To-&gt;<a class="code hl_variable" href="../../d2/d2c/structtower.html#a3ebb75c13c57d51a8a1ba1ea54a515e9">values</a>[To-&gt;<a class="code hl_variable" href="../../d2/d2c/structtower.html#acb535964abd34c47678a4ade0628223d">top</a>] = From-&gt;<a class="code hl_variable" href="../../d2/d2c/structtower.html#a3ebb75c13c57d51a8a1ba1ea54a515e9">values</a>[From-&gt;<a class="code hl_variable" href="../../d2/d2c/structtower.html#acb535964abd34c47678a4ade0628223d">top</a>];</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> ++To-&gt;<a class="code hl_variable" href="../../d2/d2c/structtower.html#acb535964abd34c47678a4ade0628223d">top</a>;</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span>}</div>
<div class="ttc" id="astructtower_html_a3ebb75c13c57d51a8a1ba1ea54a515e9"><div class="ttname"><a href="../../d2/d2c/structtower.html#a3ebb75c13c57d51a8a1ba1ea54a515e9">tower::values</a></div><div class="ttdeci">int values[10]</div><div class="ttdoc">Values in the tower.</div><div class="ttdef"><b>Definition:</b> tower_of_hanoi.cpp:13</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a746d9a3984bba88fd6dd91978f6931ed"></a>
<a id="a746d9a3984bba88fd6dd91978f6931ed" name="a746d9a3984bba88fd6dd91978f6931ed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a746d9a3984bba88fd6dd91978f6931ed">&#9670;&nbsp;</a></span>show()</h2>
<div class="memitem">
@@ -251,25 +250,25 @@ Here is the call graph for this function:</div>
</tr>
</table>
</div><div class="memdoc">
<p>Display the towers </p>
<div class="fragment"><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; {</div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;\n\n\tF : &quot;</span>;</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; F-&gt;<a class="code" href="../../d2/d2c/structtower.html#acb535964abd34c47678a4ade0628223d">top</a>; i++) {</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; F-&gt;<a class="code" href="../../d2/d2c/structtower.html#a3ebb75c13c57d51a8a1ba1ea54a515e9">values</a>[i] &lt;&lt; <span class="stringliteral">&quot;\t&quot;</span>;</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; }</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;\n\tU : &quot;</span>;</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; U-&gt;<a class="code" href="../../d2/d2c/structtower.html#acb535964abd34c47678a4ade0628223d">top</a>; i++) {</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; U-&gt;<a class="code" href="../../d2/d2c/structtower.html#a3ebb75c13c57d51a8a1ba1ea54a515e9">values</a>[i] &lt;&lt; <span class="stringliteral">&quot;\t&quot;</span>;</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; }</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;\n\tT : &quot;</span>;</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; T-&gt;<a class="code" href="../../d2/d2c/structtower.html#acb535964abd34c47678a4ade0628223d">top</a>; i++) {</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; T-&gt;<a class="code" href="../../d2/d2c/structtower.html#a3ebb75c13c57d51a8a1ba1ea54a515e9">values</a>[i] &lt;&lt; <span class="stringliteral">&quot;\t&quot;</span>;</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; }</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;}</div>
<p >Display the towers </p>
<div class="fragment"><div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> {</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;\n\n\tF : &quot;</span>;</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; F-&gt;<a class="code hl_variable" href="../../d2/d2c/structtower.html#acb535964abd34c47678a4ade0628223d">top</a>; i++) {</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; F-&gt;<a class="code hl_variable" href="../../d2/d2c/structtower.html#a3ebb75c13c57d51a8a1ba1ea54a515e9">values</a>[i] &lt;&lt; <span class="stringliteral">&quot;\t&quot;</span>;</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> }</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;\n\tU : &quot;</span>;</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; U-&gt;<a class="code hl_variable" href="../../d2/d2c/structtower.html#acb535964abd34c47678a4ade0628223d">top</a>; i++) {</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; U-&gt;<a class="code hl_variable" href="../../d2/d2c/structtower.html#a3ebb75c13c57d51a8a1ba1ea54a515e9">values</a>[i] &lt;&lt; <span class="stringliteral">&quot;\t&quot;</span>;</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> }</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;\n\tT : &quot;</span>;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; T-&gt;<a class="code hl_variable" href="../../d2/d2c/structtower.html#acb535964abd34c47678a4ade0628223d">top</a>; i++) {</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; T-&gt;<a class="code hl_variable" href="../../d2/d2c/structtower.html#a3ebb75c13c57d51a8a1ba1ea54a515e9">values</a>[i] &lt;&lt; <span class="stringliteral">&quot;\t&quot;</span>;</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> }</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ab037f72a5eac476535a6cfbbcb965417"></a>
<a id="ab037f72a5eac476535a6cfbbcb965417" name="ab037f72a5eac476535a6cfbbcb965417"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab037f72a5eac476535a6cfbbcb965417">&#9670;&nbsp;</a></span>TH()</h2>
<div class="memitem">
@@ -306,7 +305,7 @@ Here is the call graph for this function:</div>
</tr>
</table>
</div><div class="memdoc">
<p>Recursive algorithm to solve the puzzle </p><dl class="params"><dt>Parameters</dt><dd>
<p >Recursive algorithm to solve the puzzle </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">n</td><td>starting number of disks </td></tr>
<tr><td class="paramdir">[in,out]</td><td class="paramname">From</td><td>tower to move disks from </td></tr>
@@ -315,17 +314,17 @@ Here is the call graph for this function:</div>
</table>
</dd>
</dl>
<div class="fragment"><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; {</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">if</span> (n == 1) {</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="../../db/d3c/tower__of__hanoi_8cpp.html#af4cfc41e546f1f8d25f01e0804e8b61d">mov</a>(From, To);</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="../../db/d3c/tower__of__hanoi_8cpp.html#a746d9a3984bba88fd6dd91978f6931ed">show</a>(From, To, Using);</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <a class="code" href="../../db/d3c/tower__of__hanoi_8cpp.html#ab037f72a5eac476535a6cfbbcb965417">TH</a>(n - 1, From, To, Using);</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="../../db/d3c/tower__of__hanoi_8cpp.html#af4cfc41e546f1f8d25f01e0804e8b61d">mov</a>(From, To);</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="../../db/d3c/tower__of__hanoi_8cpp.html#a746d9a3984bba88fd6dd91978f6931ed">show</a>(From, To, Using);</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="../../db/d3c/tower__of__hanoi_8cpp.html#ab037f72a5eac476535a6cfbbcb965417">TH</a>(n - 1, Using, From, To);</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; }</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;}</div>
<div class="fragment"><div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> {</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="keywordflow">if</span> (n == 1) {</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <a class="code hl_function" href="../../db/d3c/tower__of__hanoi_8cpp.html#af4cfc41e546f1f8d25f01e0804e8b61d">mov</a>(From, To);</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <a class="code hl_function" href="../../db/d3c/tower__of__hanoi_8cpp.html#a746d9a3984bba88fd6dd91978f6931ed">show</a>(From, To, Using);</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <a class="code hl_function" href="../../db/d3c/tower__of__hanoi_8cpp.html#ab037f72a5eac476535a6cfbbcb965417">TH</a>(n - 1, From, To, Using);</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <a class="code hl_function" href="../../db/d3c/tower__of__hanoi_8cpp.html#af4cfc41e546f1f8d25f01e0804e8b61d">mov</a>(From, To);</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <a class="code hl_function" href="../../db/d3c/tower__of__hanoi_8cpp.html#a746d9a3984bba88fd6dd91978f6931ed">show</a>(From, To, Using);</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <a class="code hl_function" href="../../db/d3c/tower__of__hanoi_8cpp.html#ab037f72a5eac476535a6cfbbcb965417">TH</a>(n - 1, Using, From, To);</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> }</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span>}</div>
<div class="ttc" id="atower__of__hanoi_8cpp_html_af4cfc41e546f1f8d25f01e0804e8b61d"><div class="ttname"><a href="../../db/d3c/tower__of__hanoi_8cpp.html#af4cfc41e546f1f8d25f01e0804e8b61d">mov</a></div><div class="ttdeci">void mov(tower *From, tower *To)</div><div class="ttdef"><b>Definition:</b> tower_of_hanoi.cpp:39</div></div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
@@ -342,7 +341,7 @@ Here is the call graph for this function:</div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_9510827d0b234b3cc54b29892f217477.html">others</a></li><li class="navelem"><a class="el" href="../../db/d3c/tower__of__hanoi_8cpp.html">tower_of_hanoi.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.9.1 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.2 </li>
</ul>
</div>
</body>

View File

@@ -1 +1 @@
e0e1459bfbaf15727ebfd078c2189da4
32771fee1dce5685f0b1fdd37ddc76cf

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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: TH Pages: 1 -->
<svg width="114pt" height="66pt"
@@ -18,6 +18,12 @@
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node1 -->
<g id="edge3" class="edge">
<title>Node1&#45;&gt;Node1</title>
<path fill="none" stroke="midnightblue" d="M4.21,-38.76C-1.04,-47.57 2.56,-57 15,-57 22.58,-57 26.88,-53.5 27.89,-48.77"/>
<polygon fill="midnightblue" stroke="midnightblue" points="31.27,-47.82 25.79,-38.76 24.42,-49.26 31.27,-47.82"/>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

@@ -1,6 +1,6 @@
<map id="main" name="main">
<area shape="rect" id="node1" title=" " alt="" coords="5,31,56,57"/>
<area shape="rect" id="node2" href="$db/d3c/tower__of__hanoi_8cpp.html#a746d9a3984bba88fd6dd91978f6931ed" title=" " alt="" coords="192,5,245,32"/>
<area shape="rect" id="node3" href="$db/d3c/tower__of__hanoi_8cpp.html#ab037f72a5eac476535a6cfbbcb965417" title=" " alt="" coords="104,56,144,83"/>
<area shape="rect" id="node4" href="$db/d3c/tower__of__hanoi_8cpp.html#af4cfc41e546f1f8d25f01e0804e8b61d" title=" " alt="" coords="195,56,242,83"/>
<area shape="rect" id="node3" href="$db/d3c/tower__of__hanoi_8cpp.html#ab037f72a5eac476535a6cfbbcb965417" title=" " alt="" coords="104,68,144,95"/>
<area shape="rect" id="node4" href="$db/d3c/tower__of__hanoi_8cpp.html#af4cfc41e546f1f8d25f01e0804e8b61d" title=" " alt="" coords="195,68,242,95"/>
</map>

View File

@@ -1 +1 @@
a81da7ae9e4f154b7c29e84c6273dfe6
0d5cf06c873898f06a469b5788200c16

View File

@@ -1,20 +1,20 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: main Pages: 1 -->
<svg width="188pt" height="66pt"
viewBox="0.00 0.00 188.00 66.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 62)">
<svg width="188pt" height="75pt"
viewBox="0.00 0.00 188.00 75.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 71)">
<title>main</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-62 184,-62 184,4 -4,4"/>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-71 184,-71 184,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<polygon fill="#bfbfbf" stroke="black" points="0,-19.5 0,-38.5 38,-38.5 38,-19.5 0,-19.5"/>
<text text-anchor="middle" x="19" y="-26.5" font-family="Helvetica,sans-Serif" font-size="10.00">main</text>
<polygon fill="#bfbfbf" stroke="black" points="0,-28.5 0,-47.5 38,-47.5 38,-28.5 0,-28.5"/>
<text text-anchor="middle" x="19" y="-35.5" font-family="Helvetica,sans-Serif" font-size="10.00">main</text>
</a>
</g>
</g>
@@ -22,16 +22,16 @@
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../db/d3c/tower__of__hanoi_8cpp.html#a746d9a3984bba88fd6dd91978f6931ed" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="140,-38.5 140,-57.5 180,-57.5 180,-38.5 140,-38.5"/>
<text text-anchor="middle" x="160" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">show</text>
<polygon fill="white" stroke="black" points="140,-47.5 140,-66.5 180,-66.5 180,-47.5 140,-47.5"/>
<text text-anchor="middle" x="160" y="-54.5" font-family="Helvetica,sans-Serif" font-size="10.00">show</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M38.17,-31.48C61.43,-34.66 102.01,-40.21 129.67,-43.99"/>
<polygon fill="midnightblue" stroke="midnightblue" points="129.55,-47.51 139.93,-45.39 130.5,-40.57 129.55,-47.51"/>
<path fill="none" stroke="midnightblue" d="M38.46,-41.3C48.88,-43.11 62.14,-45.32 74,-47 92.46,-49.62 113.25,-52.08 129.65,-53.9"/>
<polygon fill="midnightblue" stroke="midnightblue" points="129.4,-57.39 139.72,-55 130.16,-50.43 129.4,-57.39"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
@@ -45,14 +45,20 @@
<!-- Node1&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node1&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M38.22,-23.91C46.17,-21.69 55.59,-19.06 64.08,-16.68"/>
<polygon fill="midnightblue" stroke="midnightblue" points="65.14,-20.02 73.83,-13.96 63.25,-13.28 65.14,-20.02"/>
<path fill="none" stroke="midnightblue" d="M38.22,-30.5C46.25,-27.19 55.79,-23.26 64.36,-19.73"/>
<polygon fill="midnightblue" stroke="midnightblue" points="65.91,-22.88 73.83,-15.84 63.25,-16.41 65.91,-22.88"/>
</g>
<!-- Node3&#45;&gt;Node2 -->
<g id="edge4" class="edge">
<title>Node3&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M104.3,-17.87C112.49,-22.39 123.04,-28.2 132.68,-33.5"/>
<polygon fill="midnightblue" stroke="midnightblue" points="131.09,-36.63 141.54,-38.38 134.47,-30.49 131.09,-36.63"/>
<path fill="none" stroke="midnightblue" d="M103.96,-19.51C113.19,-25.8 125.51,-34.18 136.14,-41.43"/>
<polygon fill="midnightblue" stroke="midnightblue" points="134.35,-44.44 144.58,-47.18 138.29,-38.66 134.35,-44.44"/>
</g>
<!-- Node3&#45;&gt;Node3 -->
<g id="edge5" class="edge">
<title>Node3&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M78.21,-19.76C72.96,-28.57 76.56,-38 89,-38 96.58,-38 100.88,-34.5 101.89,-29.77"/>
<polygon fill="midnightblue" stroke="midnightblue" points="105.27,-28.82 99.79,-19.76 98.42,-30.26 105.27,-28.82"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

View File

@@ -2,8 +2,8 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: sorting/wave_sort.cpp File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@@ -17,9 +17,9 @@
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
@@ -32,8 +32,7 @@
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Algorithms_in_C++
&#160;<span id="projectnumber">1.0.0</span>
<div id="projectname">Algorithms_in_C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">Set of algorithms implemented in C++.</div>
</td>
@@ -42,21 +41,22 @@
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<!-- Generated by Doxygen 1.9.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search",'Search','.html');
/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
@@ -70,7 +70,7 @@ $(function() {
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('db/d3f/wave__sort_8cpp.html','../../'); initResizable(); });
/* @license-end */
</script>
@@ -93,12 +93,11 @@ $(document).ready(function(){initNavTree('db/d3f/wave__sort_8cpp.html','../../')
<div class="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">wave_sort.cpp File Reference</div> </div>
<div class="headertitle"><div class="title">wave_sort.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Implementation of the <a href="https://www.geeksforgeeks.org/sort-array-wave-form-2/">Wave sort</a> algorithm.
<p>Implementation of the <a href="https://www.geeksforgeeks.org/sort-array-wave-form-2/" target="_blank">Wave sort</a> algorithm.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;algorithm&gt;</code><br />
<code>#include &lt;cassert&gt;</code><br />
@@ -111,21 +110,21 @@ Include dependency graph for wave_sort.cpp:</div>
</div>
</div>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:d5/d91/namespacesorting"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/d91/namespacesorting.html">sorting</a></td></tr>
<tr class="memitem:d5/d91/namespacesorting"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/d91/namespacesorting.html">sorting</a></td></tr>
<tr class="memdesc:d5/d91/namespacesorting"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sorting algorithms. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:d9/d21/namespacewave__sort"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d21/namespacewave__sort.html">wave_sort</a></td></tr>
<tr class="memdesc:d9/d21/namespacewave__sort"><td class="mdescLeft">&#160;</td><td class="mdescRight">Functions for the <a href="https://www.geeksforgeeks.org/sort-array-wave-form-2/">Wave sort</a> implementation. <br /></td></tr>
<tr class="memitem:d9/d21/namespacewave__sort"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d21/namespacewave__sort.html">wave_sort</a></td></tr>
<tr class="memdesc:d9/d21/namespacewave__sort"><td class="mdescLeft">&#160;</td><td class="mdescRight">Functions for the <a href="https://www.geeksforgeeks.org/sort-array-wave-form-2/" target="_blank">Wave sort</a> implementation. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:aa3e61ec7fbcf7f9b52de306e6dd6a41c"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:aa3e61ec7fbcf7f9b52de306e6dd6a41c"><td class="memTemplItemLeft" align="right" valign="top"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../db/d3f/wave__sort_8cpp.html#aa3e61ec7fbcf7f9b52de306e6dd6a41c">sorting::wave_sort::waveSort</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt; T &gt; &amp;in_arr, int64_t n)</td></tr>
<tr class="memdesc:aa3e61ec7fbcf7f9b52de306e6dd6a41c"><td class="mdescLeft">&#160;</td><td class="mdescRight">The main function implements that implements the Wave Sort algorithm. <a href="../../db/d3f/wave__sort_8cpp.html#aa3e61ec7fbcf7f9b52de306e6dd6a41c">More...</a><br /></td></tr>
<tr class="separator:aa3e61ec7fbcf7f9b52de306e6dd6a41c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d4f243b9dc13ace4ef77e30dbc56f12"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a7d4f243b9dc13ace4ef77e30dbc56f12"><td class="memTemplItemLeft" align="right" valign="top"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../db/d3f/wave__sort_8cpp.html#a7d4f243b9dc13ace4ef77e30dbc56f12">sorting::wave_sort::waveSort</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt; T &gt; &amp;in_arr, int64_t n)</td></tr>
<tr class="memdesc:a7d4f243b9dc13ace4ef77e30dbc56f12"><td class="mdescLeft">&#160;</td><td class="mdescRight">The main function implements that implements the Wave Sort algorithm. <a href="../../db/d3f/wave__sort_8cpp.html#a7d4f243b9dc13ace4ef77e30dbc56f12">More...</a><br /></td></tr>
<tr class="separator:a7d4f243b9dc13ace4ef77e30dbc56f12"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8dca7b867074164d5f45b0f3851269d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d3f/wave__sort_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a> ()</td></tr>
<tr class="memdesc:aa8dca7b867074164d5f45b0f3851269d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self-test implementations. <a href="../../db/d3f/wave__sort_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">More...</a><br /></td></tr>
<tr class="separator:aa8dca7b867074164d5f45b0f3851269d"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -134,10 +133,10 @@ Functions</h2></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Implementation of the <a href="https://www.geeksforgeeks.org/sort-array-wave-form-2/">Wave sort</a> algorithm. </p>
<p>Wave Sort is a sorting algorithm that works in \(O(nlogn)\) time assuming the sort function used works in \(O(nlogn)\) time. </p><dl class="section author"><dt>Author</dt><dd><a href="https://github.com/Swastyy">Swastika Gupta</a> </dd></dl>
<div class="textblock"><p >Implementation of the <a href="https://www.geeksforgeeks.org/sort-array-wave-form-2/" target="_blank">Wave sort</a> algorithm. </p>
<p >Wave Sort is a sorting algorithm that works in \(O(nlogn)\) time assuming the sort function used works in \(O(nlogn)\) time. </p><dl class="section author"><dt>Author</dt><dd><a href="https://github.com/Swastyy" target="_blank">Swastika Gupta</a> </dd></dl>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">&#9670;&nbsp;</a></span>main()</h2>
<div class="memitem">
@@ -155,10 +154,10 @@ Functions</h2></td></tr>
<p>Main function. </p>
<dl class="section return"><dt>Returns</dt><dd>0 on exit </dd></dl>
<div class="fragment"><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; {</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <a class="code" href="../../db/d3f/wave__sort_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>(); <span class="comment">// run self-test implementations</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;}</div>
<div class="fragment"><div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> {</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <a class="code hl_function" href="../../db/d3f/wave__sort_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>(); <span class="comment">// run self-test implementations</span></div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span>}</div>
<div class="ttc" id="awave__sort_8cpp_html_aa8dca7b867074164d5f45b0f3851269d"><div class="ttname"><a href="../../db/d3f/wave__sort_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a></div><div class="ttdeci">static void test()</div><div class="ttdoc">Self-test implementations.</div><div class="ttdef"><b>Definition:</b> wave_sort.cpp:53</div></div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
@@ -169,7 +168,7 @@ Here is the call graph for this function:</div>
</div>
</div>
<a id="aa8dca7b867074164d5f45b0f3851269d"></a>
<a id="aa8dca7b867074164d5f45b0f3851269d" name="aa8dca7b867074164d5f45b0f3851269d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa8dca7b867074164d5f45b0f3851269d">&#9670;&nbsp;</a></span>test()</h2>
<div class="memitem">
@@ -194,43 +193,43 @@ Here is the call graph for this function:</div>
<p>Self-test implementations. </p>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
<div class="fragment"><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; {</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="comment">// [10, 90, 49, 2, 1, 5, 23] return [2, 1, 10, 5, 49, 23, 90]</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> array1 = {10, 90, 49, 2, 1, 5, 23};</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Test 1... &quot;</span>;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> arr1 = <a class="code" href="../../db/d3f/wave__sort_8cpp.html#aa3e61ec7fbcf7f9b52de306e6dd6a41c">sorting::wave_sort::waveSort</a>(array1, 7);</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keyword">const</span> <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> o1 = {2, 1, 10, 5, 49, 23, 90};</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; assert(arr1 == o1);</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; </div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="comment">// [1, 3, 4, 2, 7, 8] return [2, 1, 4, 3, 8, 7]</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> array2 = {1, 3, 4, 2, 7, 8};</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Test 2... &quot;</span>;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> arr2 = <a class="code" href="../../db/d3f/wave__sort_8cpp.html#aa3e61ec7fbcf7f9b52de306e6dd6a41c">sorting::wave_sort::waveSort</a>(array2, 6);</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">const</span> <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> o2 = {2, 1, 4, 3, 8, 7};</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; assert(arr2 == o2);</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; </div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="comment">// [3, 3, 3, 3] return [3, 3, 3, 3]</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> array3 = {3, 3, 3, 3};</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Test 3... &quot;</span>;</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> arr3 = <a class="code" href="../../db/d3f/wave__sort_8cpp.html#aa3e61ec7fbcf7f9b52de306e6dd6a41c">sorting::wave_sort::waveSort</a>(array3, 4);</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keyword">const</span> <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> o3 = {3, 3, 3, 3};</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; assert(arr3 == o3);</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; </div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="comment">// [9, 4, 6, 8, 14, 3] return [4, 3, 8, 6, 14, 9]</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> array4 = {9, 4, 6, 8, 14, 3};</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Test 4... &quot;</span>;</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> arr4 = <a class="code" href="../../db/d3f/wave__sort_8cpp.html#aa3e61ec7fbcf7f9b52de306e6dd6a41c">sorting::wave_sort::waveSort</a>(array4, 6);</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keyword">const</span> <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> o4 = {4, 3, 8, 6, 14, 9};</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; assert(arr4 == o4);</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;}</div>
<div class="fragment"><div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> {</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="comment">// [10, 90, 49, 2, 1, 5, 23] return [2, 1, 10, 5, 49, 23, 90]</span></div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> array1 = {10, 90, 49, 2, 1, 5, 23};</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Test 1... &quot;</span>;</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> arr1 = <a class="code hl_function" href="../../db/d3f/wave__sort_8cpp.html#a7d4f243b9dc13ace4ef77e30dbc56f12">sorting::wave_sort::waveSort</a>(array1, 7);</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keyword">const</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> o1 = {2, 1, 10, 5, 49, 23, 90};</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> assert(arr1 == o1);</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> </div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="comment">// [1, 3, 4, 2, 7, 8] return [2, 1, 4, 3, 8, 7]</span></div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> array2 = {1, 3, 4, 2, 7, 8};</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Test 2... &quot;</span>;</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> arr2 = <a class="code hl_function" href="../../db/d3f/wave__sort_8cpp.html#a7d4f243b9dc13ace4ef77e30dbc56f12">sorting::wave_sort::waveSort</a>(array2, 6);</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="keyword">const</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> o2 = {2, 1, 4, 3, 8, 7};</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> assert(arr2 == o2);</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> </div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <span class="comment">// [3, 3, 3, 3] return [3, 3, 3, 3]</span></div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> array3 = {3, 3, 3, 3};</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Test 3... &quot;</span>;</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> arr3 = <a class="code hl_function" href="../../db/d3f/wave__sort_8cpp.html#a7d4f243b9dc13ace4ef77e30dbc56f12">sorting::wave_sort::waveSort</a>(array3, 4);</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <span class="keyword">const</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> o3 = {3, 3, 3, 3};</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> assert(arr3 == o3);</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> </div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <span class="comment">// [9, 4, 6, 8, 14, 3] return [4, 3, 8, 6, 14, 9]</span></div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> array4 = {9, 4, 6, 8, 14, 3};</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Test 4... &quot;</span>;</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> arr4 = <a class="code hl_function" href="../../db/d3f/wave__sort_8cpp.html#a7d4f243b9dc13ace4ef77e30dbc56f12">sorting::wave_sort::waveSort</a>(array4, 6);</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> <span class="keyword">const</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;int64_t&gt;</a> o4 = {4, 3, 8, 6, 14, 9};</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> assert(arr4 == o4);</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;passed&quot;</span> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span>}</div>
<div class="ttc" id="abasic_ostream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div></div>
<div class="ttc" id="aendl_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a></div><div class="ttdeci">T endl(T... args)</div></div>
<div class="ttc" id="avector_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt; int64_t &gt;</a></div></div>
<div class="ttc" id="awave__sort_8cpp_html_aa3e61ec7fbcf7f9b52de306e6dd6a41c"><div class="ttname"><a href="../../db/d3f/wave__sort_8cpp.html#aa3e61ec7fbcf7f9b52de306e6dd6a41c">sorting::wave_sort::waveSort</a></div><div class="ttdeci">std::vector&lt; T &gt; waveSort(const std::vector&lt; T &gt; &amp;in_arr, int64_t n)</div><div class="ttdoc">The main function implements that implements the Wave Sort algorithm.</div><div class="ttdef"><b>Definition:</b> wave_sort.cpp:34</div></div>
<div class="ttc" id="avector_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a></div></div>
<div class="ttc" id="awave__sort_8cpp_html_a7d4f243b9dc13ace4ef77e30dbc56f12"><div class="ttname"><a href="../../db/d3f/wave__sort_8cpp.html#a7d4f243b9dc13ace4ef77e30dbc56f12">sorting::wave_sort::waveSort</a></div><div class="ttdeci">std::vector&lt; T &gt; waveSort(const std::vector&lt; T &gt; &amp;in_arr, int64_t n)</div><div class="ttdoc">The main function implements that implements the Wave Sort algorithm.</div><div class="ttdef"><b>Definition:</b> wave_sort.cpp:34</div></div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
@@ -240,8 +239,8 @@ Here is the call graph for this function:</div>
</div>
</div>
<a id="aa3e61ec7fbcf7f9b52de306e6dd6a41c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa3e61ec7fbcf7f9b52de306e6dd6a41c">&#9670;&nbsp;</a></span>waveSort()</h2>
<a id="a7d4f243b9dc13ace4ef77e30dbc56f12" name="a7d4f243b9dc13ace4ef77e30dbc56f12"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7d4f243b9dc13ace4ef77e30dbc56f12">&#9670;&nbsp;</a></span>waveSort()</h2>
<div class="memitem">
<div class="memproto">
@@ -249,7 +248,7 @@ Here is the call graph for this function:</div>
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt;T&gt; sorting::wave_sort::waveSort </td>
<td class="memname"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt; T &gt; sorting::wave_sort::waveSort </td>
<td>(</td>
<td class="paramtype">const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>in_arr</em>, </td>
@@ -282,24 +281,24 @@ template&lt;typename T &gt; </div>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>arr the wave sorted array </dd></dl>
<div class="fragment"><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; {</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;T&gt;</a> arr(in_arr);</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; </div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keywordflow">for</span> (int64_t i = 0; i &lt; n; i++) {</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; arr[i] = in_arr[i];</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; }</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/sort.html">std::sort</a>(arr.begin(), arr.end());</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordflow">for</span> (int64_t i = 0; i &lt; n - 1; i += 2) { <span class="comment">// swap all the adjacent elements</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/swap.html">std::swap</a>(arr[i], arr[i + 1]);</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; }</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordflow">return</span> arr;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;}</div>
<div class="fragment"><div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> {</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;T&gt;</a> arr(in_arr);</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> </div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <span class="keywordflow">for</span> (int64_t i = 0; i &lt; n; i++) {</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> arr[i] = in_arr[i];</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> }</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/sort.html">std::sort</a>(arr.begin(), arr.end());</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> <span class="keywordflow">for</span> (int64_t i = 0; i &lt; n - 1; i += 2) { <span class="comment">// swap all the adjacent elements</span></div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/swap.html">std::swap</a>(arr[i], arr[i + 1]);</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> }</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keywordflow">return</span> arr;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span>}</div>
<div class="ttc" id="asort_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/algorithm/sort.html">std::sort</a></div><div class="ttdeci">T sort(T... args)</div></div>
<div class="ttc" id="aswap_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/algorithm/swap.html">std::swap</a></div><div class="ttdeci">T swap(T... args)</div></div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="../../db/d3f/wave__sort_8cpp_aa3e61ec7fbcf7f9b52de306e6dd6a41c_cgraph.svg" width="314" height="190"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
<div class="center"><iframe scrolling="no" frameborder="0" src="../../db/d3f/wave__sort_8cpp_a7d4f243b9dc13ace4ef77e30dbc56f12_cgraph.svg" width="314" height="190"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</div>
@@ -311,7 +310,7 @@ Here is the call graph for this function:</div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_bb1b521853a9c46347182a9d10420771.html">sorting</a></li><li class="navelem"><a class="el" href="../../db/d3f/wave__sort_8cpp.html">wave_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.9.1 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.2 </li>
</ul>
</div>
</body>

View File

@@ -2,5 +2,5 @@ var wave__sort_8cpp =
[
[ "main", "db/d3f/wave__sort_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4", null ],
[ "test", "db/d3f/wave__sort_8cpp.html#aa8dca7b867074164d5f45b0f3851269d", null ],
[ "waveSort", "db/d3f/wave__sort_8cpp.html#aa3e61ec7fbcf7f9b52de306e6dd6a41c", null ]
[ "waveSort", "db/d3f/wave__sort_8cpp.html#a7d4f243b9dc13ace4ef77e30dbc56f12", 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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: sorting::wave_sort::waveSort Pages: 1 -->
<svg width="235pt" height="142pt"

Before

Width:  |  Height:  |  Size: 4.4 KiB

After

Width:  |  Height:  |  Size: 4.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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: test Pages: 1 -->
<svg width="131pt" height="28pt"

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: main Pages: 1 -->
<svg width="205pt" height="28pt"

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: graph/depth_first_search.cpp Pages: 1 -->
<svg width="202pt" height="84pt"

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 2.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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: math/fibonacci_fast.cpp Pages: 1 -->
<svg width="199pt" height="84pt"

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

View File

@@ -1,5 +0,0 @@
<map id="math::ncr_modulo_p::NCRModuloP" name="math::ncr_modulo_p::NCRModuloP">
<area shape="rect" id="node1" title="Class which contains all methods required for calculating nCr mod p." alt="" coords="10,184,154,225"/>
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector.html" title=" " alt="" coords="5,95,159,121"/>
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/types/integer.html" title=" " alt="" coords="35,5,129,32"/>
</map>

View File

@@ -1 +0,0 @@
e054920c214599e55bac3d877308bbd2

View File

@@ -1,55 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
-->
<!-- Title: math::ncr_modulo_p::NCRModuloP Pages: 1 -->
<svg width="123pt" height="173pt"
viewBox="0.00 0.00 123.00 173.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 169)">
<title>math::ncr_modulo_p::NCRModuloP</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-169 119,-169 119,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title="Class which contains all methods required for calculating nCr mod p.">
<polygon fill="#bfbfbf" stroke="black" points="3.5,-0.5 3.5,-30.5 111.5,-30.5 111.5,-0.5 3.5,-0.5"/>
<text text-anchor="start" x="11.5" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::ncr_modulo_p</text>
<text text-anchor="middle" x="57.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::NCRModuloP</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector.html" xlink:title=" ">
<polygon fill="white" stroke="black" points="0,-78.5 0,-97.5 115,-97.5 115,-78.5 0,-78.5"/>
<text text-anchor="middle" x="57.5" y="-85.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector&lt; uint64_t &gt;</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node1 -->
<g id="edge1" class="edge">
<title>Node2&#45;&gt;Node1</title>
<path fill="none" stroke="#9a32cd" stroke-dasharray="5,2" d="M57.5,-68.24C57.5,-56.41 57.5,-41.38 57.5,-30.58"/>
<polygon fill="#9a32cd" stroke="#9a32cd" points="54,-68.36 57.5,-78.36 61,-68.36 54,-68.36"/>
<text text-anchor="middle" x="66" y="-52" font-family="Helvetica,sans-Serif" font-size="10.00"> fac</text>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/types/integer.html" xlink:title=" ">
<polygon fill="white" stroke="black" points="22,-145.5 22,-164.5 93,-164.5 93,-145.5 22,-145.5"/>
<text text-anchor="middle" x="57.5" y="-152.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::uint64_t</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node2 -->
<g id="edge2" class="edge">
<title>Node3&#45;&gt;Node2</title>
<path fill="none" stroke="#9a32cd" stroke-dasharray="5,2" d="M57.5,-135.04C57.5,-122.67 57.5,-107.12 57.5,-97.63"/>
<polygon fill="#9a32cd" stroke="#9a32cd" points="54,-135.23 57.5,-145.23 61,-135.23 54,-135.23"/>
<text text-anchor="middle" x="79.5" y="-119" font-family="Helvetica,sans-Serif" font-size="10.00"> elements</text>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.8 KiB

View File

@@ -2,8 +2,8 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: Item Struct Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@@ -17,9 +17,9 @@
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
@@ -32,8 +32,7 @@
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Algorithms_in_C++
&#160;<span id="projectnumber">1.0.0</span>
<div id="projectname">Algorithms_in_C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">Set of algorithms implemented in C++.</div>
</td>
@@ -42,21 +41,22 @@
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<!-- Generated by Doxygen 1.9.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search",'Search','.html');
/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
@@ -70,7 +70,7 @@ $(function() {
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('db/d66/struct_item.html','../../'); initResizable(); });
/* @license-end */
</script>
@@ -93,17 +93,16 @@ $(document).ready(function(){initNavTree('db/d66/struct_item.html','../../'); in
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="../../d8/d01/struct_item-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Item Struct Reference</div> </div>
<div class="headertitle"><div class="title">Item Struct Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a05e743552459fc8c2abdc80a0f4f0b0a"><td class="memItemLeft" align="right" valign="top"><a id="a05e743552459fc8c2abdc80a0f4f0b0a"></a>
<tr class="memitem:a05e743552459fc8c2abdc80a0f4f0b0a"><td class="memItemLeft" align="right" valign="top"><a id="a05e743552459fc8c2abdc80a0f4f0b0a" name="a05e743552459fc8c2abdc80a0f4f0b0a"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>weight</b></td></tr>
<tr class="separator:a05e743552459fc8c2abdc80a0f4f0b0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62e6c5a24f2618be18e46407857c98de"><td class="memItemLeft" align="right" valign="top"><a id="a62e6c5a24f2618be18e46407857c98de"></a>
<tr class="memitem:a62e6c5a24f2618be18e46407857c98de"><td class="memItemLeft" align="right" valign="top"><a id="a62e6c5a24f2618be18e46407857c98de" name="a62e6c5a24f2618be18e46407857c98de"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>profit</b></td></tr>
<tr class="separator:a62e6c5a24f2618be18e46407857c98de"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
@@ -116,7 +115,7 @@ int&#160;</td><td class="memItemRight" valign="bottom"><b>profit</b></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../db/d66/struct_item.html">Item</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.2 </li>
</ul>
</div>
</body>

View File

@@ -1,5 +0,0 @@
var struct_item =
[
[ "profit", "db/d66/struct_item.html#a62e6c5a24f2618be18e46407857c98de", null ],
[ "weight", "db/d66/struct_item.html#a05e743552459fc8c2abdc80a0f4f0b0a", 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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: sorting/count_inversions.cpp Pages: 1 -->
<svg width="256pt" height="84pt"

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: std::is_unsigned&lt; uint256_t &gt; Pages: 1 -->
<svg width="155pt" height="84pt"

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -2,8 +2,8 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: heavy_light_decomposition Namespace Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@@ -17,9 +17,9 @@
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
@@ -32,8 +32,7 @@
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Algorithms_in_C++
&#160;<span id="projectnumber">1.0.0</span>
<div id="projectname">Algorithms_in_C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">Set of algorithms implemented in C++.</div>
</td>
@@ -42,21 +41,22 @@
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<!-- Generated by Doxygen 1.9.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search",'Search','.html');
/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
@@ -70,7 +70,7 @@ $(function() {
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('db/d6f/namespaceheavy__light__decomposition.html','../../'); initResizable(); });
/* @license-end */
</script>
@@ -90,22 +90,21 @@ $(document).ready(function(){initNavTree('db/d6f/namespaceheavy__light__decompos
</div>
<div class="header">
<div class="headertitle">
<div class="title">heavy_light_decomposition Namespace Reference</div> </div>
<div class="headertitle"><div class="title">heavy_light_decomposition Namespace Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Heavy light decomposition algorithm.
<a href="../../db/d6f/namespaceheavy__light__decomposition.html#details">More...</a></p>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Heavy light decomposition algorithm. </p>
<div class="textblock"><p >Heavy light decomposition algorithm. </p>
</div></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="../../db/d6f/namespaceheavy__light__decomposition.html">heavy_light_decomposition</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.2 </li>
</ul>
</div>
</body>

View File

@@ -2,8 +2,8 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: hashing/quadratic_probing_hash_table.cpp File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@@ -17,9 +17,9 @@
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
@@ -32,8 +32,7 @@
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Algorithms_in_C++
&#160;<span id="projectnumber">1.0.0</span>
<div id="projectname">Algorithms_in_C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">Set of algorithms implemented in C++.</div>
</td>
@@ -42,21 +41,22 @@
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<!-- Generated by Doxygen 1.9.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search",'Search','.html');
/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
@@ -70,7 +70,7 @@ $(function() {
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('db/d71/quadratic__probing__hash__table_8cpp.html','../../'); initResizable(); });
/* @license-end */
</script>
@@ -96,12 +96,11 @@ $(document).ready(function(){initNavTree('db/d71/quadratic__probing__hash__table
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">quadratic_probing_hash_table.cpp File Reference</div> </div>
<div class="headertitle"><div class="title">quadratic_probing_hash_table.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Storage mechanism using <a href="https://en.wikipedia.org/wiki/Quadratic_probing">quadratic probing hash</a> keys.
<p>Storage mechanism using <a href="https://en.wikipedia.org/wiki/Quadratic_probing" target="_blank">quadratic probing hash</a> keys.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;cmath&gt;</code><br />
<code>#include &lt;iostream&gt;</code><br />
@@ -113,24 +112,24 @@ Include dependency graph for quadratic_probing_hash_table.cpp:</div>
</div>
</div>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/dd1/structquadratic__probing_1_1_entry.html">quadratic_probing::Entry</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:d4/dd2/namespacequadratic__probing"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/dd2/namespacequadratic__probing.html">quadratic_probing</a></td></tr>
<tr class="memdesc:d4/dd2/namespacequadratic__probing"><td class="mdescLeft">&#160;</td><td class="mdescRight">An implementation of hash table using <a href="https://en.wikipedia.org/wiki/Quadratic_probing">quadratic probing</a> algorithm. <br /></td></tr>
<tr class="memitem:d4/dd2/namespacequadratic__probing"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/dd2/namespacequadratic__probing.html">quadratic_probing</a></td></tr>
<tr class="memdesc:d4/dd2/namespacequadratic__probing"><td class="mdescLeft">&#160;</td><td class="mdescRight">An implementation of hash table using <a href="https://en.wikipedia.org/wiki/Quadratic_probing" target="_blank">quadratic probing</a> algorithm. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a8f877db9460c8e472719908b9a018ffb"><td class="memItemLeft" align="right" valign="top"><a id="a8f877db9460c8e472719908b9a018ffb"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><b>quadratic_probing::Entry</b> = struct <a class="el" href="../../da/dd1/structquadratic__probing_1_1_entry.html">Entry</a></td></tr>
<tr class="separator:a8f877db9460c8e472719908b9a018ffb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abdb58d272dd5e4291eff5d85f77e0023"><td class="memItemLeft" align="right" valign="top"><a id="abdb58d272dd5e4291eff5d85f77e0023" name="abdb58d272dd5e4291eff5d85f77e0023"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><b>quadratic_probing::Entry</b> = <a class="el" href="../../da/dd1/structquadratic__probing_1_1_entry.html">Entry</a></td></tr>
<tr class="separator:abdb58d272dd5e4291eff5d85f77e0023"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:adccc63a7e57cc6dba75bd62f40feb88b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/dd2/namespacequadratic__probing.html#adccc63a7e57cc6dba75bd62f40feb88b">quadratic_probing::putProber</a> (const <a class="el" href="../../da/dd1/structquadratic__probing_1_1_entry.html">Entry</a> &amp;entry, int key)</td></tr>
<tr class="separator:adccc63a7e57cc6dba75bd62f40feb88b"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -157,35 +156,35 @@ Functions</h2></td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d71/quadratic__probing__hash__table_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="var-members" name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a90f9d8a71e3f148b65bcc0c1c8a49c70"><td class="memItemLeft" align="right" valign="top"><a id="a90f9d8a71e3f148b65bcc0c1c8a49c70"></a>
<tr class="memitem:a90f9d8a71e3f148b65bcc0c1c8a49c70"><td class="memItemLeft" align="right" valign="top"><a id="a90f9d8a71e3f148b65bcc0c1c8a49c70" name="a90f9d8a71e3f148b65bcc0c1c8a49c70"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>quadratic_probing::notPresent</b></td></tr>
<tr class="separator:a90f9d8a71e3f148b65bcc0c1c8a49c70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a149e32e186c3fac390ffa81dd6c73147"><td class="memItemLeft" align="right" valign="top"><a id="a149e32e186c3fac390ffa81dd6c73147"></a>
<tr class="memitem:a149e32e186c3fac390ffa81dd6c73147"><td class="memItemLeft" align="right" valign="top"><a id="a149e32e186c3fac390ffa81dd6c73147" name="a149e32e186c3fac390ffa81dd6c73147"></a>
<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt; <a class="el" href="../../da/dd1/structquadratic__probing_1_1_entry.html">Entry</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>quadratic_probing::table</b></td></tr>
<tr class="separator:a149e32e186c3fac390ffa81dd6c73147"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d5722a3b692eeb1b96615fba6a248f3"><td class="memItemLeft" align="right" valign="top"><a id="a2d5722a3b692eeb1b96615fba6a248f3"></a>
<tr class="memitem:a2d5722a3b692eeb1b96615fba6a248f3"><td class="memItemLeft" align="right" valign="top"><a id="a2d5722a3b692eeb1b96615fba6a248f3" name="a2d5722a3b692eeb1b96615fba6a248f3"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>quadratic_probing::totalSize</b></td></tr>
<tr class="separator:a2d5722a3b692eeb1b96615fba6a248f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa4b6c021ba71ecdac8b23b45d55c774"><td class="memItemLeft" align="right" valign="top"><a id="aaa4b6c021ba71ecdac8b23b45d55c774"></a>
<tr class="memitem:aaa4b6c021ba71ecdac8b23b45d55c774"><td class="memItemLeft" align="right" valign="top"><a id="aaa4b6c021ba71ecdac8b23b45d55c774" name="aaa4b6c021ba71ecdac8b23b45d55c774"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>quadratic_probing::tomb</b> = -1</td></tr>
<tr class="separator:aaa4b6c021ba71ecdac8b23b45d55c774"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6c60d84648b0f7bf78789da196bcd2b3"><td class="memItemLeft" align="right" valign="top"><a id="a6c60d84648b0f7bf78789da196bcd2b3"></a>
<tr class="memitem:a6c60d84648b0f7bf78789da196bcd2b3"><td class="memItemLeft" align="right" valign="top"><a id="a6c60d84648b0f7bf78789da196bcd2b3" name="a6c60d84648b0f7bf78789da196bcd2b3"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>quadratic_probing::size</b></td></tr>
<tr class="separator:a6c60d84648b0f7bf78789da196bcd2b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad20bb8020424def88917e26979051fae"><td class="memItemLeft" align="right" valign="top"><a id="ad20bb8020424def88917e26979051fae"></a>
<tr class="memitem:ad20bb8020424def88917e26979051fae"><td class="memItemLeft" align="right" valign="top"><a id="ad20bb8020424def88917e26979051fae" name="ad20bb8020424def88917e26979051fae"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>quadratic_probing::rehashing</b></td></tr>
<tr class="separator:ad20bb8020424def88917e26979051fae"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Storage mechanism using <a href="https://en.wikipedia.org/wiki/Quadratic_probing">quadratic probing hash</a> keys. </p>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/achance6">achance6</a> </dd>
<div class="textblock"><p >Storage mechanism using <a href="https://en.wikipedia.org/wiki/Quadratic_probing" target="_blank">quadratic probing hash</a> keys. </p>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/achance6" target="_blank">achance6</a> </dd>
<dd>
<a href="https://github.com/kvedala">Krishna Vedala</a> </dd></dl>
<a href="https://github.com/kvedala" target="_blank">Krishna Vedala</a> </dd></dl>
<dl class="section note"><dt>Note</dt><dd>The implementation can be optimized by using OOP style. </dd></dl>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">&#9670;&nbsp;</a></span>main()</h2>
<div class="memitem">
@@ -200,63 +199,63 @@ bool&#160;</td><td class="memItemRight" valign="bottom"><b>quadratic_probing::re
</tr>
</table>
</div><div class="memdoc">
<p>Main function </p><dl class="section return"><dt>Returns</dt><dd>None </dd></dl>
<div class="fragment"><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; {</div>
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordtype">int</span> cmd = 0, hash = 0, key = 0;</div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Enter the initial size of Hash Table. = &quot;</span>;</div>
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; totalSize;</div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; table = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;Entry&gt;</a>(totalSize);</div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordtype">bool</span> loop = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keywordflow">while</span> (loop) {</div>
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;PLEASE CHOOSE -&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;1. Add key. (Numeric only)&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;2. Remove key.&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;3. Find key.&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;4. Generate Hash. (Numeric only)&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;5. Display Hash table.&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;6. Exit.&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; cmd;</div>
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keywordflow">switch</span> (cmd) {</div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <span class="keywordflow">case</span> 1:</div>
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Enter key to add = &quot;</span>;</div>
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; key;</div>
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <a class="code" href="../../d4/dd2/namespacequadratic__probing.html#a312143ed316d48978084c025ff8d9768">quadratic_probing::addInfo</a>(key);</div>
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="keywordflow">case</span> 2:</div>
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Enter key to remove = &quot;</span>;</div>
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; key;</div>
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <a class="code" href="../../d4/dd2/namespacequadratic__probing.html#a69fe1f7c36fe004ba83eef2ca82e7e30">quadratic_probing::removalInfo</a>(key);</div>
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <span class="keywordflow">case</span> 3: {</div>
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Enter key to search = &quot;</span>;</div>
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; key;</div>
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <a class="code" href="../../da/dd1/structquadratic__probing_1_1_entry.html">quadratic_probing::Entry</a> entry =</div>
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; quadratic_probing::table[<a class="code" href="../../d4/dd2/namespacequadratic__probing.html#ab431981b54c0bae1b2956f716aee1dcf">quadratic_probing::quadraticProbe</a>(</div>
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; key, <span class="keyword">true</span>)];</div>
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keywordflow">if</span> (entry.<a class="code" href="../../da/dd1/structquadratic__probing_1_1_entry.html#a75f72858f08a2fc8b94402de98db12d8">key</a> == quadratic_probing::notPresent) {</div>
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Key not present&quot;</span>;</div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; }</div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; }</div>
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">case</span> 4:</div>
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Enter element to generate hash = &quot;</span>;</div>
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; key;</div>
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Hash of &quot;</span> &lt;&lt; key</div>
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; &lt;&lt; <span class="stringliteral">&quot; is = &quot;</span> &lt;&lt; <a class="code" href="../../d4/dd2/namespacequadratic__probing.html#a2093d91dd3d377cf0a5c939e45dcefc7">quadratic_probing::hashFxn</a>(key);</div>
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordflow">case</span> 5:</div>
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <a class="code" href="../../d4/dd2/namespacequadratic__probing.html#a40d617ebf4d6ba21bcda8d8d1faa2357">quadratic_probing::display</a>();</div>
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keywordflow">default</span>:</div>
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; loop = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="comment">// delete[] table;</span></div>
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; }</div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; }</div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;}</div>
<p >Main function </p><dl class="section return"><dt>Returns</dt><dd>None </dd></dl>
<div class="fragment"><div class="line"><a id="l00246" name="l00246"></a><span class="lineno"> 246</span> {</div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"> 247</span> <span class="keywordtype">int</span> cmd = 0, hash = 0, key = 0;</div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Enter the initial size of Hash Table. = &quot;</span>;</div>
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; totalSize;</div>
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"> 250</span> table = <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;Entry&gt;</a>(totalSize);</div>
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"> 251</span> <span class="keywordtype">bool</span> loop = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span> <span class="keywordflow">while</span> (loop) {</div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;PLEASE CHOOSE -&quot;</span> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;1. Add key. (Numeric only)&quot;</span> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;2. Remove key.&quot;</span> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;3. Find key.&quot;</span> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;4. Generate Hash. (Numeric only)&quot;</span> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;5. Display Hash table.&quot;</span> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;6. Exit.&quot;</span> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; cmd;</div>
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"> 262</span> <span class="keywordflow">switch</span> (cmd) {</div>
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span> <span class="keywordflow">case</span> 1:</div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Enter key to add = &quot;</span>;</div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; key;</div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> <a class="code hl_function" href="../../d4/dd2/namespacequadratic__probing.html#a312143ed316d48978084c025ff8d9768">quadratic_probing::addInfo</a>(key);</div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"> 267</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span> <span class="keywordflow">case</span> 2:</div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"> 269</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Enter key to remove = &quot;</span>;</div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno"> 270</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; key;</div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"> 271</span> <a class="code hl_function" href="../../d4/dd2/namespacequadratic__probing.html#a69fe1f7c36fe004ba83eef2ca82e7e30">quadratic_probing::removalInfo</a>(key);</div>
<div class="line"><a id="l00272" name="l00272"></a><span class="lineno"> 272</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"> 273</span> <span class="keywordflow">case</span> 3: {</div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Enter key to search = &quot;</span>;</div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; key;</div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"> 276</span> <a class="code hl_struct" href="../../da/dd1/structquadratic__probing_1_1_entry.html">quadratic_probing::Entry</a> entry =</div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"> 277</span> quadratic_probing::table[<a class="code hl_function" href="../../d4/dd2/namespacequadratic__probing.html#ab431981b54c0bae1b2956f716aee1dcf">quadratic_probing::quadraticProbe</a>(</div>
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"> 278</span> key, <span class="keyword">true</span>)];</div>
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno"> 279</span> <span class="keywordflow">if</span> (entry.<a class="code hl_variable" href="../../da/dd1/structquadratic__probing_1_1_entry.html#a75f72858f08a2fc8b94402de98db12d8">key</a> == quadratic_probing::notPresent) {</div>
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Key not present&quot;</span>;</div>
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno"> 281</span> }</div>
<div class="line"><a id="l00282" name="l00282"></a><span class="lineno"> 282</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"> 283</span> }</div>
<div class="line"><a id="l00284" name="l00284"></a><span class="lineno"> 284</span> <span class="keywordflow">case</span> 4:</div>
<div class="line"><a id="l00285" name="l00285"></a><span class="lineno"> 285</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Enter element to generate hash = &quot;</span>;</div>
<div class="line"><a id="l00286" name="l00286"></a><span class="lineno"> 286</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> &gt;&gt; key;</div>
<div class="line"><a id="l00287" name="l00287"></a><span class="lineno"> 287</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Hash of &quot;</span> &lt;&lt; key</div>
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno"> 288</span> &lt;&lt; <span class="stringliteral">&quot; is = &quot;</span> &lt;&lt; <a class="code hl_function" href="../../d4/dd2/namespacequadratic__probing.html#a2093d91dd3d377cf0a5c939e45dcefc7">quadratic_probing::hashFxn</a>(key);</div>
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"> 289</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno"> 290</span> <span class="keywordflow">case</span> 5:</div>
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"> 291</span> <a class="code hl_function" href="../../d4/dd2/namespacequadratic__probing.html#a40d617ebf4d6ba21bcda8d8d1faa2357">quadratic_probing::display</a>();</div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"> 292</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00293" name="l00293"></a><span class="lineno"> 293</span> <span class="keywordflow">default</span>:</div>
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno"> 294</span> loop = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00295" name="l00295"></a><span class="lineno"> 295</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"> 296</span> <span class="comment">// delete[] table;</span></div>
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"> 297</span> }</div>
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"> 298</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"> 299</span> }</div>
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"> 300</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno"> 301</span>}</div>
<div class="ttc" id="abasic_istream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a></div></div>
<div class="ttc" id="abasic_ostream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div></div>
<div class="ttc" id="aendl_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a></div><div class="ttdeci">T endl(T... args)</div></div>
@@ -277,7 +276,7 @@ bool&#160;</td><td class="memItemRight" valign="bottom"><b>quadratic_probing::re
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_ece9b94c107bbaa1dd68197a8c9983b9.html">hashing</a></li><li class="navelem"><a class="el" href="../../db/d71/quadratic__probing__hash__table_8cpp.html">quadratic_probing_hash_table.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.9.1 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.2 </li>
</ul>
</div>
</body>

View File

@@ -1,7 +1,6 @@
var quadratic__probing__hash__table_8cpp =
[
[ "Entry", "da/dd1/structquadratic__probing_1_1_entry.html", "da/dd1/structquadratic__probing_1_1_entry" ],
[ "Entry", "db/d71/quadratic__probing__hash__table_8cpp.html#a8f877db9460c8e472719908b9a018ffb", null ],
[ "quadratic_probing::Entry", "da/dd1/structquadratic__probing_1_1_entry.html", "da/dd1/structquadratic__probing_1_1_entry" ],
[ "add", "db/d71/quadratic__probing__hash__table_8cpp.html#a00ebcc6d39653eccc26f8432efbfc8d9", null ],
[ "addInfo", "db/d71/quadratic__probing__hash__table_8cpp.html#a312143ed316d48978084c025ff8d9768", null ],
[ "display", "db/d71/quadratic__probing__hash__table_8cpp.html#a40d617ebf4d6ba21bcda8d8d1faa2357", null ],
@@ -13,11 +12,5 @@ var quadratic__probing__hash__table_8cpp =
[ "rehash", "db/d71/quadratic__probing__hash__table_8cpp.html#ada6f1f44f7e83b0094fbcbe170788486", null ],
[ "removalInfo", "db/d71/quadratic__probing__hash__table_8cpp.html#a69fe1f7c36fe004ba83eef2ca82e7e30", null ],
[ "remove", "db/d71/quadratic__probing__hash__table_8cpp.html#a07a0467b24102260fbb6b554c453c20a", null ],
[ "searchingProber", "db/d71/quadratic__probing__hash__table_8cpp.html#aeb6bca8db4768226f8ea8291ea4f83f6", null ],
[ "notPresent", "db/d71/quadratic__probing__hash__table_8cpp.html#a90f9d8a71e3f148b65bcc0c1c8a49c70", null ],
[ "rehashing", "db/d71/quadratic__probing__hash__table_8cpp.html#ad20bb8020424def88917e26979051fae", null ],
[ "size", "db/d71/quadratic__probing__hash__table_8cpp.html#a6c60d84648b0f7bf78789da196bcd2b3", null ],
[ "table", "db/d71/quadratic__probing__hash__table_8cpp.html#a149e32e186c3fac390ffa81dd6c73147", null ],
[ "tomb", "db/d71/quadratic__probing__hash__table_8cpp.html#aaa4b6c021ba71ecdac8b23b45d55c774", null ],
[ "totalSize", "db/d71/quadratic__probing__hash__table_8cpp.html#a2d5722a3b692eeb1b96615fba6a248f3", null ]
[ "searchingProber", "db/d71/quadratic__probing__hash__table_8cpp.html#aeb6bca8db4768226f8ea8291ea4f83f6", 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 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: std::is_arithmetic&lt; uint128_t &gt; Pages: 1 -->
<svg width="100pt" height="95pt"

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -4,23 +4,20 @@ var classlarge__number =
[ "large_number", "db/d82/classlarge__number.html#af4598f1f2794b5e17e10c25e0501e41a", null ],
[ "large_number", "db/d82/classlarge__number.html#a0b1efd203274e38a67b78937dfb9b872", null ],
[ "large_number", "db/d82/classlarge__number.html#a76ddf1ed1b00fb8c107ea56f7f91e42f", null ],
[ "large_number", "db/d82/classlarge__number.html#adf804e60309bf016f7954fdcb0a4d103", null ],
[ "add_digit", "db/d82/classlarge__number.html#a60c436d1a1c5e3795d6177d3815ad615", null ],
[ "digit_char", "db/d82/classlarge__number.html#ae35a55607cf52c0b0d485f2129bd39ac", null ],
[ "multiply", "db/d82/classlarge__number.html#a2f5571e66305cf68bb8283e4aeda58bc", null ],
[ "num_digits", "db/d82/classlarge__number.html#ac09a05ec4aafb4d9e0b4440d6f0e2a93", null ],
[ "operator*=", "db/d82/classlarge__number.html#ab1af3e0f425cdf7ea2039c9dcfe22f0b", null ],
[ "operator++", "db/d82/classlarge__number.html#a622d84883180ff42f04955909adea5a9", null ],
[ "operator++", "db/d82/classlarge__number.html#ac4fafa6289295419d48d444f0ae4b706", null ],
[ "operator+=", "db/d82/classlarge__number.html#aad394466f3207b21b5d3e994b3a8ed72", null ],
[ "operator+=", "db/d82/classlarge__number.html#ac27b399ed872731758ec33ebb102730e", null ],
[ "operator=", "db/d82/classlarge__number.html#aeb22d2aae39d1b1e0bd39c7f47b333eb", null ],
[ "operator[]", "db/d82/classlarge__number.html#ace19126cf343a09efc0010735f6e3a8d", null ],
[ "operator[]", "db/d82/classlarge__number.html#ab53e3d0d72a547243a6e995e918ba87c", null ],
[ "operator*=", "db/d82/classlarge__number.html#a771e9b28cfddf1ad94668566e396e350", null ],
[ "operator++", "db/d82/classlarge__number.html#a4757697b1f7584b69e779a72abc4ae2a", null ],
[ "operator++", "db/d82/classlarge__number.html#a8d4364ee5a62964451d8cfee82649687", null ],
[ "operator+=", "db/d82/classlarge__number.html#aab5644405094740e34983cedfecb36cf", null ],
[ "operator=", "db/d82/classlarge__number.html#ab84f29685709cbb3b6fd29b7b4a7bc7b", null ],
[ "operator[]", "db/d82/classlarge__number.html#a8c381aa1ecc960cefd82ec72f59e0e08", null ],
[ "test", "db/d82/classlarge__number.html#a959c5c1a982949bbf98e1ea0f9afe6a9", null ],
[ "operator!=", "db/d82/classlarge__number.html#a72ae1ef050c4c28c50952ecab22d4b94", null ],
[ "operator+", "db/d82/classlarge__number.html#a70d23d67535e67030db570e56c00e16d", null ],
[ "operator<<", "db/d82/classlarge__number.html#a778428c4761b6ea5e7770743f0eab5ab", null ],
[ "operator+", "db/d82/classlarge__number.html#abbd52948bee1b16543f1dae19aa9dd46", null ],
[ "operator<<", "db/d82/classlarge__number.html#a13282908dfc4888392ed3d1fc6aae492", null ],
[ "operator==", "db/d82/classlarge__number.html#a7ba872b9a3ce1f3da6c06c5409663cca", null ],
[ "_digits", "db/d82/classlarge__number.html#af2b3ec9c35842d3a46ac7326f268af57", null ]
];

View File

@@ -1,4 +0,0 @@
<map id="large_number::large_number" name="large_number::large_number">
<area shape="rect" id="node1" title=" " alt="" coords="5,5,147,47"/>
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/push_back.html#" title=" " alt="" coords="195,13,351,39"/>
</map>

View File

@@ -1 +0,0 @@
f3f61788b112f768e44c2339da6eb01d

View File

@@ -1,38 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
-->
<!-- Title: large_number::large_number Pages: 1 -->
<svg width="267pt" height="39pt"
viewBox="0.00 0.00 267.00 39.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 35)">
<title>large_number::large_number</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-35 263,-35 263,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<polygon fill="#bfbfbf" stroke="black" points="0,-0.5 0,-30.5 106,-30.5 106,-0.5 0,-0.5"/>
<text text-anchor="start" x="8" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">large_number::large</text>
<text text-anchor="middle" x="53" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">_number</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/push_back.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="142,-6 142,-25 259,-25 259,-6 142,-6"/>
<text text-anchor="middle" x="200.5" y="-13" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M106.12,-15.5C114.44,-15.5 123.16,-15.5 131.78,-15.5"/>
<polygon fill="midnightblue" stroke="midnightblue" points="131.82,-19 141.82,-15.5 131.82,-12 131.82,-19"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.8 KiB

View File

@@ -1,7 +1,5 @@
<map id="large_number::multiply" name="large_number::multiply">
<area shape="rect" id="node1" title=" " alt="" coords="5,31,163,57"/>
<area shape="rect" id="node2" href="$db/d82/classlarge__number.html#a60c436d1a1c5e3795d6177d3815ad615" title=" " alt="" coords="216,5,381,32"/>
<area shape="rect" id="node4" href="$db/d82/classlarge__number.html#ac09a05ec4aafb4d9e0b4440d6f0e2a93" title=" " alt="" coords="211,56,387,83"/>
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/push_back.html#" title=" " alt="" coords="435,5,591,32"/>
<area shape="rect" id="node5" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/size.html#" title=" " alt="" coords="455,56,570,83"/>
<area shape="rect" id="node3" href="$db/d82/classlarge__number.html#ac09a05ec4aafb4d9e0b4440d6f0e2a93" title=" " alt="" coords="211,56,387,83"/>
</map>

View File

@@ -1 +1 @@
920a46b5e400b985c70e436d714bb61d
ecd209445d6ce1dba5cdb15fa27204fd

View File

@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: large_number::multiply Pages: 1 -->
<svg width="447pt" height="66pt"
viewBox="0.00 0.00 447.00 66.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<svg width="294pt" height="66pt"
viewBox="0.00 0.00 294.00 66.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 62)">
<title>large_number::multiply</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-62 443,-62 443,4 -4,4"/>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-62 290,-62 290,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
@@ -33,50 +33,20 @@
<path fill="none" stroke="midnightblue" d="M118.3,-35.97C127.84,-37.11 137.82,-38.3 147.63,-39.47"/>
<polygon fill="midnightblue" stroke="midnightblue" points="147.42,-42.97 157.77,-40.68 148.25,-36.02 147.42,-42.97"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a xlink:href="../../db/d82/classlarge__number.html#ac09a05ec4aafb4d9e0b4440d6f0e2a93" target="_top" xlink:title=" ">
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a xlink:href="../../db/d82/classlarge__number.html#ac09a05ec4aafb4d9e0b4440d6f0e2a93" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="154,-0.5 154,-19.5 286,-19.5 286,-0.5 154,-0.5"/>
<text text-anchor="middle" x="220" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">large_number::num_digits</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node1&#45;&gt;Node4</title>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node1&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M118.3,-22.03C126.65,-21.04 135.33,-20 143.94,-18.97"/>
<polygon fill="midnightblue" stroke="midnightblue" points="144.48,-22.43 153.99,-17.77 143.65,-15.48 144.48,-22.43"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/push_back.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="322,-38.5 322,-57.5 439,-57.5 439,-38.5 322,-38.5"/>
<text text-anchor="middle" x="380.5" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node2&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M282.28,-48C291.91,-48 301.92,-48 311.69,-48"/>
<polygon fill="midnightblue" stroke="midnightblue" points="311.76,-51.5 321.76,-48 311.76,-44.5 311.76,-51.5"/>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<title>Node5</title>
<g id="a_node5"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/size.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="337.5,-0.5 337.5,-19.5 423.5,-19.5 423.5,-0.5 337.5,-0.5"/>
<text text-anchor="middle" x="380.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
</a>
</g>
</g>
<!-- Node4&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<title>Node4&#45;&gt;Node5</title>
<path fill="none" stroke="midnightblue" d="M286.38,-10C299.98,-10 314.13,-10 327.18,-10"/>
<polygon fill="midnightblue" stroke="midnightblue" points="327.37,-13.5 337.37,-10 327.37,-6.5 327.37,-13.5"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -1,4 +0,0 @@
<map id="large_number::add_digit" name="large_number::add_digit">
<area shape="rect" id="node1" title=" " alt="" coords="5,5,171,32"/>
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/push_back.html#" title=" " alt="" coords="219,5,375,32"/>
</map>

View File

@@ -1 +0,0 @@
e4d122aadb9932520f7e2f5e2c1fe90b

View File

@@ -1,37 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
-->
<!-- Title: large_number::add_digit Pages: 1 -->
<svg width="285pt" height="28pt"
viewBox="0.00 0.00 285.00 28.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 24)">
<title>large_number::add_digit</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-24 281,-24 281,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<polygon fill="#bfbfbf" stroke="black" points="0,-0.5 0,-19.5 124,-19.5 124,-0.5 0,-0.5"/>
<text text-anchor="middle" x="62" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">large_number::add_digit</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/push_back.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="160,-0.5 160,-19.5 277,-19.5 277,-0.5 160,-0.5"/>
<text text-anchor="middle" x="218.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M124.06,-10C132.46,-10 141.12,-10 149.63,-10"/>
<polygon fill="midnightblue" stroke="midnightblue" points="149.9,-13.5 159.9,-10 149.9,-6.5 149.9,-13.5"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -2,7 +2,5 @@
<area shape="rect" id="node1" title=" " alt="" coords="5,31,180,57"/>
<area shape="rect" id="node2" href="$db/d82/classlarge__number.html#a2f5571e66305cf68bb8283e4aeda58bc" title=" " alt="" coords="228,31,385,57"/>
<area shape="rect" id="node3" href="$db/d82/classlarge__number.html#a60c436d1a1c5e3795d6177d3815ad615" title=" " alt="" coords="439,5,604,32"/>
<area shape="rect" id="node5" href="$db/d82/classlarge__number.html#ac09a05ec4aafb4d9e0b4440d6f0e2a93" title=" " alt="" coords="433,56,609,83"/>
<area shape="rect" id="node4" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/push_back.html#" title=" " alt="" coords="657,5,813,32"/>
<area shape="rect" id="node6" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/size.html#" title=" " alt="" coords="678,56,793,83"/>
<area shape="rect" id="node4" href="$db/d82/classlarge__number.html#ac09a05ec4aafb4d9e0b4440d6f0e2a93" title=" " alt="" coords="433,56,609,83"/>
</map>

View File

@@ -0,0 +1 @@
b97c74ee0068fdcb299d61210b7d95f1

View File

@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: large_number::operator*= Pages: 1 -->
<svg width="614pt" height="66pt"
viewBox="0.00 0.00 614.00 66.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<svg width="461pt" height="66pt"
viewBox="0.00 0.00 461.00 66.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 62)">
<title>large_number::operator*=</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-62 610,-62 610,4 -4,4"/>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-62 457,-62 457,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
@@ -48,50 +48,20 @@
<path fill="none" stroke="midnightblue" d="M285.3,-35.97C294.84,-37.11 304.82,-38.3 314.63,-39.47"/>
<polygon fill="midnightblue" stroke="midnightblue" points="314.42,-42.97 324.77,-40.68 315.25,-36.02 314.42,-42.97"/>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../db/d82/classlarge__number.html#ac09a05ec4aafb4d9e0b4440d6f0e2a93" target="_top" xlink:title=" ">
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a xlink:href="../../db/d82/classlarge__number.html#ac09a05ec4aafb4d9e0b4440d6f0e2a93" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="321,-0.5 321,-19.5 453,-19.5 453,-0.5 321,-0.5"/>
<text text-anchor="middle" x="387" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">large_number::num_digits</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<title>Node2&#45;&gt;Node5</title>
<!-- Node2&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node2&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M285.3,-22.03C293.65,-21.04 302.33,-20 310.94,-18.97"/>
<polygon fill="midnightblue" stroke="midnightblue" points="311.48,-22.43 320.99,-17.77 310.65,-15.48 311.48,-22.43"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/push_back.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="489,-38.5 489,-57.5 606,-57.5 606,-38.5 489,-38.5"/>
<text text-anchor="middle" x="547.5" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node3&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M449.28,-48C458.91,-48 468.92,-48 478.69,-48"/>
<polygon fill="midnightblue" stroke="midnightblue" points="478.76,-51.5 488.76,-48 478.76,-44.5 478.76,-51.5"/>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<title>Node6</title>
<g id="a_node6"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/size.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="504.5,-0.5 504.5,-19.5 590.5,-19.5 590.5,-0.5 504.5,-0.5"/>
<text text-anchor="middle" x="547.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<title>Node5&#45;&gt;Node6</title>
<path fill="none" stroke="midnightblue" d="M453.38,-10C466.98,-10 481.13,-10 494.18,-10"/>
<polygon fill="midnightblue" stroke="midnightblue" points="494.37,-13.5 504.37,-10 494.37,-6.5 494.37,-13.5"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@@ -2,5 +2,4 @@
<area shape="rect" id="node1" title=" " alt="" coords="5,35,139,61"/>
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="221,5,293,32"/>
<area shape="rect" id="node3" href="$db/d82/classlarge__number.html#a10119a83839e65962621b73df46a5337" title=" " alt="" coords="187,57,328,98"/>
<area shape="rect" id="node4" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/push_back.html#" title=" " alt="" coords="376,64,532,91"/>
</map>

View File

@@ -1 +1 @@
8dc5b8e2d482b9c7005479a13777af4b
08f1f34a2c62ebd10df27636a856221a

View File

@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: large_number::test Pages: 1 -->
<svg width="403pt" height="78pt"
viewBox="0.00 0.00 403.00 77.50" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<svg width="250pt" height="78pt"
viewBox="0.00 0.00 250.00 77.50" 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 73.5)">
<title>large_number::test</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-73.5 399,-73.5 399,4 -4,4"/>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-73.5 246,-73.5 246,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
@@ -49,20 +49,5 @@
<path fill="none" stroke="midnightblue" d="M100.07,-29.62C108.35,-28.29 117.04,-26.89 125.6,-25.52"/>
<polygon fill="midnightblue" stroke="midnightblue" points="126.24,-28.96 135.56,-23.92 125.13,-22.05 126.24,-28.96"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/push_back.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="278,-6 278,-25 395,-25 395,-6 278,-6"/>
<text text-anchor="middle" x="336.5" y="-13" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node3&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M242.12,-15.5C250.44,-15.5 259.16,-15.5 267.78,-15.5"/>
<polygon fill="midnightblue" stroke="midnightblue" points="267.82,-19 277.82,-15.5 267.82,-12 267.82,-19"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.2 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -1,8 +1,6 @@
<map id="large_number::operator+=" name="large_number::operator+=">
<area shape="rect" id="node1" title=" " alt="" coords="5,56,183,83"/>
<area shape="rect" id="node2" href="$db/d82/classlarge__number.html#a60c436d1a1c5e3795d6177d3815ad615" title=" " alt="" coords="236,5,401,32"/>
<area shape="rect" id="node4" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/max.html#" title=" " alt="" coords="283,56,355,83"/>
<area shape="rect" id="node5" href="$db/d82/classlarge__number.html#ac09a05ec4aafb4d9e0b4440d6f0e2a93" title=" " alt="" coords="231,107,407,133"/>
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/push_back.html#" title=" " alt="" coords="455,5,611,32"/>
<area shape="rect" id="node6" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/size.html#" title=" " alt="" coords="475,107,590,133"/>
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/max.html#" title=" " alt="" coords="283,56,355,83"/>
<area shape="rect" id="node4" href="$db/d82/classlarge__number.html#ac09a05ec4aafb4d9e0b4440d6f0e2a93" title=" " alt="" coords="231,107,407,133"/>
</map>

View File

@@ -0,0 +1 @@
55d1c717b94ddb987cc99909a70a7514

View File

@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
<!-- Generated by graphviz version 2.49.0 (20210828.1703)
-->
<!-- Title: large_number::operator+= Pages: 1 -->
<svg width="462pt" height="104pt"
viewBox="0.00 0.00 462.00 104.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<svg width="309pt" height="104pt"
viewBox="0.00 0.00 309.00 104.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 100)">
<title>large_number::operator+=</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-100 458,-100 458,4 -4,4"/>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-100 305,-100 305,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
@@ -33,65 +33,35 @@
<path fill="none" stroke="midnightblue" d="M109.51,-57.59C131.68,-62.65 159.07,-68.9 182.51,-74.25"/>
<polygon fill="midnightblue" stroke="midnightblue" points="181.76,-77.67 192.29,-76.48 183.32,-70.84 181.76,-77.67"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/algorithm/max.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="208,-38.5 208,-57.5 262,-57.5 262,-38.5 208,-38.5"/>
<text text-anchor="middle" x="235" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::max</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node1&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M133.31,-48C155.14,-48 178.65,-48 197.46,-48"/>
<polygon fill="midnightblue" stroke="midnightblue" points="197.66,-51.5 207.66,-48 197.66,-44.5 197.66,-51.5"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/algorithm/max.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="208,-38.5 208,-57.5 262,-57.5 262,-38.5 208,-38.5"/>
<text text-anchor="middle" x="235" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::max</text>
<g id="a_node4"><a xlink:href="../../db/d82/classlarge__number.html#ac09a05ec4aafb4d9e0b4440d6f0e2a93" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="169,-0.5 169,-19.5 301,-19.5 301,-0.5 169,-0.5"/>
<text text-anchor="middle" x="235" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">large_number::num_digits</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node1&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M133.31,-48C155.14,-48 178.65,-48 197.46,-48"/>
<polygon fill="midnightblue" stroke="midnightblue" points="197.66,-51.5 207.66,-48 197.66,-44.5 197.66,-51.5"/>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../db/d82/classlarge__number.html#ac09a05ec4aafb4d9e0b4440d6f0e2a93" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="169,-0.5 169,-19.5 301,-19.5 301,-0.5 169,-0.5"/>
<text text-anchor="middle" x="235" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">large_number::num_digits</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<title>Node1&#45;&gt;Node5</title>
<path fill="none" stroke="midnightblue" d="M109.51,-38.41C131.68,-33.35 159.07,-27.1 182.51,-21.75"/>
<polygon fill="midnightblue" stroke="midnightblue" points="183.32,-25.16 192.29,-19.52 181.76,-18.33 183.32,-25.16"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/push_back.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="337,-76.5 337,-95.5 454,-95.5 454,-76.5 337,-76.5"/>
<text text-anchor="middle" x="395.5" y="-83.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node2&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M297.28,-86C306.91,-86 316.92,-86 326.69,-86"/>
<polygon fill="midnightblue" stroke="midnightblue" points="326.76,-89.5 336.76,-86 326.76,-82.5 326.76,-89.5"/>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<title>Node6</title>
<g id="a_node6"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/size.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="352.5,-0.5 352.5,-19.5 438.5,-19.5 438.5,-0.5 352.5,-0.5"/>
<text text-anchor="middle" x="395.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<title>Node5&#45;&gt;Node6</title>
<path fill="none" stroke="midnightblue" d="M301.38,-10C314.98,-10 329.13,-10 342.18,-10"/>
<polygon fill="midnightblue" stroke="midnightblue" points="342.37,-13.5 352.37,-10 342.37,-6.5 342.37,-13.5"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@@ -1 +0,0 @@
9d6afca985b8932f4a02a79ac94359da

View File

@@ -1,185 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
-->
<!-- Title: large_number::operator*= Pages: 1 -->
<!--zoomable 66 -->
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
<style type="text/css"><![CDATA[
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<script type="text/javascript"><![CDATA[
var edges = document.getElementsByTagName('g');
if (edges && edges.length) {
for (var i=0;i<edges.length;i++) {
if (edges[i].id.substr(0,4)=='edge') {
edges[i].setAttribute('class','edge');
}
}
}
]]></script>
<defs>
<circle id="rim" cx="0" cy="0" r="7"/>
<circle id="rim2" cx="0" cy="0" r="3.5"/>
<g id="zoomPlus">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/>
</use>
<path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="zoomMin">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/>
</use>
<path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="dirArrow">
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="resetDef">
<use xlink:href="#rim2" fill="#404040">
<set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/>
</use>
</g>
</defs>
<script type="text/javascript">
var viewWidth = 614;
var viewHeight = 66;
var sectionId = 'dynsection-7';
</script>
<script xlink:href="../../svgpan.js"/>
<svg id="graph" class="graph">
<g id="viewport">
<title>large_number::operator*=</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-62 610,-62 610,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<polygon fill="#bfbfbf" stroke="black" points="0,-19.5 0,-38.5 131,-38.5 131,-19.5 0,-19.5"/>
<text text-anchor="middle" x="65.5" y="-26.5" font-family="Helvetica,sans-Serif" font-size="10.00">large_number::operator*=</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../db/d82/classlarge__number.html#a2f5571e66305cf68bb8283e4aeda58bc" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="167,-19.5 167,-38.5 285,-38.5 285,-19.5 167,-19.5"/>
<text text-anchor="middle" x="226" y="-26.5" font-family="Helvetica,sans-Serif" font-size="10.00">large_number::multiply</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M131.43,-29C139.75,-29 148.3,-29 156.68,-29"/>
<polygon fill="midnightblue" stroke="midnightblue" points="156.79,-32.5 166.79,-29 156.79,-25.5 156.79,-32.5"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a xlink:href="../../db/d82/classlarge__number.html#a60c436d1a1c5e3795d6177d3815ad615" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="325,-38.5 325,-57.5 449,-57.5 449,-38.5 325,-38.5"/>
<text text-anchor="middle" x="387" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">large_number::add_digit</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node2&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M285.3,-35.97C294.84,-37.11 304.82,-38.3 314.63,-39.47"/>
<polygon fill="midnightblue" stroke="midnightblue" points="314.42,-42.97 324.77,-40.68 315.25,-36.02 314.42,-42.97"/>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../db/d82/classlarge__number.html#ac09a05ec4aafb4d9e0b4440d6f0e2a93" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="321,-0.5 321,-19.5 453,-19.5 453,-0.5 321,-0.5"/>
<text text-anchor="middle" x="387" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">large_number::num_digits</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<title>Node2&#45;&gt;Node5</title>
<path fill="none" stroke="midnightblue" d="M285.3,-22.03C293.65,-21.04 302.33,-20 310.94,-18.97"/>
<polygon fill="midnightblue" stroke="midnightblue" points="311.48,-22.43 320.99,-17.77 310.65,-15.48 311.48,-22.43"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/push_back.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="489,-38.5 489,-57.5 606,-57.5 606,-38.5 489,-38.5"/>
<text text-anchor="middle" x="547.5" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node3&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M449.28,-48C458.91,-48 468.92,-48 478.69,-48"/>
<polygon fill="midnightblue" stroke="midnightblue" points="478.76,-51.5 488.76,-48 478.76,-44.5 478.76,-51.5"/>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<title>Node6</title>
<g id="a_node6"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/size.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="504.5,-0.5 504.5,-19.5 590.5,-19.5 590.5,-0.5 504.5,-0.5"/>
<text text-anchor="middle" x="547.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<title>Node5&#45;&gt;Node6</title>
<path fill="none" stroke="midnightblue" d="M453.38,-10C466.98,-10 481.13,-10 494.18,-10"/>
<polygon fill="midnightblue" stroke="midnightblue" points="494.37,-13.5 504.37,-10 494.37,-6.5 494.37,-13.5"/>
</g>
</g>
</svg>
<g id="navigator" transform="translate(0 0)" fill="#404254">
<rect fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width=".5" x="0" y="0" width="60" height="60"/>
<use id="zoomplus" xlink:href="#zoomPlus" x="17" y="9" onmousedown="handleZoom(evt,'in')"/>
<use id="zoomminus" xlink:href="#zoomMin" x="42" y="9" onmousedown="handleZoom(evt,'out')"/>
<use id="reset" xlink:href="#resetDef" x="30" y="36" onmousedown="handleReset()"/>
<g id="arrowUp" xlink:href="#dirArrow" transform="translate(30 24)" onmousedown="handlePan(0,-1)">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="arrowUp.mouseover" end="arrowUp.mouseout"/>
</use>
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowRight" xlink:href="#dirArrow" transform="rotate(90) translate(36 -43)" onmousedown="handlePan(1,0)">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="arrowRight.mouseover" end="arrowRight.mouseout"/>
</use>
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowDown" xlink:href="#dirArrow" transform="rotate(180) translate(-30 -48)" onmousedown="handlePan(0,1)">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="arrowDown.mouseover" end="arrowDown.mouseout"/>
</use>
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowLeft" xlink:href="#dirArrow" transform="rotate(270) translate(-36 17)" onmousedown="handlePan(-1,0)">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="arrowLeft.mouseover" end="arrowLeft.mouseout"/>
</use>
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
</g>
<svg viewBox="0 0 15 15" width="100%" height="30px" preserveAspectRatio="xMaxYMin meet">
<g id="arrow_out" transform="scale(0.3 0.3)">
<a xlink:href="classlarge__number_ab1af3e0f425cdf7ea2039c9dcfe22f0b_cgraph_org.svg" target="_base">
<rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
<path id="arrow"
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
style="fill:#404040;"/>
</a>
</g>
</svg>
</svg>

Before

Width:  |  Height:  |  Size: 9.6 KiB

View File

@@ -1,4 +0,0 @@
<map id="large_number::num_digits" name="large_number::num_digits">
<area shape="rect" id="node1" title=" " alt="" coords="5,5,181,32"/>
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/size.html#" title=" " alt="" coords="229,5,344,32"/>
</map>

View File

@@ -1 +0,0 @@
ef4020145a632765ace38dc1d385a8c6

View File

@@ -1,37 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.48.0 (20210717.1556)
-->
<!-- Title: large_number::num_digits Pages: 1 -->
<svg width="262pt" height="28pt"
viewBox="0.00 0.00 262.00 28.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 24)">
<title>large_number::num_digits</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-24 258,-24 258,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<polygon fill="#bfbfbf" stroke="black" points="0,-0.5 0,-19.5 132,-19.5 132,-0.5 0,-0.5"/>
<text text-anchor="middle" x="66" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">large_number::num_digits</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/size.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="168,-0.5 168,-19.5 254,-19.5 254,-0.5 168,-0.5"/>
<text text-anchor="middle" x="211" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M132.22,-10C140.72,-10 149.33,-10 157.58,-10"/>
<polygon fill="midnightblue" stroke="midnightblue" points="157.79,-13.5 167.79,-10 157.79,-6.5 157.79,-13.5"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -1 +0,0 @@
1f10fda0776222b581f6c34d54e5d6f7

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