Documentation for 341ed50da8
@@ -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/factorial.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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d00/factorial_8cpp.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -92,8 +92,7 @@ $(document).ready(function(){initNavTree('d9/d00/factorial_8cpp.html','../../');
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#func-members">Functions</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">factorial.cpp File Reference</div> </div>
|
||||
<div class="headertitle"><div class="title">factorial.cpp File Reference</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
@@ -107,7 +106,7 @@ Include dependency graph for factorial.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:ae9945c15826a9c1b5c141db314b7f8b4"><td class="memItemLeft" align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d00/factorial_8cpp.html#ae9945c15826a9c1b5c141db314b7f8b4">factorial</a> (unsigned int n)</td></tr>
|
||||
<tr class="separator:ae9945c15826a9c1b5c141db314b7f8b4"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
@@ -115,9 +114,9 @@ Functions</h2></td></tr>
|
||||
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>C++ program to find factorial of given number. </p>
|
||||
<div class="textblock"><p >C++ program to find factorial of given number. </p>
|
||||
</div><h2 class="groupheader">Function Documentation</h2>
|
||||
<a id="ae9945c15826a9c1b5c141db314b7f8b4"></a>
|
||||
<a id="ae9945c15826a9c1b5c141db314b7f8b4" name="ae9945c15826a9c1b5c141db314b7f8b4"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ae9945c15826a9c1b5c141db314b7f8b4">◆ </a></span>factorial()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -132,17 +131,23 @@ Functions</h2></td></tr>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>function to find factorial of given number </p>
|
||||
<div class="fragment"><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>  {</div>
|
||||
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>  <span class="keywordflow">if</span> (n == 0)</div>
|
||||
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>  <span class="keywordflow">return</span> 1;</div>
|
||||
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>  <span class="keywordflow">return</span> n * <a class="code" href="../../d9/d00/factorial_8cpp.html#ae9945c15826a9c1b5c141db314b7f8b4">factorial</a>(n - 1);</div>
|
||||
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> }</div>
|
||||
<p >function to find factorial of given number </p>
|
||||
<div class="fragment"><div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> {</div>
|
||||
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> <span class="keywordflow">if</span> (n == 0)</div>
|
||||
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> <span class="keywordflow">return</span> 1;</div>
|
||||
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> <span class="keywordflow">return</span> n * <a class="code hl_function" href="../../d9/d00/factorial_8cpp.html#ae9945c15826a9c1b5c141db314b7f8b4">factorial</a>(n - 1);</div>
|
||||
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span>}</div>
|
||||
<div class="ttc" id="afactorial_8cpp_html_ae9945c15826a9c1b5c141db314b7f8b4"><div class="ttname"><a href="../../d9/d00/factorial_8cpp.html#ae9945c15826a9c1b5c141db314b7f8b4">factorial</a></div><div class="ttdeci">unsigned int factorial(unsigned int n)</div><div class="ttdef"><b>Definition:</b> factorial.cpp:8</div></div>
|
||||
</div><!-- fragment -->
|
||||
</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="../../d9/d00/factorial_8cpp_ae9945c15826a9c1b5c141db314b7f8b4_cgraph.svg" width="80" height="62"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
</div>
|
||||
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">◆ </a></span>main()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -157,19 +162,19 @@ Functions</h2></td></tr>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Main function </p>
|
||||
<div class="fragment"><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>  {</div>
|
||||
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>  <span class="keywordtype">int</span> num = 5;</div>
|
||||
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Factorial of "</span> << num << <span class="stringliteral">" is "</span> << <a class="code" href="../../d9/d00/factorial_8cpp.html#ae9945c15826a9c1b5c141db314b7f8b4">factorial</a>(num)</div>
|
||||
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>  << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>  <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> }</div>
|
||||
<p >Main function </p>
|
||||
<div class="fragment"><div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> {</div>
|
||||
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> <span class="keywordtype">int</span> num = 5;</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> << <span class="stringliteral">"Factorial of "</span> << num << <span class="stringliteral">" is "</span> << <a class="code hl_function" href="../../d9/d00/factorial_8cpp.html#ae9945c15826a9c1b5c141db314b7f8b4">factorial</a>(num)</div>
|
||||
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> << <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="l00019" name="l00019"></a><span class="lineno"> 19</span> <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</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">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d9/d00/factorial_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4_cgraph.svg" width="182" 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="../../d9/d00/factorial_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4_cgraph.svg" width="182" height="112"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -181,7 +186,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="../../d9/d00/factorial_8cpp.html">factorial.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>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<map id="main" name="main">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,31,56,57"/>
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,43,56,69"/>
|
||||
<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="104,5,176,32"/>
|
||||
<area shape="rect" id="node3" href="$d9/d00/factorial_8cpp.html#ae9945c15826a9c1b5c141db314b7f8b4" title=" " alt="" coords="105,56,175,83"/>
|
||||
<area shape="rect" id="node3" href="$d9/d00/factorial_8cpp.html#ae9945c15826a9c1b5c141db314b7f8b4" title=" " alt="" coords="105,80,175,107"/>
|
||||
</map>
|
||||
|
||||
@@ -1 +1 @@
|
||||
7e08c8f9d3ee3af014bc2a8217968099
|
||||
1a7151825b7a0d3ab2f8b802c5f0dfd6
|
||||
@@ -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="136pt" height="66pt"
|
||||
viewBox="0.00 0.00 136.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="136pt" height="84pt"
|
||||
viewBox="0.00 0.00 136.00 84.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 80)">
|
||||
<title>main</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-62 132,-62 132,4 -4,4"/>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-80 132,-80 132,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 target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-38.5 74,-57.5 128,-57.5 128,-38.5 74,-38.5"/>
|
||||
<text text-anchor="middle" x="101" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
<polygon fill="white" stroke="black" points="74,-56.5 74,-75.5 128,-75.5 128,-56.5 74,-56.5"/>
|
||||
<text text-anchor="middle" x="101" y="-63.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M38.15,-33.31C45.79,-35.13 54.96,-37.3 63.87,-39.42"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="63.19,-42.85 73.73,-41.76 64.8,-36.04 63.19,-42.85"/>
|
||||
<path fill="none" stroke="midnightblue" d="M38.15,-44.35C45.87,-47.06 55.16,-50.3 64.16,-53.46"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="63.13,-56.8 73.73,-56.8 65.44,-50.2 63.13,-56.8"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
@@ -45,8 +45,14 @@
|
||||
<!-- Node1->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node1->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M38.15,-24.69C46.14,-22.79 55.81,-20.5 65.1,-18.29"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="66.02,-21.67 74.94,-15.95 64.41,-14.86 66.02,-21.67"/>
|
||||
<path fill="none" stroke="midnightblue" d="M38.15,-31.65C46.23,-28.82 56.02,-25.39 65.4,-22.11"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="66.66,-25.38 74.94,-18.77 64.35,-18.77 66.66,-25.38"/>
|
||||
</g>
|
||||
<!-- Node3->Node3 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node3->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M88.36,-19.76C82.21,-28.57 86.43,-38 101,-38 109.88,-38 114.91,-34.5 116.1,-29.77"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="119.43,-28.63 113.64,-19.76 112.63,-30.3 119.43,-28.63"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.6 KiB |
@@ -0,0 +1,3 @@
|
||||
<map id="factorial" name="factorial">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,29,75,56"/>
|
||||
</map>
|
||||
@@ -0,0 +1 @@
|
||||
36de275d59e099f8c9727543efa634e9
|
||||
@@ -0,0 +1,28 @@
|
||||
<?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: factorial Pages: 1 -->
|
||||
<svg width="60pt" height="46pt"
|
||||
viewBox="0.00 0.00 60.00 46.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 42)">
|
||||
<title>factorial</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-42 56,-42 56,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 52,-19.5 52,-0.5 0,-0.5"/>
|
||||
<text text-anchor="middle" x="26" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">factorial</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node1 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node1</title>
|
||||
<path fill="none" stroke="midnightblue" d="M17.99,-19.76C14.09,-28.57 16.76,-38 26,-38 31.63,-38 34.82,-34.5 35.58,-29.77"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="39.01,-29.1 34.01,-19.76 32.1,-30.18 39.01,-29.1"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.2 KiB |
@@ -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++: search/linear_search.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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d02/linear__search_8cpp.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -92,12 +92,11 @@ $(document).ready(function(){initNavTree('d9/d02/linear__search_8cpp.html','../.
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#func-members">Functions</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">linear_search.cpp File Reference</div> </div>
|
||||
<div class="headertitle"><div class="title">linear_search.cpp File Reference</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p><a href="https://en.wikipedia.org/wiki/Linear_search">Linear search algorithm</a>
|
||||
<p><a href="https://en.wikipedia.org/wiki/Linear_search" target="_blank">Linear search algorithm</a>
|
||||
<a href="#details">More...</a></p>
|
||||
<div class="textblock"><code>#include <iostream></code><br />
|
||||
</div><div class="textblock"><div class="dynheader">
|
||||
@@ -107,7 +106,7 @@ Include dependency graph for linear_search.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:a84ac3988a534eb60ca351ed6caf56d84"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d02/linear__search_8cpp.html#a84ac3988a534eb60ca351ed6caf56d84">LinearSearch</a> (int *array, int size, int key)</td></tr>
|
||||
<tr class="separator:a84ac3988a534eb60ca351ed6caf56d84"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
@@ -115,9 +114,9 @@ Functions</h2></td></tr>
|
||||
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p><a href="https://en.wikipedia.org/wiki/Linear_search">Linear search algorithm</a> </p>
|
||||
<div class="textblock"><p ><a href="https://en.wikipedia.org/wiki/Linear_search" target="_blank">Linear search algorithm</a> </p>
|
||||
</div><h2 class="groupheader">Function Documentation</h2>
|
||||
<a id="a84ac3988a534eb60ca351ed6caf56d84"></a>
|
||||
<a id="a84ac3988a534eb60ca351ed6caf56d84" name="a84ac3988a534eb60ca351ed6caf56d84"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a84ac3988a534eb60ca351ed6caf56d84">◆ </a></span>LinearSearch()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -148,7 +147,7 @@ Functions</h2></td></tr>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Algorithm implementation </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<p >Algorithm implementation </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">array</td><td>array to search in </td></tr>
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>length of array </td></tr>
|
||||
@@ -159,19 +158,19 @@ Functions</h2></td></tr>
|
||||
<dl class="section return"><dt>Returns</dt><dd>index where the key-value occurs in the array </dd>
|
||||
<dd>
|
||||
-1 if key-value not found </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>  {</div>
|
||||
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < size; ++i) {</div>
|
||||
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>  <span class="keywordflow">if</span> (array[i] == key) {</div>
|
||||
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>  <span class="keywordflow">return</span> i;</div>
|
||||
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>  }</div>
|
||||
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>  }</div>
|
||||
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>  </div>
|
||||
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>  <span class="keywordflow">return</span> -1;</div>
|
||||
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> }</div>
|
||||
<div class="fragment"><div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> {</div>
|
||||
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < size; ++i) {</div>
|
||||
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <span class="keywordflow">if</span> (array[i] == key) {</div>
|
||||
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> <span class="keywordflow">return</span> i;</div>
|
||||
<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> }</div>
|
||||
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
|
||||
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> <span class="keywordflow">return</span> -1;</div>
|
||||
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span>}</div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
|
||||
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">◆ </a></span>main()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -186,34 +185,34 @@ Functions</h2></td></tr>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>main function </p>
|
||||
<div class="fragment"><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>  {</div>
|
||||
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>  <span class="keywordtype">int</span> size;</div>
|
||||
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nEnter the size of the Array : "</span>;</div>
|
||||
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> >> size;</div>
|
||||
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>  </div>
|
||||
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>  <span class="keywordtype">int</span> *array = <span class="keyword">new</span> <span class="keywordtype">int</span>[size];</div>
|
||||
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>  <span class="keywordtype">int</span> key;</div>
|
||||
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>  </div>
|
||||
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>  <span class="comment">// Input array</span></div>
|
||||
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nEnter the Array of "</span> << size << <span class="stringliteral">" numbers : "</span>;</div>
|
||||
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < size; i++) {</div>
|
||||
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> >> array[i];</div>
|
||||
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>  }</div>
|
||||
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>  </div>
|
||||
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nEnter the number to be searched : "</span>;</div>
|
||||
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> >> key;</div>
|
||||
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>  </div>
|
||||
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  <span class="keywordtype">int</span> index = <a class="code" href="../../d9/d02/linear__search_8cpp.html#a84ac3988a534eb60ca351ed6caf56d84">LinearSearch</a>(array, size, key);</div>
|
||||
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  <span class="keywordflow">if</span> (index != -1) {</div>
|
||||
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nNumber found at index : "</span> << index;</div>
|
||||
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  } <span class="keywordflow">else</span> {</div>
|
||||
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nNot found"</span>;</div>
|
||||
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  }</div>
|
||||
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  </div>
|
||||
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  <span class="keyword">delete</span>[] array;</div>
|
||||
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> }</div>
|
||||
<p >main function </p>
|
||||
<div class="fragment"><div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> {</div>
|
||||
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <span class="keywordtype">int</span> size;</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> << <span class="stringliteral">"\nEnter the size of the Array : "</span>;</div>
|
||||
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> >> size;</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> <span class="keywordtype">int</span> *array = <span class="keyword">new</span> <span class="keywordtype">int</span>[size];</div>
|
||||
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keywordtype">int</span> key;</div>
|
||||
<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> <span class="comment">// Input array</span></div>
|
||||
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nEnter the Array of "</span> << size << <span class="stringliteral">" numbers : "</span>;</div>
|
||||
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < size; i++) {</div>
|
||||
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> >> array[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> </div>
|
||||
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nEnter the number to be searched : "</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/io/basic_istream.html">std::cin</a> >> key;</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="keywordtype">int</span> index = <a class="code hl_function" href="../../d9/d02/linear__search_8cpp.html#a84ac3988a534eb60ca351ed6caf56d84">LinearSearch</a>(array, size, key);</div>
|
||||
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">if</span> (index != -1) {</div>
|
||||
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nNumber found at index : "</span> << index;</div>
|
||||
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> } <span class="keywordflow">else</span> {</div>
|
||||
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nNot found"</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="keyword">delete</span>[] array;</div>
|
||||
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</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="alinear__search_8cpp_html_a84ac3988a534eb60ca351ed6caf56d84"><div class="ttname"><a href="../../d9/d02/linear__search_8cpp.html#a84ac3988a534eb60ca351ed6caf56d84">LinearSearch</a></div><div class="ttdeci">int LinearSearch(int *array, int size, int key)</div><div class="ttdef"><b>Definition:</b> linear_search.cpp:16</div></div>
|
||||
@@ -226,7 +225,7 @@ Functions</h2></td></tr>
|
||||
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="../../dir_19b2bf9199a15c634a08b1ede1dd896a.html">search</a></li><li class="navelem"><a class="el" href="../../d9/d02/linear__search_8cpp.html">linear_search.cpp</a></li>
|
||||
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.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>
|
||||
|
||||
@@ -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++: string_search 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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d03/namespacestring__search.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -92,20 +92,19 @@ $(document).ready(function(){initNavTree('d9/d03/namespacestring__search.html','
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#func-members">Functions</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">string_search Namespace Reference</div> </div>
|
||||
<div class="headertitle"><div class="title">string_search Namespace Reference</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>String search algorithms.
|
||||
<a href="../../d9/d03/namespacestring__search.html#details">More...</a></p>
|
||||
<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:aeb2cd81064717aedd62bfb096b1a73d8"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d03/namespacestring__search.html#aeb2cd81064717aedd62bfb096b1a73d8">brute_force</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string.html">std::string</a> &text, const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string.html">std::string</a> &pattern)</td></tr>
|
||||
<tr class="separator:aeb2cd81064717aedd62bfb096b1a73d8"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:aa422aab133d4ed5e5d6022a7f701271f"><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>< int > </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d03/namespacestring__search.html#aa422aab133d4ed5e5d6022a7f701271f">getFailureArray</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string.html">std::string</a> &pattern)</td></tr>
|
||||
<tr class="separator:aa422aab133d4ed5e5d6022a7f701271f"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a996573527312d5255e1495b879e8a34f"><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>< int > </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d03/namespacestring__search.html#a996573527312d5255e1495b879e8a34f">getFailureArray</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string.html">std::string</a> &pattern)</td></tr>
|
||||
<tr class="separator:a996573527312d5255e1495b879e8a34f"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a26a58225ce7d3fa9d4c2f5349a65ed93"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d03/namespacestring__search.html#a26a58225ce7d3fa9d4c2f5349a65ed93">kmp</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string.html">std::string</a> &pattern, const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string.html">std::string</a> &text)</td></tr>
|
||||
<tr class="separator:a26a58225ce7d3fa9d4c2f5349a65ed93"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a8fb0bc932ba8b582c9f4c71338d050f8"><td class="memItemLeft" align="right" valign="top">int64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d03/namespacestring__search.html#a8fb0bc932ba8b582c9f4c71338d050f8">create_hash</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string.html">std::string</a> &s, int n)</td></tr>
|
||||
@@ -118,9 +117,9 @@ Functions</h2></td></tr>
|
||||
<tr class="separator:a21c673d56cbf67b1d2ee4d869185b7d9"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>String search algorithms. </p>
|
||||
<div class="textblock"><p >String search algorithms. </p>
|
||||
</div><h2 class="groupheader">Function Documentation</h2>
|
||||
<a id="aeb2cd81064717aedd62bfb096b1a73d8"></a>
|
||||
<a id="aeb2cd81064717aedd62bfb096b1a73d8" name="aeb2cd81064717aedd62bfb096b1a73d8"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#aeb2cd81064717aedd62bfb096b1a73d8">◆ </a></span>brute_force()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -145,7 +144,7 @@ Functions</h2></td></tr>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Find a pattern in a string by comparing the pattern to every substring. </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<p >Find a pattern in a string by comparing the pattern to every substring. </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">text</td><td>Any string that might contain the pattern. </td></tr>
|
||||
<tr><td class="paramname">pattern</td><td>String that we are searching for. </td></tr>
|
||||
@@ -155,21 +154,21 @@ Functions</h2></td></tr>
|
||||
<dl class="section return"><dt>Returns</dt><dd>Index where the pattern starts in the text </dd>
|
||||
<dd>
|
||||
-1 if the pattern was not found. </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>  {</div>
|
||||
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>  <span class="keywordtype">size_t</span> pat_l = pattern.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">length</a>();</div>
|
||||
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>  <span class="keywordtype">size_t</span> txt_l = text.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">length</a>();</div>
|
||||
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>  <span class="keywordtype">int</span> index = -1;</div>
|
||||
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>  <span class="keywordflow">if</span> (pat_l <= txt_l) {</div>
|
||||
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i < txt_l - pat_l + 1; i++) {</div>
|
||||
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string.html">std::string</a> s = text.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/substr.html">substr</a>(i, pat_l);</div>
|
||||
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>  <span class="keywordflow">if</span> (s == pattern) {</div>
|
||||
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>  index = i;</div>
|
||||
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>  <span class="keywordflow">break</span>;</div>
|
||||
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>  }</div>
|
||||
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>  }</div>
|
||||
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>  }</div>
|
||||
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>  <span class="keywordflow">return</span> index;</div>
|
||||
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> }</div>
|
||||
<div class="fragment"><div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> {</div>
|
||||
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keywordtype">size_t</span> pat_l = pattern.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">length</a>();</div>
|
||||
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> <span class="keywordtype">size_t</span> txt_l = text.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">length</a>();</div>
|
||||
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <span class="keywordtype">int</span> index = -1;</div>
|
||||
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <span class="keywordflow">if</span> (pat_l <= txt_l) {</div>
|
||||
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i < txt_l - pat_l + 1; 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/string/basic_string.html">std::string</a> s = text.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/substr.html">substr</a>(i, pat_l);</div>
|
||||
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <span class="keywordflow">if</span> (s == pattern) {</div>
|
||||
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> index = i;</div>
|
||||
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <span class="keywordflow">break</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> }</div>
|
||||
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <span class="keywordflow">return</span> index;</div>
|
||||
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span>}</div>
|
||||
<div class="ttc" id="abasic_string_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/string/basic_string.html">std::string</a></div></div>
|
||||
<div class="ttc" id="asize_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">std::string::length</a></div><div class="ttdeci">T length(T... args)</div></div>
|
||||
<div class="ttc" id="asubstr_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/string/basic_string/substr.html">std::string::substr</a></div><div class="ttdeci">T substr(T... args)</div></div>
|
||||
@@ -182,7 +181,7 @@ Here is the call graph for this function:</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="aebe07cea289a13142503d98be7df11fd"></a>
|
||||
<a id="aebe07cea289a13142503d98be7df11fd" name="aebe07cea289a13142503d98be7df11fd"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#aebe07cea289a13142503d98be7df11fd">◆ </a></span>check_if_equal()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -231,7 +230,7 @@ Here is the call graph for this function:</div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>compare if two sub-strings are equal </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<p >compare if two sub-strings are equal </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">str1</td><td>string pattern to search </td></tr>
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">str2</td><td>text in which to search </td></tr>
|
||||
@@ -244,23 +243,23 @@ Here is the call graph for this function:</div>
|
||||
<dd>
|
||||
<code>false</code> if pattern was not found </dd></dl>
|
||||
<dl class="section note"><dt>Note</dt><dd>can this be replaced by <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/compare.html">std::string::compare</a>? </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  {</div>
|
||||
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  <span class="keywordflow">if</span> (end1 - start1 != end2 - start2) {</div>
|
||||
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
||||
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  }</div>
|
||||
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  <span class="keywordflow">while</span> (start1 <= end1 && start2 <= end2) {</div>
|
||||
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  <span class="keywordflow">if</span> (str1[start1] != str2[start2]) {</div>
|
||||
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
||||
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  }</div>
|
||||
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  start1++;</div>
|
||||
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  start2++;</div>
|
||||
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  }</div>
|
||||
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
||||
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> }</div>
|
||||
<div class="fragment"><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="keywordflow">if</span> (end1 - start1 != end2 - start2) {</div>
|
||||
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</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">while</span> (start1 <= end1 && start2 <= end2) {</div>
|
||||
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="keywordflow">if</span> (str1[start1] != str2[start2]) {</div>
|
||||
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
||||
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> }</div>
|
||||
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> start1++;</div>
|
||||
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> start2++;</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="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
||||
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span>}</div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
<a id="a8fb0bc932ba8b582c9f4c71338d050f8"></a>
|
||||
<a id="a8fb0bc932ba8b582c9f4c71338d050f8" name="a8fb0bc932ba8b582c9f4c71338d050f8"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a8fb0bc932ba8b582c9f4c71338d050f8">◆ </a></span>create_hash()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -285,7 +284,7 @@ Here is the call graph for this function:</div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>convert a string to an intger - called as hashing function </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<p >convert a string to an intger - called as hashing function </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">s</td><td>source of string to hash </td></tr>
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">n</td><td>length of substring to hash </td></tr>
|
||||
@@ -293,27 +292,25 @@ Here is the call graph for this function:</div>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>hash integer </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>  {</div>
|
||||
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>  int64_t <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a> = 0;</div>
|
||||
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < n; ++i) {</div>
|
||||
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>  <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a> += (int64_t)(s[i] * (int64_t)<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/pow.html">pow</a>(<a class="code" href="../../d6/dce/rabin__karp_8cpp.html#ac4add2a227a10511e0128d63952030e8">PRIME</a>, i));</div>
|
||||
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>  }</div>
|
||||
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>  <span class="keywordflow">return</span> <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>;</div>
|
||||
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> }</div>
|
||||
<div class="ttc" id="afibonacci__sum_8cpp_html_aadb40ac4c74a7efc0680b83eeee138aa"><div class="ttname"><a href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">math::fibonacci_sum::result</a></div><div class="ttdeci">uint64_t result(uint64_t n)</div><div class="ttdef"><b>Definition:</b> fibonacci_sum.cpp:76</div></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 class="fragment"><div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> {</div>
|
||||
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> int64_t result = 0;</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 = 0; i < n; ++i) {</div>
|
||||
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> result += (int64_t)(s[i] * (int64_t)pow(<a class="code hl_define" href="../../d6/dce/rabin__karp_8cpp.html#ac4add2a227a10511e0128d63952030e8">PRIME</a>, i));</div>
|
||||
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> }</div>
|
||||
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span>}</div>
|
||||
<div class="ttc" id="arabin__karp_8cpp_html_ac4add2a227a10511e0128d63952030e8"><div class="ttname"><a href="../../d6/dce/rabin__karp_8cpp.html#ac4add2a227a10511e0128d63952030e8">PRIME</a></div><div class="ttdeci">#define PRIME</div><div class="ttdoc">Prime modulus for hash functions.</div><div class="ttdef"><b>Definition:</b> rabin_karp.cpp:16</div></div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
<a id="aa422aab133d4ed5e5d6022a7f701271f"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#aa422aab133d4ed5e5d6022a7f701271f">◆ </a></span>getFailureArray()</h2>
|
||||
<a id="a996573527312d5255e1495b879e8a34f" name="a996573527312d5255e1495b879e8a34f"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a996573527312d5255e1495b879e8a34f">◆ </a></span>getFailureArray()</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><int> string_search::getFailureArray </td>
|
||||
<td class="memname"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< int > string_search::getFailureArray </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string.html">std::string</a> & </td>
|
||||
<td class="paramname"><em>pattern</em></td><td>)</td>
|
||||
@@ -321,39 +318,39 @@ Here is the call graph for this function:</div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Generate the partial match table aka failure function for a pattern to search. </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<p >Generate the partial match table aka failure function for a pattern to search. </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">pattern</td><td>text for which to create the partial match table </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>the partial match table as a vector array </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>  {</div>
|
||||
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>  <span class="keywordtype">int</span> pattern_length = pattern.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<int></a> failure(pattern_length + 1);</div>
|
||||
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>  failure[0] = -1;</div>
|
||||
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>  <span class="keywordtype">int</span> j = -1;</div>
|
||||
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>  </div>
|
||||
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < pattern_length; i++) {</div>
|
||||
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>  <span class="keywordflow">while</span> (j != -1 && pattern[j] != pattern[i]) {</div>
|
||||
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>  j = failure[j];</div>
|
||||
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  }</div>
|
||||
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>  j++;</div>
|
||||
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  failure[i + 1] = j;</div>
|
||||
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  }</div>
|
||||
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  <span class="keywordflow">return</span> failure;</div>
|
||||
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> }</div>
|
||||
<div class="ttc" id="avector_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector< int ></a></div></div>
|
||||
<div class="fragment"><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="keywordtype">int</span> pattern_length = pattern.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>();</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<int></a> failure(pattern_length + 1);</div>
|
||||
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> failure[0] = -1;</div>
|
||||
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <span class="keywordtype">int</span> j = -1;</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">for</span> (<span class="keywordtype">int</span> i = 0; i < pattern_length; i++) {</div>
|
||||
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <span class="keywordflow">while</span> (j != -1 && pattern[j] != pattern[i]) {</div>
|
||||
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> j = failure[j];</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> j++;</div>
|
||||
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> failure[i + 1] = j;</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="keywordflow">return</span> failure;</div>
|
||||
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</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="../../d9/d03/namespacestring__search_aa422aab133d4ed5e5d6022a7f701271f_cgraph.svg" width="339" height="52"><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="../../d9/d03/namespacestring__search_a996573527312d5255e1495b879e8a34f_cgraph.svg" width="339" height="52"><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="a26a58225ce7d3fa9d4c2f5349a65ed93"></a>
|
||||
<a id="a26a58225ce7d3fa9d4c2f5349a65ed93" name="a26a58225ce7d3fa9d4c2f5349a65ed93"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a26a58225ce7d3fa9d4c2f5349a65ed93">◆ </a></span>kmp()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -378,7 +375,7 @@ Here is the call graph for this function:</div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>KMP algorithm to find a pattern in a text </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<p >KMP algorithm to find a pattern in a text </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">pattern</td><td>string pattern to search </td></tr>
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">text</td><td>text in which to search </td></tr>
|
||||
@@ -388,22 +385,22 @@ Here is the call graph for this function:</div>
|
||||
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if pattern was found </dd>
|
||||
<dd>
|
||||
<code>false</code> if pattern was not found </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  {</div>
|
||||
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  <span class="keywordtype">int</span> text_length = text.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>(), pattern_length = pattern.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<int></a> failure = <a class="code" href="../../d9/d03/namespacestring__search.html#aa422aab133d4ed5e5d6022a7f701271f">getFailureArray</a>(pattern);</div>
|
||||
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  </div>
|
||||
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="keywordtype">int</span> k = 0;</div>
|
||||
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j < text_length; j++) {</div>
|
||||
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  <span class="keywordflow">while</span> (k != -1 && pattern[k] != text[j]) {</div>
|
||||
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  k = failure[k];</div>
|
||||
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  }</div>
|
||||
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  k++;</div>
|
||||
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  <span class="keywordflow">if</span> (k == pattern_length)</div>
|
||||
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
||||
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  }</div>
|
||||
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
||||
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> }</div>
|
||||
<div class="ttc" id="anamespacestring__search_html_aa422aab133d4ed5e5d6022a7f701271f"><div class="ttname"><a href="../../d9/d03/namespacestring__search.html#aa422aab133d4ed5e5d6022a7f701271f">string_search::getFailureArray</a></div><div class="ttdeci">std::vector< int > getFailureArray(const std::string &pattern)</div><div class="ttdef"><b>Definition:</b> knuth_morris_pratt.cpp:33</div></div>
|
||||
<div class="fragment"><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">int</span> text_length = text.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>(), pattern_length = pattern.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>();</div>
|
||||
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<int></a> failure = <a class="code hl_function" href="../../d9/d03/namespacestring__search.html#a996573527312d5255e1495b879e8a34f">getFailureArray</a>(pattern);</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="keywordtype">int</span> k = 0;</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> j = 0; j < text_length; j++) {</div>
|
||||
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">while</span> (k != -1 && pattern[k] != text[j]) {</div>
|
||||
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> k = failure[k];</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> k++;</div>
|
||||
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="keywordflow">if</span> (k == pattern_length)</div>
|
||||
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
||||
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> }</div>
|
||||
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
||||
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span>}</div>
|
||||
<div class="ttc" id="anamespacestring__search_html_a996573527312d5255e1495b879e8a34f"><div class="ttname"><a href="../../d9/d03/namespacestring__search.html#a996573527312d5255e1495b879e8a34f">string_search::getFailureArray</a></div><div class="ttdeci">std::vector< int > getFailureArray(const std::string &pattern)</div><div class="ttdef"><b>Definition:</b> knuth_morris_pratt.cpp:33</div></div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -413,7 +410,7 @@ Here is the call graph for this function:</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a21c673d56cbf67b1d2ee4d869185b7d9"></a>
|
||||
<a id="a21c673d56cbf67b1d2ee4d869185b7d9" name="a21c673d56cbf67b1d2ee4d869185b7d9"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a21c673d56cbf67b1d2ee4d869185b7d9">◆ </a></span>rabin_karp()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -438,7 +435,7 @@ Here is the call graph for this function:</div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Perform string pattern search using Rabin-Karp algorithm </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<p >Perform string pattern search using Rabin-Karp algorithm </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">str</td><td>string to search in </td></tr>
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">pat</td><td>pattern to search for </td></tr>
|
||||
@@ -448,22 +445,22 @@ Here is the call graph for this function:</div>
|
||||
<dl class="section return"><dt>Returns</dt><dd>index of first occurrence of pattern </dd>
|
||||
<dd>
|
||||
-1 if pattern not found </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  {</div>
|
||||
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  int64_t pat_hash = <a class="code" href="../../d9/d03/namespacestring__search.html#a8fb0bc932ba8b582c9f4c71338d050f8">create_hash</a>(pat, pat.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>());</div>
|
||||
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  int64_t str_hash = <a class="code" href="../../d9/d03/namespacestring__search.html#a8fb0bc932ba8b582c9f4c71338d050f8">create_hash</a>(str, pat.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>());</div>
|
||||
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i <= str.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>() - pat.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>(); ++i) {</div>
|
||||
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <span class="keywordflow">if</span> (pat_hash == str_hash &&</div>
|
||||
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <a class="code" href="../../d9/d03/namespacestring__search.html#aebe07cea289a13142503d98be7df11fd">check_if_equal</a>(str, pat, i, i + pat.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>() - 1, 0,</div>
|
||||
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  pat.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>() - 1)) {</div>
|
||||
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  <span class="keywordflow">return</span> i;</div>
|
||||
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  }</div>
|
||||
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <span class="keywordflow">if</span> (i < str.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>() - pat.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>()) {</div>
|
||||
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  str_hash =</div>
|
||||
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  <a class="code" href="../../d9/d03/namespacestring__search.html#aed769d565b705a9b3e0eb1ec74088893">recalculate_hash</a>(str, i, i + pat.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>(), str_hash, pat.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>());</div>
|
||||
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  }</div>
|
||||
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  }</div>
|
||||
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  <span class="keywordflow">return</span> -1; <span class="comment">// return -1 if given pattern not found</span></div>
|
||||
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> }</div>
|
||||
<div class="fragment"><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> int64_t pat_hash = <a class="code hl_function" href="../../d9/d03/namespacestring__search.html#a8fb0bc932ba8b582c9f4c71338d050f8">create_hash</a>(pat, pat.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>());</div>
|
||||
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> int64_t str_hash = <a class="code hl_function" href="../../d9/d03/namespacestring__search.html#a8fb0bc932ba8b582c9f4c71338d050f8">create_hash</a>(str, pat.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>());</div>
|
||||
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i <= str.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>() - pat.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>(); ++i) {</div>
|
||||
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">if</span> (pat_hash == str_hash &&</div>
|
||||
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> <a class="code hl_function" href="../../d9/d03/namespacestring__search.html#aebe07cea289a13142503d98be7df11fd">check_if_equal</a>(str, pat, i, i + pat.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>() - 1, 0,</div>
|
||||
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> pat.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>() - 1)) {</div>
|
||||
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> <span class="keywordflow">return</span> i;</div>
|
||||
<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> <span class="keywordflow">if</span> (i < str.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>() - pat.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>()) {</div>
|
||||
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> str_hash =</div>
|
||||
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <a class="code hl_function" href="../../d9/d03/namespacestring__search.html#aed769d565b705a9b3e0eb1ec74088893">recalculate_hash</a>(str, i, i + pat.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>(), str_hash, pat.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/basic_string/size.html">size</a>());</div>
|
||||
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> }</div>
|
||||
<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="keywordflow">return</span> -1; <span class="comment">// return -1 if given pattern not found</span></div>
|
||||
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span>}</div>
|
||||
<div class="ttc" id="anamespacestring__search_html_a8fb0bc932ba8b582c9f4c71338d050f8"><div class="ttname"><a href="../../d9/d03/namespacestring__search.html#a8fb0bc932ba8b582c9f4c71338d050f8">string_search::create_hash</a></div><div class="ttdeci">int64_t create_hash(const std::string &s, int n)</div><div class="ttdef"><b>Definition:</b> rabin_karp.cpp:25</div></div>
|
||||
<div class="ttc" id="anamespacestring__search_html_aebe07cea289a13142503d98be7df11fd"><div class="ttname"><a href="../../d9/d03/namespacestring__search.html#aebe07cea289a13142503d98be7df11fd">string_search::check_if_equal</a></div><div class="ttdeci">bool check_if_equal(const std::string &str1, const std::string &str2, int start1, int end1, int start2, int end2)</div><div class="ttdef"><b>Definition:</b> rabin_karp.cpp:60</div></div>
|
||||
<div class="ttc" id="anamespacestring__search_html_aed769d565b705a9b3e0eb1ec74088893"><div class="ttname"><a href="../../d9/d03/namespacestring__search.html#aed769d565b705a9b3e0eb1ec74088893">string_search::recalculate_hash</a></div><div class="ttdeci">int64_t recalculate_hash(const std::string &s, int old_index, int new_index, int64_t old_hash, int patLength)</div><div class="ttdef"><b>Definition:</b> rabin_karp.cpp:42</div></div>
|
||||
@@ -476,7 +473,7 @@ Here is the call graph for this function:</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="aed769d565b705a9b3e0eb1ec74088893"></a>
|
||||
<a id="aed769d565b705a9b3e0eb1ec74088893" name="aed769d565b705a9b3e0eb1ec74088893"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#aed769d565b705a9b3e0eb1ec74088893">◆ </a></span>recalculate_hash()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -519,7 +516,7 @@ Here is the call graph for this function:</div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>re-hash a string using known existing hash </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<p >re-hash a string using known existing hash </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">s</td><td>source of string to hash </td></tr>
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">old_index</td><td>previous index of string </td></tr>
|
||||
@@ -530,12 +527,12 @@ Here is the call graph for this function:</div>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>new hash integer </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>  {</div>
|
||||
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  int64_t new_hash = old_hash - s[old_index];</div>
|
||||
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  new_hash /= <a class="code" href="../../d6/dce/rabin__karp_8cpp.html#ac4add2a227a10511e0128d63952030e8">PRIME</a>;</div>
|
||||
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  new_hash += (int64_t)(s[new_index] * (int64_t)<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/pow.html">pow</a>(<a class="code" href="../../d6/dce/rabin__karp_8cpp.html#ac4add2a227a10511e0128d63952030e8">PRIME</a>, patLength - 1));</div>
|
||||
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  <span class="keywordflow">return</span> new_hash;</div>
|
||||
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> }</div>
|
||||
<div class="fragment"><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> int64_t new_hash = old_hash - s[old_index];</div>
|
||||
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> new_hash /= <a class="code hl_define" href="../../d6/dce/rabin__karp_8cpp.html#ac4add2a227a10511e0128d63952030e8">PRIME</a>;</div>
|
||||
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> new_hash += (int64_t)(s[new_index] * (int64_t)pow(<a class="code hl_define" href="../../d6/dce/rabin__karp_8cpp.html#ac4add2a227a10511e0128d63952030e8">PRIME</a>, patLength - 1));</div>
|
||||
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <span class="keywordflow">return</span> new_hash;</div>
|
||||
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span>}</div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
@@ -545,7 +542,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="../../d9/d03/namespacestring__search.html">string_search</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>
|
||||
|
||||
@@ -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: string_search::rabin_karp Pages: 1 -->
|
||||
<svg width="331pt" height="154pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 4.1 KiB After Width: | Height: | Size: 4.1 KiB |
@@ -1,5 +1,5 @@
|
||||
<map id="string_search::kmp" name="string_search::kmp">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,42,140,69"/>
|
||||
<area shape="rect" id="node2" href="$d9/d03/namespacestring__search.html#aa422aab133d4ed5e5d6022a7f701271f" title=" " alt="" coords="188,5,357,47"/>
|
||||
<area shape="rect" id="node2" href="$d9/d03/namespacestring__search.html#a996573527312d5255e1495b879e8a34f" title=" " alt="" coords="188,5,357,47"/>
|
||||
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/string/basic_string/size.html#" title=" " alt="" coords="405,42,516,69"/>
|
||||
</map>
|
||||
|
||||
@@ -1 +1 @@
|
||||
9c08115b4b7c2b6ba79ae2f4af807fd4
|
||||
ec9c71066ae420a2c33317c5b2d92b7b
|
||||
@@ -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: string_search::kmp Pages: 1 -->
|
||||
<svg width="391pt" height="56pt"
|
||||
@@ -21,7 +21,7 @@
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a xlink:href="../../d9/d03/namespacestring__search.html#aa422aab133d4ed5e5d6022a7f701271f" target="_top" xlink:title=" ">
|
||||
<g id="a_node2"><a xlink:href="../../d9/d03/namespacestring__search.html#a996573527312d5255e1495b879e8a34f" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="137,-17 137,-47 264,-47 264,-17 137,-17"/>
|
||||
<text text-anchor="start" x="145" y="-35" font-family="Helvetica,sans-Serif" font-size="10.00">string_search::getFailure</text>
|
||||
<text text-anchor="middle" x="200.5" y="-24" font-family="Helvetica,sans-Serif" font-size="10.00">Array</text>
|
||||
|
||||
|
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 2.9 KiB |
@@ -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: string_search::getFailureArray Pages: 1 -->
|
||||
<svg width="254pt" height="39pt"
|
||||
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
@@ -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: string_search::brute_force Pages: 1 -->
|
||||
<svg width="242pt" height="66pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.5 KiB |
@@ -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: numerical_methods/brent_method_extrema.cpp Pages: 1 -->
|
||||
<svg width="327pt" height="95pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 4.3 KiB |
@@ -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: backtracking/n_queens_all_solution_optimised.cpp Pages: 1 -->
|
||||
<svg width="147pt" height="95pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.4 KiB |
@@ -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::iterative_tree_traversals::BinaryTree Class 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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d12/classothers_1_1iterative__tree__traversals_1_1_binary_tree.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -93,15 +93,14 @@ $(document).ready(function(){initNavTree('d9/d12/classothers_1_1iterative__tree_
|
||||
<div class="summary">
|
||||
<a href="#pub-methods">Public Member Functions</a> |
|
||||
<a href="../../d2/dce/classothers_1_1iterative__tree__traversals_1_1_binary_tree-members.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">others::iterative_tree_traversals::BinaryTree Class Reference</div> </div>
|
||||
<div class="headertitle"><div class="title">others::iterative_tree_traversals::BinaryTree Class Reference</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>defines the functions associated with the binary tree
|
||||
<a href="../../d9/d12/classothers_1_1iterative__tree__traversals_1_1_binary_tree.html#details">More...</a></p>
|
||||
<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:a3078a5ccf45d6a7031dcf46e43de65b6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d2/d9a/structothers_1_1iterative__tree__traversals_1_1_node.html">Node</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d12/classothers_1_1iterative__tree__traversals_1_1_binary_tree.html#a3078a5ccf45d6a7031dcf46e43de65b6">createNewNode</a> (int64_t)</td></tr>
|
||||
<tr class="memdesc:a3078a5ccf45d6a7031dcf46e43de65b6"><td class="mdescLeft"> </td><td class="mdescRight">function that will create new node for insertion. <a href="../../d9/d12/classothers_1_1iterative__tree__traversals_1_1_binary_tree.html#a3078a5ccf45d6a7031dcf46e43de65b6">More...</a><br /></td></tr>
|
||||
@@ -117,9 +116,9 @@ Public Member Functions</h2></td></tr>
|
||||
<tr class="separator:a0c33f2c1a3a3deb486a1c33ee5239499"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>defines the functions associated with the binary tree </p>
|
||||
<div class="textblock"><p >defines the functions associated with the binary tree </p>
|
||||
</div><h2 class="groupheader">Member Function Documentation</h2>
|
||||
<a id="a3078a5ccf45d6a7031dcf46e43de65b6"></a>
|
||||
<a id="a3078a5ccf45d6a7031dcf46e43de65b6" name="a3078a5ccf45d6a7031dcf46e43de65b6"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a3078a5ccf45d6a7031dcf46e43de65b6">◆ </a></span>createNewNode()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -136,7 +135,7 @@ Public Member Functions</h2></td></tr>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>function that will create new node for insertion. </p>
|
||||
<p>will allocate the memory for a node and, along the data and return the node.</p>
|
||||
<p >will allocate the memory for a node and, along the data and return the node.</p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">data</td><td>value that a particular node will contain. </td></tr>
|
||||
@@ -144,12 +143,12 @@ Public Member Functions</h2></td></tr>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>pointer to the newly created node with assigned data. </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  {</div>
|
||||
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <a class="code" href="../../db/d8b/struct_node.html">Node</a> *<a class="code" href="../../d5/da1/structnode.html">node</a> = <span class="keyword">new</span> <a class="code" href="../../db/d8b/struct_node.html">Node</a>();</div>
|
||||
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  <a class="code" href="../../d5/da1/structnode.html">node</a>->data = <a class="code" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>;</div>
|
||||
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  <a class="code" href="../../d5/da1/structnode.html">node</a>->left = <a class="code" href="../../d5/da1/structnode.html">node</a>->right = <span class="keyword">nullptr</span>;</div>
|
||||
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <span class="keywordflow">return</span> <a class="code" href="../../d1/df3/hash__search_8cpp.html#a8ca8dcb494104d273679e219e53d0555">node</a>;</div>
|
||||
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> }</div>
|
||||
<div class="fragment"><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> <a class="code hl_class" href="../../db/d8b/struct_node.html">Node</a> *<a class="code hl_class" href="../../d5/da1/structnode.html">node</a> = <span class="keyword">new</span> <a class="code hl_class" href="../../db/d8b/struct_node.html">Node</a>();</div>
|
||||
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> <a class="code hl_class" href="../../d5/da1/structnode.html">node</a>->data = <a class="code hl_variable" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>;</div>
|
||||
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <a class="code hl_class" href="../../d5/da1/structnode.html">node</a>->left = <a class="code hl_class" href="../../d5/da1/structnode.html">node</a>->right = <span class="keyword">nullptr</span>;</div>
|
||||
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="keywordflow">return</span> <a class="code hl_typedef" href="../../d1/df3/hash__search_8cpp.html#a8ca8dcb494104d273679e219e53d0555">node</a>;</div>
|
||||
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span>}</div>
|
||||
<div class="ttc" id="ahash__search_8cpp_html_a6e1a77282bc65ad359d753d25df23243"><div class="ttname"><a href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a></div><div class="ttdeci">int data[MAX]</div><div class="ttdoc">test data</div><div class="ttdef"><b>Definition:</b> hash_search.cpp:24</div></div>
|
||||
<div class="ttc" id="ahash__search_8cpp_html_a8ca8dcb494104d273679e219e53d0555"><div class="ttname"><a href="../../d1/df3/hash__search_8cpp.html#a8ca8dcb494104d273679e219e53d0555">node</a></div><div class="ttdeci">struct list node</div></div>
|
||||
<div class="ttc" id="astruct_node_html"><div class="ttname"><a href="../../db/d8b/struct_node.html">Node</a></div><div class="ttdef"><b>Definition:</b> linkedlist_implentation_usingarray.cpp:14</div></div>
|
||||
@@ -157,7 +156,7 @@ Public Member Functions</h2></td></tr>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
<a id="a0c33f2c1a3a3deb486a1c33ee5239499"></a>
|
||||
<a id="a0c33f2c1a3a3deb486a1c33ee5239499" name="a0c33f2c1a3a3deb486a1c33ee5239499"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a0c33f2c1a3a3deb486a1c33ee5239499">◆ </a></span>inOrderIterative()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -174,7 +173,7 @@ Public Member Functions</h2></td></tr>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p><a class="el" href="../../d9/d12/classothers_1_1iterative__tree__traversals_1_1_binary_tree.html#a0c33f2c1a3a3deb486a1c33ee5239499" title="inOrderIterative() function that will perform the inorder traversal iteratively, and return the resul...">inOrderIterative()</a> function that will perform the inorder traversal iteratively, and return the result array that contain the inorder traversal of a tree. </p>
|
||||
<p>function that takes root of the tree as an argument, and returns its inorder traversal.</p>
|
||||
<p >function that takes root of the tree as an argument, and returns its inorder traversal.</p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">root</td><td>head/root node of a tree </td></tr>
|
||||
@@ -182,27 +181,27 @@ Public Member Functions</h2></td></tr>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>result that is containing the inorder traversal of a tree </dd></dl>
|
||||
<p>< is used to find and traverse the child nodes.</p>
|
||||
<p>< List of values, sorted in in-order.</p>
|
||||
<div class="fragment"><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  {</div>
|
||||
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/stack.html">std::stack<Node *></a></div>
|
||||
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  <a class="code" href="../../dc/dc5/paranthesis__matching_8cpp.html#aa37d24a036d239b3b528f13b9de880c7">stack</a>; <span class="comment">///< is used to find and traverse the child nodes.</span></div>
|
||||
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<int64_t></a> <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>; <span class="comment">///< List of values, sorted in in-order.</span></div>
|
||||
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  </div>
|
||||
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  <a class="code" href="../../db/d8b/struct_node.html">Node</a> *current = root;</div>
|
||||
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  </div>
|
||||
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  <span class="keywordflow">while</span> (!<a class="code" href="../../d1/dc2/classstack.html">stack</a>.empty() || current) {</div>
|
||||
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  <span class="keywordflow">while</span> (current) {</div>
|
||||
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  <a class="code" href="../../d1/dc2/classstack.html">stack</a>.<a class="code" href="../../d1/dc2/classstack.html#a5705c3926dcf5fd3f9c964467a50b81d">push</a>(current);</div>
|
||||
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  current = current->left;</div>
|
||||
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  }</div>
|
||||
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  current = <a class="code" href="../../d1/dc2/classstack.html">stack</a>.<a class="code" href="../../d1/dc2/classstack.html#a21c0bb6ce7dcfe445cc12031977ea344">top</a>();</div>
|
||||
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>  <a class="code" href="../../d1/dc2/classstack.html">stack</a>.<a class="code" href="../../d1/dc2/classstack.html#a6cd4b95d5de00d41b2491392338384dc">pop</a>();</div>
|
||||
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>.push_back(current->data);</div>
|
||||
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  current = current->right;</div>
|
||||
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  }</div>
|
||||
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  <span class="keywordflow">return</span> <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>;</div>
|
||||
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> }</div>
|
||||
<p >< is used to find and traverse the child nodes.</p>
|
||||
<p >< List of values, sorted in in-order.</p>
|
||||
<div class="fragment"><div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> {</div>
|
||||
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/stack.html">std::stack<Node *></a></div>
|
||||
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> <a class="code hl_variable" href="../../dc/dc5/paranthesis__matching_8cpp.html#aa37d24a036d239b3b528f13b9de880c7">stack</a>; <span class="comment">///< is used to find and traverse the child nodes.</span></div>
|
||||
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<int64_t></a> <a class="code hl_function" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>; <span class="comment">///< List of values, sorted in in-order.</span></div>
|
||||
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> </div>
|
||||
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> <a class="code hl_class" href="../../db/d8b/struct_node.html">Node</a> *current = root;</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> <span class="keywordflow">while</span> (!<a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.empty() || current) {</div>
|
||||
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> <span class="keywordflow">while</span> (current) {</div>
|
||||
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.<a class="code hl_function" href="../../d1/dc2/classstack.html#a5705c3926dcf5fd3f9c964467a50b81d">push</a>(current);</div>
|
||||
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> current = current->left;</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> current = <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.<a class="code hl_function" href="../../d1/dc2/classstack.html#a21c0bb6ce7dcfe445cc12031977ea344">top</a>();</div>
|
||||
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.<a class="code hl_function" href="../../d1/dc2/classstack.html#a6cd4b95d5de00d41b2491392338384dc">pop</a>();</div>
|
||||
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> <a class="code hl_function" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>.push_back(current->data);</div>
|
||||
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> current = current->right;</div>
|
||||
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> }</div>
|
||||
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> <span class="keywordflow">return</span> <a class="code hl_function" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>;</div>
|
||||
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span>}</div>
|
||||
<div class="ttc" id="aclassstack_html"><div class="ttname"><a href="../../d1/dc2/classstack.html">stack</a></div><div class="ttdef"><b>Definition:</b> stack.h:26</div></div>
|
||||
<div class="ttc" id="aclassstack_html_a21c0bb6ce7dcfe445cc12031977ea344"><div class="ttname"><a href="../../d1/dc2/classstack.html#a21c0bb6ce7dcfe445cc12031977ea344">stack::top</a></div><div class="ttdeci">Type top()</div><div class="ttdef"><b>Definition:</b> stack.h:93</div></div>
|
||||
<div class="ttc" id="aclassstack_html_a5705c3926dcf5fd3f9c964467a50b81d"><div class="ttname"><a href="../../d1/dc2/classstack.html#a5705c3926dcf5fd3f9c964467a50b81d">stack::push</a></div><div class="ttdeci">void push(Type item)</div><div class="ttdef"><b>Definition:</b> stack.h:83</div></div>
|
||||
@@ -210,11 +209,11 @@ Public Member Functions</h2></td></tr>
|
||||
<div class="ttc" id="afibonacci__sum_8cpp_html_aadb40ac4c74a7efc0680b83eeee138aa"><div class="ttname"><a href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">math::fibonacci_sum::result</a></div><div class="ttdeci">uint64_t result(uint64_t n)</div><div class="ttdef"><b>Definition:</b> fibonacci_sum.cpp:76</div></div>
|
||||
<div class="ttc" id="aparanthesis__matching_8cpp_html_aa37d24a036d239b3b528f13b9de880c7"><div class="ttname"><a href="../../dc/dc5/paranthesis__matching_8cpp.html#aa37d24a036d239b3b528f13b9de880c7">stack</a></div><div class="ttdeci">char stack[MAX]</div><div class="ttdef"><b>Definition:</b> paranthesis_matching.cpp:20</div></div>
|
||||
<div class="ttc" id="astack_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/stack.html">std::stack</a></div></div>
|
||||
<div class="ttc" id="avector_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector< int64_t ></a></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>
|
||||
</div>
|
||||
<a id="a636a07c90b7f312bb86d2ec104efca25"></a>
|
||||
<a id="a636a07c90b7f312bb86d2ec104efca25" name="a636a07c90b7f312bb86d2ec104efca25"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a636a07c90b7f312bb86d2ec104efca25">◆ </a></span>postOrderIterative()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -231,7 +230,7 @@ Public Member Functions</h2></td></tr>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p><a class="el" href="../../d9/d12/classothers_1_1iterative__tree__traversals_1_1_binary_tree.html#a636a07c90b7f312bb86d2ec104efca25" title="postOrderIterative() function that will perform the postorder traversal iteratively,...">postOrderIterative()</a> function that will perform the postorder traversal iteratively, and return the result array that contain the postorder traversal of a tree. </p>
|
||||
<p>function that takes root of the tree as an argument, and returns its postorder traversal.</p>
|
||||
<p >function that takes root of the tree as an argument, and returns its postorder traversal.</p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">root</td><td>head/root node of a tree </td></tr>
|
||||
@@ -239,37 +238,37 @@ Public Member Functions</h2></td></tr>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>result that is containing the postorder traversal of a tree </dd></dl>
|
||||
<p>< is used to find and traverse the child nodes.</p>
|
||||
<p>< List of values, sorted in post-order.</p>
|
||||
<div class="fragment"><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  {</div>
|
||||
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/stack.html">std::stack<Node *></a></div>
|
||||
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  <a class="code" href="../../dc/dc5/paranthesis__matching_8cpp.html#aa37d24a036d239b3b528f13b9de880c7">stack</a>; <span class="comment">///< is used to find and traverse the child nodes.</span></div>
|
||||
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<int64_t></a> <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>; <span class="comment">///< List of values, sorted in post-order.</span></div>
|
||||
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  </div>
|
||||
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  <a class="code" href="../../d1/dc2/classstack.html">stack</a>.<a class="code" href="../../d1/dc2/classstack.html#a5705c3926dcf5fd3f9c964467a50b81d">push</a>(root);</div>
|
||||
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  </div>
|
||||
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  <span class="keywordflow">while</span> (!<a class="code" href="../../d1/dc2/classstack.html">stack</a>.empty()) {</div>
|
||||
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>  <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>.push_back(<a class="code" href="../../d1/dc2/classstack.html">stack</a>.<a class="code" href="../../d1/dc2/classstack.html#a21c0bb6ce7dcfe445cc12031977ea344">top</a>()->data);</div>
|
||||
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  <a class="code" href="../../db/d8b/struct_node.html">Node</a> *current = <a class="code" href="../../d1/dc2/classstack.html">stack</a>.<a class="code" href="../../d1/dc2/classstack.html#a21c0bb6ce7dcfe445cc12031977ea344">top</a>();</div>
|
||||
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  <a class="code" href="../../d1/dc2/classstack.html">stack</a>.<a class="code" href="../../d1/dc2/classstack.html#a6cd4b95d5de00d41b2491392338384dc">pop</a>();</div>
|
||||
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  </div>
|
||||
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  <span class="keywordflow">if</span> (current->left) {</div>
|
||||
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  <a class="code" href="../../d1/dc2/classstack.html">stack</a>.<a class="code" href="../../d1/dc2/classstack.html#a5705c3926dcf5fd3f9c964467a50b81d">push</a>(current->left);</div>
|
||||
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  }</div>
|
||||
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  <span class="keywordflow">if</span> (current->right) {</div>
|
||||
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  <a class="code" href="../../d1/dc2/classstack.html">stack</a>.<a class="code" href="../../d1/dc2/classstack.html#a5705c3926dcf5fd3f9c964467a50b81d">push</a>(current->right);</div>
|
||||
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  }</div>
|
||||
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  }</div>
|
||||
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  </div>
|
||||
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/reverse.html">reverse</a>(<a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>.begin(), <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>.end());</div>
|
||||
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  </div>
|
||||
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  <span class="keywordflow">return</span> <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>;</div>
|
||||
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> }</div>
|
||||
<p >< is used to find and traverse the child nodes.</p>
|
||||
<p >< List of values, sorted in post-order.</p>
|
||||
<div class="fragment"><div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> {</div>
|
||||
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/stack.html">std::stack<Node *></a></div>
|
||||
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> <a class="code hl_variable" href="../../dc/dc5/paranthesis__matching_8cpp.html#aa37d24a036d239b3b528f13b9de880c7">stack</a>; <span class="comment">///< is used to find and traverse the child nodes.</span></div>
|
||||
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<int64_t></a> <a class="code hl_function" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>; <span class="comment">///< List of values, sorted in post-order.</span></div>
|
||||
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> </div>
|
||||
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.<a class="code hl_function" href="../../d1/dc2/classstack.html#a5705c3926dcf5fd3f9c964467a50b81d">push</a>(root);</div>
|
||||
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> </div>
|
||||
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> <span class="keywordflow">while</span> (!<a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.empty()) {</div>
|
||||
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> <a class="code hl_function" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>.push_back(<a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.<a class="code hl_function" href="../../d1/dc2/classstack.html#a21c0bb6ce7dcfe445cc12031977ea344">top</a>()->data);</div>
|
||||
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> <a class="code hl_class" href="../../db/d8b/struct_node.html">Node</a> *current = <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.<a class="code hl_function" href="../../d1/dc2/classstack.html#a21c0bb6ce7dcfe445cc12031977ea344">top</a>();</div>
|
||||
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.<a class="code hl_function" href="../../d1/dc2/classstack.html#a6cd4b95d5de00d41b2491392338384dc">pop</a>();</div>
|
||||
<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="keywordflow">if</span> (current->left) {</div>
|
||||
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.<a class="code hl_function" href="../../d1/dc2/classstack.html#a5705c3926dcf5fd3f9c964467a50b81d">push</a>(current->left);</div>
|
||||
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> }</div>
|
||||
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> <span class="keywordflow">if</span> (current->right) {</div>
|
||||
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.<a class="code hl_function" href="../../d1/dc2/classstack.html#a5705c3926dcf5fd3f9c964467a50b81d">push</a>(current->right);</div>
|
||||
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</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> </div>
|
||||
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/reverse.html">reverse</a>(<a class="code hl_function" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>.begin(), <a class="code hl_function" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>.end());</div>
|
||||
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> </div>
|
||||
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> <span class="keywordflow">return</span> <a class="code hl_function" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>;</div>
|
||||
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span>}</div>
|
||||
<div class="ttc" id="areverse_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/algorithm/reverse.html">std::reverse</a></div><div class="ttdeci">T reverse(T... args)</div></div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
<a id="ad4c6a8e67fb8267a65439b035666b5ae"></a>
|
||||
<a id="ad4c6a8e67fb8267a65439b035666b5ae" name="ad4c6a8e67fb8267a65439b035666b5ae"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ad4c6a8e67fb8267a65439b035666b5ae">◆ </a></span>preOrderIterative()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -286,7 +285,7 @@ Public Member Functions</h2></td></tr>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p><a class="el" href="../../d9/d12/classothers_1_1iterative__tree__traversals_1_1_binary_tree.html#ad4c6a8e67fb8267a65439b035666b5ae" title="preOrderIterative() function that will perform the preorder traversal iteratively,...">preOrderIterative()</a> function that will perform the preorder traversal iteratively, and return the result array that contain the preorder traversal of a tree. </p>
|
||||
<p>function that takes root of the tree as an argument, and returns its preorder traversal.</p>
|
||||
<p >function that takes root of the tree as an argument, and returns its preorder traversal.</p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">root</td><td>head/root node of a tree </td></tr>
|
||||
@@ -294,30 +293,30 @@ Public Member Functions</h2></td></tr>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>result that is containing the preorder traversal of a tree </dd></dl>
|
||||
<p>< is used to find and traverse the child nodes.</p>
|
||||
<p>< list of values, sorted in pre-order.</p>
|
||||
<div class="fragment"><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  {</div>
|
||||
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/stack.html">std::stack<Node *></a></div>
|
||||
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <a class="code" href="../../dc/dc5/paranthesis__matching_8cpp.html#aa37d24a036d239b3b528f13b9de880c7">stack</a>; <span class="comment">///< is used to find and traverse the child nodes.</span></div>
|
||||
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<int64_t></a> <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>; <span class="comment">///< list of values, sorted in pre-order.</span></div>
|
||||
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  </div>
|
||||
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  <a class="code" href="../../d1/dc2/classstack.html">stack</a>.<a class="code" href="../../d1/dc2/classstack.html#a5705c3926dcf5fd3f9c964467a50b81d">push</a>(root);</div>
|
||||
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  </div>
|
||||
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  <span class="keywordflow">while</span> (!<a class="code" href="../../d1/dc2/classstack.html">stack</a>.empty()) {</div>
|
||||
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>.push_back(<a class="code" href="../../d1/dc2/classstack.html">stack</a>.<a class="code" href="../../d1/dc2/classstack.html#a21c0bb6ce7dcfe445cc12031977ea344">top</a>()->data);</div>
|
||||
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  <a class="code" href="../../db/d8b/struct_node.html">Node</a> *current = <a class="code" href="../../d1/dc2/classstack.html">stack</a>.<a class="code" href="../../d1/dc2/classstack.html#a21c0bb6ce7dcfe445cc12031977ea344">top</a>();</div>
|
||||
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  <a class="code" href="../../d1/dc2/classstack.html">stack</a>.<a class="code" href="../../d1/dc2/classstack.html#a6cd4b95d5de00d41b2491392338384dc">pop</a>();</div>
|
||||
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  </div>
|
||||
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  <span class="keywordflow">if</span> (current->right) {</div>
|
||||
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <a class="code" href="../../d1/dc2/classstack.html">stack</a>.<a class="code" href="../../d1/dc2/classstack.html#a5705c3926dcf5fd3f9c964467a50b81d">push</a>(current->right);</div>
|
||||
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  }</div>
|
||||
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <span class="keywordflow">if</span> (current->left) {</div>
|
||||
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  <a class="code" href="../../d1/dc2/classstack.html">stack</a>.<a class="code" href="../../d1/dc2/classstack.html#a5705c3926dcf5fd3f9c964467a50b81d">push</a>(current->left);</div>
|
||||
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  }</div>
|
||||
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  }</div>
|
||||
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  </div>
|
||||
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <span class="keywordflow">return</span> <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>;</div>
|
||||
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> }</div>
|
||||
<p >< is used to find and traverse the child nodes.</p>
|
||||
<p >< list of values, sorted in pre-order.</p>
|
||||
<div class="fragment"><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> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/stack.html">std::stack<Node *></a></div>
|
||||
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <a class="code hl_variable" href="../../dc/dc5/paranthesis__matching_8cpp.html#aa37d24a036d239b3b528f13b9de880c7">stack</a>; <span class="comment">///< is used to find and traverse the child nodes.</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<int64_t></a> <a class="code hl_function" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>; <span class="comment">///< list of values, sorted in pre-order.</span></div>
|
||||
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> </div>
|
||||
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.<a class="code hl_function" href="../../d1/dc2/classstack.html#a5705c3926dcf5fd3f9c964467a50b81d">push</a>(root);</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="keywordflow">while</span> (!<a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.empty()) {</div>
|
||||
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> <a class="code hl_function" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>.push_back(<a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.<a class="code hl_function" href="../../d1/dc2/classstack.html#a21c0bb6ce7dcfe445cc12031977ea344">top</a>()->data);</div>
|
||||
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> <a class="code hl_class" href="../../db/d8b/struct_node.html">Node</a> *current = <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.<a class="code hl_function" href="../../d1/dc2/classstack.html#a21c0bb6ce7dcfe445cc12031977ea344">top</a>();</div>
|
||||
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.<a class="code hl_function" href="../../d1/dc2/classstack.html#a6cd4b95d5de00d41b2491392338384dc">pop</a>();</div>
|
||||
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> </div>
|
||||
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">if</span> (current->right) {</div>
|
||||
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.<a class="code hl_function" href="../../d1/dc2/classstack.html#a5705c3926dcf5fd3f9c964467a50b81d">push</a>(current->right);</div>
|
||||
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> }</div>
|
||||
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> <span class="keywordflow">if</span> (current->left) {</div>
|
||||
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> <a class="code hl_class" href="../../d1/dc2/classstack.html">stack</a>.<a class="code hl_function" href="../../d1/dc2/classstack.html#a5705c3926dcf5fd3f9c964467a50b81d">push</a>(current->left);</div>
|
||||
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> }</div>
|
||||
<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> </div>
|
||||
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> <span class="keywordflow">return</span> <a class="code hl_function" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>;</div>
|
||||
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span>}</div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
@@ -330,7 +329,7 @@ Public Member Functions</h2></td></tr>
|
||||
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="../../d0/d6f/namespaceothers.html">others</a></li><li class="navelem"><b>iterative_tree_traversals</b></li><li class="navelem"><a class="el" href="../../d9/d12/classothers_1_1iterative__tree__traversals_1_1_binary_tree.html">BinaryTree</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>
|
||||
|
||||
@@ -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++: inversion 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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d13/namespaceinversion.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -90,22 +90,21 @@ $(document).ready(function(){initNavTree('d9/d13/namespaceinversion.html','../..
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">inversion Namespace Reference</div> </div>
|
||||
<div class="headertitle"><div class="title">inversion Namespace Reference</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>Functions for counting inversions using Merge Sort algorithm.
|
||||
<a href="../../d9/d13/namespaceinversion.html#details">More...</a></p>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>Functions for counting inversions using Merge Sort algorithm. </p>
|
||||
<div class="textblock"><p >Functions for counting inversions using Merge Sort 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="../../d9/d13/namespaceinversion.html">inversion</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>
|
||||
|
||||
@@ -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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d6/d30/classmachine__learning_1_1adaline.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -90,29 +90,28 @@ $(document).ready(function(){initNavTree('d6/d30/classmachine__learning_1_1adali
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">machine_learning::adaline Member List</div> </div>
|
||||
<div class="headertitle"><div class="title">machine_learning::adaline Member List</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>This is the complete list of members for <a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html">machine_learning::adaline</a>, including all inherited members.</p>
|
||||
<table class="directory">
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html#aa23d60262f917f35836ef4b1c1d9f7d3">accuracy</a></td><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html">machine_learning::adaline</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html#a082f758fb55fe19f22b3df66f89b2325">activation</a>(double x)</td><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html">machine_learning::adaline</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html#a082f758fb55fe19f22b3df66f89b2325">activation</a>(double x)</td><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html">machine_learning::adaline</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html#a0acbe32aaab897e7939e5b0454035b8c">adaline</a>(int num_features, const double eta=0.01f, const double accuracy=1e-5)</td><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html">machine_learning::adaline</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html#ac8a9c2aaaa63b0f27ea176857e1e7d56">check_size_match</a>(const std::vector< double > &x)</td><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html">machine_learning::adaline</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">private</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html#ac8a9c2aaaa63b0f27ea176857e1e7d56">check_size_match</a>(const std::vector< double > &x)</td><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html">machine_learning::adaline</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">private</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html#a28160d17e492597a2f112e0d38551cda">eta</a></td><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html">machine_learning::adaline</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html#a74e3c6c037b67895014414c5d75465e5">fit</a>(const std::vector< double > &x, const int &y)</td><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html">machine_learning::adaline</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html#a74e3c6c037b67895014414c5d75465e5">fit</a>(const std::vector< double > &x, const int &y)</td><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html">machine_learning::adaline</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html#a8d61f9ed872eef26bca39388cbda6a91">fit</a>(std::array< std::vector< double >, N > const &X, std::array< int, N > const &Y)</td><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html">machine_learning::adaline</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html#a1d821a24e1503d468c95d4acedca58b3">operator<<</a>(std::ostream &out, const adaline &ada)</td><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html">machine_learning::adaline</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html#ae347040516e995c8fb8ca2e5c0496daa">operator<<</a></td><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html">machine_learning::adaline</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html#ab11242d9ad5b03a75911e29b04f78fd3">predict</a>(const std::vector< double > &x, double *out=nullptr)</td><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html">machine_learning::adaline</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html#a4cd8fe438032fedaa66f93bfd66f5492">weights</a></td><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html">machine_learning::adaline</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html#a4cd8fe438032fedaa66f93bfd66f5492">weights</a></td><td class="entry"><a class="el" href="../../d6/d30/classmachine__learning_1_1adaline.html">machine_learning::adaline</a></td><td class="entry"><span class="mlabel">private</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>
|
||||
|
||||
@@ -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++: wave_sort 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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d21/namespacewave__sort.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -90,22 +90,21 @@ $(document).ready(function(){initNavTree('d9/d21/namespacewave__sort.html','../.
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">wave_sort Namespace Reference</div> </div>
|
||||
<div class="headertitle"><div class="title">wave_sort Namespace Reference</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>Functions for the <a href="https://www.geeksforgeeks.org/sort-array-wave-form-2/">Wave sort</a> implementation.
|
||||
<p>Functions for the <a href="https://www.geeksforgeeks.org/sort-array-wave-form-2/" target="_blank">Wave sort</a> implementation.
|
||||
<a href="../../d9/d21/namespacewave__sort.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/sort-array-wave-form-2/">Wave sort</a> implementation. </p>
|
||||
<div class="textblock"><p >Functions for the <a href="https://www.geeksforgeeks.org/sort-array-wave-form-2/" target="_blank">Wave sort</a> implementation. </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="../../d9/d21/namespacewave__sort.html">wave_sort</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>
|
||||
|
||||
@@ -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++: graph::LowestCommonAncestor Class 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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d23/classgraph_1_1_lowest_common_ancestor.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -95,18 +95,17 @@ $(document).ready(function(){initNavTree('d9/d23/classgraph_1_1_lowest_common_an
|
||||
<a href="#pub-attribs">Public Attributes</a> |
|
||||
<a href="#pro-methods">Protected Member Functions</a> |
|
||||
<a href="../../da/d73/classgraph_1_1_lowest_common_ancestor-members.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">graph::LowestCommonAncestor Class Reference</div> </div>
|
||||
<div class="headertitle"><div class="title">graph::LowestCommonAncestor Class Reference</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="dynheader">
|
||||
Collaboration diagram for graph::LowestCommonAncestor:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d1/d71/classgraph_1_1_lowest_common_ancestor__coll__graph.svg" width="415" height="424"><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="../../d1/d71/classgraph_1_1_lowest_common_ancestor__coll__graph.svg" width="223" height="203"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
<center><span class="legend">[<a target="top" href="../../graph_legend.html">legend</a>]</span></center></div>
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 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:a80825a4fd4c41860b689d253dd2c8e93"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a80825a4fd4c41860b689d253dd2c8e93">LowestCommonAncestor</a> (const <a class="el" href="../../d0/d58/classgraph_1_1_rooted_tree.html">RootedTree</a> &tree_)</td></tr>
|
||||
<tr class="memdesc:a80825a4fd4c41860b689d253dd2c8e93"><td class="mdescLeft"> </td><td class="mdescRight">Stores the tree and precomputs "up lifts". <a href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a80825a4fd4c41860b689d253dd2c8e93">More...</a><br /></td></tr>
|
||||
@@ -115,25 +114,25 @@ Public Member Functions</h2></td></tr>
|
||||
<tr class="memdesc:a60151e19512b48cc0b14ea121df00488"><td class="mdescLeft"> </td><td class="mdescRight">Query the structure to find the lowest common ancestor. Assumes that the provided numbers are valid indices of vertices. Iterativelly modifies ("lifts") u an v until it finnds their lowest common ancestor. <a href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a60151e19512b48cc0b14ea121df00488">More...</a><br /></td></tr>
|
||||
<tr class="separator:a60151e19512b48cc0b14ea121df00488"><td class="memSeparator" colspan="2"> </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:ad6ae1f39c3ce27fc009970e6aa3c022a"><td class="memItemLeft" align="right" valign="top"><a id="ad6ae1f39c3ce27fc009970e6aa3c022a"></a>
|
||||
<tr class="memitem:ad6ae1f39c3ce27fc009970e6aa3c022a"><td class="memItemLeft" align="right" valign="top"><a id="ad6ae1f39c3ce27fc009970e6aa3c022a" name="ad6ae1f39c3ce27fc009970e6aa3c022a"></a>
|
||||
const <a class="el" href="../../d0/d58/classgraph_1_1_rooted_tree.html">RootedTree</a> & </td><td class="memItemRight" valign="bottom"><b>tree</b></td></tr>
|
||||
<tr class="separator:ad6ae1f39c3ce27fc009970e6aa3c022a"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a46d10f669791e3da9a4809bd8ff8d3ad"><td class="memItemLeft" align="right" valign="top"><a id="a46d10f669791e3da9a4809bd8ff8d3ad"></a>
|
||||
<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< int > > </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a></td></tr>
|
||||
<tr class="memitem:a46d10f669791e3da9a4809bd8ff8d3ad"><td class="memItemLeft" align="right" valign="top"><a id="a46d10f669791e3da9a4809bd8ff8d3ad" name="a46d10f669791e3da9a4809bd8ff8d3ad"></a>
|
||||
<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< int > > </td><td class="memItemRight" valign="bottom"><b>up</b></td></tr>
|
||||
<tr class="memdesc:a46d10f669791e3da9a4809bd8ff8d3ad"><td class="mdescLeft"> </td><td class="mdescRight">for every vertex stores a list of its ancestors by powers of two For each vertex, the first element of the corresponding list contains the index of its parent. The i-th element of the list is an index of the (2^i)-th ancestor of the vertex. <br /></td></tr>
|
||||
<tr class="separator:a46d10f669791e3da9a4809bd8ff8d3ad"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-methods" name="pro-methods"></a>
|
||||
Protected Member Functions</h2></td></tr>
|
||||
<tr class="memitem:a42589cc39d6bbff6c997152f1b96e356"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a42589cc39d6bbff6c997152f1b96e356">populate_up</a> ()</td></tr>
|
||||
<tr class="separator:a42589cc39d6bbff6c997152f1b96e356"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>A structure that holds a rooted tree and allow for effecient queries of the lowest common ancestor of two given vertices in the tree. </p>
|
||||
<div class="textblock"><p >A structure that holds a rooted tree and allow for effecient queries of the lowest common ancestor of two given vertices in the tree. </p>
|
||||
</div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
||||
<a id="a80825a4fd4c41860b689d253dd2c8e93"></a>
|
||||
<a id="a80825a4fd4c41860b689d253dd2c8e93" name="a80825a4fd4c41860b689d253dd2c8e93"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a80825a4fd4c41860b689d253dd2c8e93">◆ </a></span>LowestCommonAncestor()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -164,21 +163,21 @@ Protected Member Functions</h2></td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<div class="fragment"><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  : tree(tree_) {</div>
|
||||
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  <a class="code" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a42589cc39d6bbff6c997152f1b96e356">populate_up</a>();</div>
|
||||
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  }</div>
|
||||
<div class="fragment"><div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> : tree(tree_) {</div>
|
||||
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> <a class="code hl_function" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a42589cc39d6bbff6c997152f1b96e356">populate_up</a>();</div>
|
||||
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> }</div>
|
||||
<div class="ttc" id="aclassgraph_1_1_lowest_common_ancestor_html_a42589cc39d6bbff6c997152f1b96e356"><div class="ttname"><a href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a42589cc39d6bbff6c997152f1b96e356">graph::LowestCommonAncestor::populate_up</a></div><div class="ttdeci">void populate_up()</div><div class="ttdef"><b>Definition:</b> lowest_common_ancestor.cpp:212</div></div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="../../d9/d23/classgraph_1_1_lowest_common_ancestor_a80825a4fd4c41860b689d253dd2c8e93_cgraph.svg" width="100%" height="416"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
||||
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="../../d9/d23/classgraph_1_1_lowest_common_ancestor_a80825a4fd4c41860b689d253dd2c8e93_cgraph.svg" width="100%" height="300"><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>
|
||||
<h2 class="groupheader">Member Function Documentation</h2>
|
||||
<a id="a60151e19512b48cc0b14ea121df00488"></a>
|
||||
<a id="a60151e19512b48cc0b14ea121df00488" name="a60151e19512b48cc0b14ea121df00488"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a60151e19512b48cc0b14ea121df00488">◆ </a></span>lowest_common_ancestor()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -221,39 +220,39 @@ Here is the call graph for this function:</div>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>index of the vertex which is the lowet common ancestor of u and v </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  {</div>
|
||||
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  <span class="comment">// Ensure u is the deeper (higher level) of the two vertices</span></div>
|
||||
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  <span class="keywordflow">if</span> (tree.<a class="code" href="../../d0/d58/classgraph_1_1_rooted_tree.html#a2ee3ad1161ac2532da30c3e22c265ad3">level</a>[v] > tree.<a class="code" href="../../d0/d58/classgraph_1_1_rooted_tree.html#a2ee3ad1161ac2532da30c3e22c265ad3">level</a>[u]) {</div>
|
||||
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/swap.html">std::swap</a>(u, v);</div>
|
||||
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  }</div>
|
||||
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  </div>
|
||||
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  <span class="comment">// "Lift" u to the same level as v.</span></div>
|
||||
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  <span class="keywordtype">int</span> level_diff = tree.<a class="code" href="../../d0/d58/classgraph_1_1_rooted_tree.html#a2ee3ad1161ac2532da30c3e22c265ad3">level</a>[u] - tree.<a class="code" href="../../d0/d58/classgraph_1_1_rooted_tree.html#a2ee3ad1161ac2532da30c3e22c265ad3">level</a>[v];</div>
|
||||
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; (1 << i) <= level_diff; ++i) {</div>
|
||||
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  <span class="keywordflow">if</span> (level_diff & (1 << i)) {</div>
|
||||
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  u = <a class="code" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[u][i];</div>
|
||||
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  }</div>
|
||||
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  }</div>
|
||||
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>  assert(tree.<a class="code" href="../../d0/d58/classgraph_1_1_rooted_tree.html#a2ee3ad1161ac2532da30c3e22c265ad3">level</a>[u] == tree.<a class="code" href="../../d0/d58/classgraph_1_1_rooted_tree.html#a2ee3ad1161ac2532da30c3e22c265ad3">level</a>[v]);</div>
|
||||
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  </div>
|
||||
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  <span class="keywordflow">if</span> (u == v) {</div>
|
||||
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  <span class="keywordflow">return</span> u;</div>
|
||||
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  }</div>
|
||||
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  </div>
|
||||
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <span class="comment">// "Lift" u and v to their 2^i th ancestor if they are different</span></div>
|
||||
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = <span class="keyword">static_cast<</span><span class="keywordtype">int</span><span class="keyword">></span>(<a class="code" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[u].size()) - 1; i >= 0; --i) {</div>
|
||||
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  <span class="keywordflow">if</span> (<a class="code" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[u][i] != <a class="code" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[v][i]) {</div>
|
||||
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  u = <a class="code" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[u][i];</div>
|
||||
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  v = <a class="code" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[v][i];</div>
|
||||
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  }</div>
|
||||
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  }</div>
|
||||
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  </div>
|
||||
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  <span class="comment">// As we regressed u an v such that they cannot further be lifted so</span></div>
|
||||
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>  <span class="comment">// that their ancestor would be different, the only logical</span></div>
|
||||
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>  <span class="comment">// consequence is that their parent is the sought answer.</span></div>
|
||||
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>  assert(<a class="code" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[u][0] == <a class="code" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[v][0]);</div>
|
||||
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>  <span class="keywordflow">return</span> <a class="code" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[u][0];</div>
|
||||
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>  }</div>
|
||||
<div class="fragment"><div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> {</div>
|
||||
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> <span class="comment">// Ensure u is the deeper (higher level) of the two vertices</span></div>
|
||||
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> <span class="keywordflow">if</span> (tree.<a class="code hl_variable" href="../../d0/d58/classgraph_1_1_rooted_tree.html#a2ee3ad1161ac2532da30c3e22c265ad3">level</a>[v] > tree.<a class="code hl_variable" href="../../d0/d58/classgraph_1_1_rooted_tree.html#a2ee3ad1161ac2532da30c3e22c265ad3">level</a>[u]) {</div>
|
||||
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/swap.html">std::swap</a>(u, v);</div>
|
||||
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> }</div>
|
||||
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> </div>
|
||||
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> <span class="comment">// "Lift" u to the same level as v.</span></div>
|
||||
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> <span class="keywordtype">int</span> level_diff = tree.<a class="code hl_variable" href="../../d0/d58/classgraph_1_1_rooted_tree.html#a2ee3ad1161ac2532da30c3e22c265ad3">level</a>[u] - tree.<a class="code hl_variable" href="../../d0/d58/classgraph_1_1_rooted_tree.html#a2ee3ad1161ac2532da30c3e22c265ad3">level</a>[v];</div>
|
||||
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; (1 << i) <= level_diff; ++i) {</div>
|
||||
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> <span class="keywordflow">if</span> (level_diff & (1 << i)) {</div>
|
||||
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> u = <a class="code hl_variable" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[u][i];</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> }</div>
|
||||
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> assert(tree.<a class="code hl_variable" href="../../d0/d58/classgraph_1_1_rooted_tree.html#a2ee3ad1161ac2532da30c3e22c265ad3">level</a>[u] == tree.<a class="code hl_variable" href="../../d0/d58/classgraph_1_1_rooted_tree.html#a2ee3ad1161ac2532da30c3e22c265ad3">level</a>[v]);</div>
|
||||
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> </div>
|
||||
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> <span class="keywordflow">if</span> (u == v) {</div>
|
||||
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> <span class="keywordflow">return</span> u;</div>
|
||||
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> }</div>
|
||||
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> </div>
|
||||
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> <span class="comment">// "Lift" u and v to their 2^i th ancestor if they are different</span></div>
|
||||
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = <span class="keyword">static_cast<</span><span class="keywordtype">int</span><span class="keyword">></span>(<a class="code hl_variable" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[u].size()) - 1; i >= 0; --i) {</div>
|
||||
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[u][i] != <a class="code hl_variable" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[v][i]) {</div>
|
||||
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> u = <a class="code hl_variable" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[u][i];</div>
|
||||
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> v = <a class="code hl_variable" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[v][i];</div>
|
||||
<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> }</div>
|
||||
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> </div>
|
||||
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> <span class="comment">// As we regressed u an v such that they cannot further be lifted so</span></div>
|
||||
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> <span class="comment">// that their ancestor would be different, the only logical</span></div>
|
||||
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> <span class="comment">// consequence is that their parent is the sought answer.</span></div>
|
||||
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> assert(<a class="code hl_variable" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[u][0] == <a class="code hl_variable" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[v][0]);</div>
|
||||
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> <span class="keywordflow">return</span> <a class="code hl_variable" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[u][0];</div>
|
||||
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> }</div>
|
||||
<div class="ttc" id="aclassgraph_1_1_lowest_common_ancestor_html_a46d10f669791e3da9a4809bd8ff8d3ad"><div class="ttname"><a href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">graph::LowestCommonAncestor::up</a></div><div class="ttdeci">std::vector< std::vector< int > > up</div><div class="ttdoc">for every vertex stores a list of its ancestors by powers of two For each vertex, the first element o...</div><div class="ttdef"><b>Definition:</b> lowest_common_ancestor.cpp:206</div></div>
|
||||
<div class="ttc" id="aclassgraph_1_1_rooted_tree_html_a2ee3ad1161ac2532da30c3e22c265ad3"><div class="ttname"><a href="../../d0/d58/classgraph_1_1_rooted_tree.html#a2ee3ad1161ac2532da30c3e22c265ad3">graph::RootedTree::level</a></div><div class="ttdeci">std::vector< int > level</div><div class="ttdoc">Stores the distance from the root.</div><div class="ttdef"><b>Definition:</b> lowest_common_ancestor.cpp:106</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>
|
||||
@@ -266,7 +265,7 @@ Here is the call graph for this function:</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a42589cc39d6bbff6c997152f1b96e356"></a>
|
||||
<a id="a42589cc39d6bbff6c997152f1b96e356" name="a42589cc39d6bbff6c997152f1b96e356"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a42589cc39d6bbff6c997152f1b96e356">◆ </a></span>populate_up()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -288,29 +287,27 @@ Here is the call graph for this function:</div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Populate the "up" structure. See above. </p>
|
||||
<div class="fragment"><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>  {</div>
|
||||
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  <a class="code" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/resize.html">resize</a>(tree.<a class="code" href="../../dc/d61/classgraph_1_1_graph.html#a8930d1470d132b19e430d1c71f94c904">number_of_vertices</a>());</div>
|
||||
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> vertex = 0; vertex < tree.<a class="code" href="../../dc/d61/classgraph_1_1_graph.html#a8930d1470d132b19e430d1c71f94c904">number_of_vertices</a>(); ++vertex) {</div>
|
||||
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>  <a class="code" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[vertex].<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/push_back.html">push_back</a>(tree.<a class="code" href="../../d0/d58/classgraph_1_1_rooted_tree.html#a3831583a91914988897a4cc8748fda43">parent</a>[vertex]);</div>
|
||||
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>  }</div>
|
||||
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> level = 0; (1 << level) < tree.<a class="code" href="../../dc/d61/classgraph_1_1_graph.html#a8930d1470d132b19e430d1c71f94c904">number_of_vertices</a>(); ++level) {</div>
|
||||
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> vertex = 0; vertex < tree.<a class="code" href="../../dc/d61/classgraph_1_1_graph.html#a8930d1470d132b19e430d1c71f94c904">number_of_vertices</a>(); ++vertex) {</div>
|
||||
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  <span class="comment">// up[vertex][level + 1] = 2^(level + 1) th ancestor of vertex =</span></div>
|
||||
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  <span class="comment">// = 2^level th ancestor of 2^level th ancestor of vertex =</span></div>
|
||||
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  <span class="comment">// = 2^level th ancestor of up[vertex][level]</span></div>
|
||||
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  <a class="code" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[vertex].<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/push_back.html">push_back</a>(<a class="code" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[<a class="code" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[vertex][level]][level]);</div>
|
||||
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  }</div>
|
||||
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  }</div>
|
||||
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  }</div>
|
||||
<p >Populate the "up" structure. See above. </p>
|
||||
<div class="fragment"><div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> {</div>
|
||||
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span> <a class="code hl_variable" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>.resize(tree.<a class="code hl_function" href="../../dc/d61/classgraph_1_1_graph.html#a8930d1470d132b19e430d1c71f94c904">number_of_vertices</a>());</div>
|
||||
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> vertex = 0; vertex < tree.<a class="code hl_function" href="../../dc/d61/classgraph_1_1_graph.html#a8930d1470d132b19e430d1c71f94c904">number_of_vertices</a>(); ++vertex) {</div>
|
||||
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span> <a class="code hl_variable" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[vertex].push_back(tree.<a class="code hl_variable" href="../../d0/d58/classgraph_1_1_rooted_tree.html#a3831583a91914988897a4cc8748fda43">parent</a>[vertex]);</div>
|
||||
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span> }</div>
|
||||
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> level = 0; (1 << level) < tree.<a class="code hl_function" href="../../dc/d61/classgraph_1_1_graph.html#a8930d1470d132b19e430d1c71f94c904">number_of_vertices</a>(); ++level) {</div>
|
||||
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> vertex = 0; vertex < tree.<a class="code hl_function" href="../../dc/d61/classgraph_1_1_graph.html#a8930d1470d132b19e430d1c71f94c904">number_of_vertices</a>(); ++vertex) {</div>
|
||||
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span> <span class="comment">// up[vertex][level + 1] = 2^(level + 1) th ancestor of vertex =</span></div>
|
||||
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"> 220</span> <span class="comment">// = 2^level th ancestor of 2^level th ancestor of vertex =</span></div>
|
||||
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span> <span class="comment">// = 2^level th ancestor of up[vertex][level]</span></div>
|
||||
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span> <a class="code hl_variable" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[vertex].push_back(<a class="code hl_variable" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[<a class="code hl_variable" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad">up</a>[vertex][level]][level]);</div>
|
||||
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span> }</div>
|
||||
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"> 224</span> }</div>
|
||||
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> }</div>
|
||||
<div class="ttc" id="aclassgraph_1_1_graph_html_a8930d1470d132b19e430d1c71f94c904"><div class="ttname"><a href="../../dc/d61/classgraph_1_1_graph.html#a8930d1470d132b19e430d1c71f94c904">graph::Graph::number_of_vertices</a></div><div class="ttdeci">int number_of_vertices() const</div><div class="ttdef"><b>Definition:</b> lowest_common_ancestor.cpp:74</div></div>
|
||||
<div class="ttc" id="aclassgraph_1_1_rooted_tree_html_a3831583a91914988897a4cc8748fda43"><div class="ttname"><a href="../../d0/d58/classgraph_1_1_rooted_tree.html#a3831583a91914988897a4cc8748fda43">graph::RootedTree::parent</a></div><div class="ttdeci">std::vector< int > parent</div><div class="ttdoc">Stores parent of every vertex and for root its own index. The root is technically not its own parent,...</div><div class="ttdef"><b>Definition:</b> lowest_common_ancestor.cpp:104</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 class="ttc" id="aresize_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector/resize.html">std::vector::resize</a></div><div class="ttdeci">T resize(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="../../d9/d23/classgraph_1_1_lowest_common_ancestor_a42589cc39d6bbff6c997152f1b96e356_cgraph.svg" width="590" height="155"><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="../../d9/d23/classgraph_1_1_lowest_common_ancestor_a42589cc39d6bbff6c997152f1b96e356_cgraph.svg" width="424" height="52"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -325,7 +322,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="../../df/dce/namespacegraph.html">graph</a></li><li class="navelem"><a class="el" href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html">LowestCommonAncestor</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>
|
||||
|
||||
@@ -3,6 +3,5 @@ var classgraph_1_1_lowest_common_ancestor =
|
||||
[ "LowestCommonAncestor", "d9/d23/classgraph_1_1_lowest_common_ancestor.html#a80825a4fd4c41860b689d253dd2c8e93", null ],
|
||||
[ "lowest_common_ancestor", "d9/d23/classgraph_1_1_lowest_common_ancestor.html#a60151e19512b48cc0b14ea121df00488", null ],
|
||||
[ "populate_up", "d9/d23/classgraph_1_1_lowest_common_ancestor.html#a42589cc39d6bbff6c997152f1b96e356", null ],
|
||||
[ "tree", "d9/d23/classgraph_1_1_lowest_common_ancestor.html#ad6ae1f39c3ce27fc009970e6aa3c022a", null ],
|
||||
[ "up", "d9/d23/classgraph_1_1_lowest_common_ancestor.html#a46d10f669791e3da9a4809bd8ff8d3ad", null ]
|
||||
];
|
||||
@@ -1,7 +1,4 @@
|
||||
<map id="graph::LowestCommonAncestor::populate_up" name="graph::LowestCommonAncestor::populate_up">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,64,217,105"/>
|
||||
<area shape="rect" id="node2" href="$dc/d61/classgraph_1_1_graph.html#a8930d1470d132b19e430d1c71f94c904" title=" " alt="" coords="267,5,420,47"/>
|
||||
<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="265,71,421,98"/>
|
||||
<area shape="rect" id="node5" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/resize.html#" title=" " alt="" coords="280,122,407,149"/>
|
||||
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/size.html#" title=" " alt="" coords="469,13,584,39"/>
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,5,217,47"/>
|
||||
<area shape="rect" id="node2" href="$dc/d61/classgraph_1_1_graph.html#a8930d1470d132b19e430d1c71f94c904" title=" " alt="" coords="265,5,419,47"/>
|
||||
</map>
|
||||
|
||||
@@ -1 +1 @@
|
||||
ad85deb9bcf5bf2960d5ba1dab3445de
|
||||
9588c04de542f08ab30836e3f70f9b1b
|
||||
@@ -1,21 +1,21 @@
|
||||
<?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::LowestCommonAncestor::populate_up Pages: 1 -->
|
||||
<svg width="442pt" height="116pt"
|
||||
viewBox="0.00 0.00 442.00 115.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 111.5)">
|
||||
<svg width="318pt" height="39pt"
|
||||
viewBox="0.00 0.00 318.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>graph::LowestCommonAncestor::populate_up</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-111.5 438,-111.5 438,4 -4,4"/>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-35 314,-35 314,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,-33 0,-63 159,-63 159,-33 0,-33"/>
|
||||
<text text-anchor="start" x="8" y="-51" font-family="Helvetica,sans-Serif" font-size="10.00">graph::LowestCommonAncestor</text>
|
||||
<text text-anchor="middle" x="79.5" y="-40" font-family="Helvetica,sans-Serif" font-size="10.00">::populate_up</text>
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-0.5 0,-30.5 159,-30.5 159,-0.5 0,-0.5"/>
|
||||
<text text-anchor="start" x="8" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">graph::LowestCommonAncestor</text>
|
||||
<text text-anchor="middle" x="79.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::populate_up</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
@@ -23,62 +23,17 @@
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a xlink:href="../../dc/d61/classgraph_1_1_graph.html#a8930d1470d132b19e430d1c71f94c904" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="196,-77 196,-107 311,-107 311,-77 196,-77"/>
|
||||
<text text-anchor="start" x="204" y="-95" font-family="Helvetica,sans-Serif" font-size="10.00">graph::Graph::number</text>
|
||||
<text text-anchor="middle" x="253.5" y="-84" font-family="Helvetica,sans-Serif" font-size="10.00">_of_vertices</text>
|
||||
<polygon fill="white" stroke="black" points="195,-0.5 195,-30.5 310,-30.5 310,-0.5 195,-0.5"/>
|
||||
<text text-anchor="start" x="203" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">graph::Graph::number</text>
|
||||
<text text-anchor="middle" x="252.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">_of_vertices</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M139.21,-63.02C154.22,-66.86 170.47,-71.01 185.84,-74.95"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="185.24,-78.41 195.8,-77.49 186.98,-71.63 185.24,-78.41"/>
|
||||
</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="195,-38.5 195,-57.5 312,-57.5 312,-38.5 195,-38.5"/>
|
||||
<text text-anchor="middle" x="253.5" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node1->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M159.2,-48C167.75,-48 176.4,-48 184.81,-48"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="184.92,-51.5 194.92,-48 184.92,-44.5 184.92,-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/resize.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="206,-0.5 206,-19.5 301,-19.5 301,-0.5 206,-0.5"/>
|
||||
<text text-anchor="middle" x="253.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::resize</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node5 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node1->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M148.48,-32.98C165.51,-29.22 183.53,-25.24 199.69,-21.67"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="200.49,-25.08 209.5,-19.5 198.98,-18.24 200.49,-25.08"/>
|
||||
</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/size.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="348,-82.5 348,-101.5 434,-101.5 434,-82.5 348,-82.5"/>
|
||||
<text text-anchor="middle" x="391" y="-89.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node2->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M311.18,-92C320.04,-92 329.16,-92 337.91,-92"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="337.98,-95.5 347.98,-92 337.98,-88.5 337.98,-95.5"/>
|
||||
<path fill="none" stroke="midnightblue" d="M159.49,-15.5C167.86,-15.5 176.31,-15.5 184.53,-15.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="184.77,-19 194.77,-15.5 184.77,-12 184.77,-19"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 4.1 KiB After Width: | Height: | Size: 1.9 KiB |
@@ -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::LowestCommonAncestor::lowest_common_ancestor Pages: 1 -->
|
||||
<svg width="262pt" height="39pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
@@ -1,8 +1,5 @@
|
||||
<map id="graph::LowestCommonAncestor::LowestCommonAncestor" name="graph::LowestCommonAncestor::LowestCommonAncestor">
|
||||
<area shape="rect" id="node1" title="Stores the tree and precomputs "up lifts"." alt="" coords="5,64,217,105"/>
|
||||
<area shape="rect" id="node2" href="$d9/d23/classgraph_1_1_lowest_common_ancestor.html#a42589cc39d6bbff6c997152f1b96e356" title=" " alt="" coords="265,64,477,105"/>
|
||||
<area shape="rect" id="node3" href="$dc/d61/classgraph_1_1_graph.html#a8930d1470d132b19e430d1c71f94c904" title=" " alt="" coords="527,5,680,47"/>
|
||||
<area shape="rect" id="node5" 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="525,71,681,98"/>
|
||||
<area shape="rect" id="node6" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/resize.html#" title=" " alt="" coords="540,122,667,149"/>
|
||||
<area shape="rect" id="node4" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/size.html#" title=" " alt="" coords="729,13,844,39"/>
|
||||
<area shape="rect" id="node1" title="Stores the tree and precomputs "up lifts"." alt="" coords="5,5,217,47"/>
|
||||
<area shape="rect" id="node2" href="$d9/d23/classgraph_1_1_lowest_common_ancestor.html#a42589cc39d6bbff6c997152f1b96e356" title=" " alt="" coords="265,5,477,47"/>
|
||||
<area shape="rect" id="node3" href="$dc/d61/classgraph_1_1_graph.html#a8930d1470d132b19e430d1c71f94c904" title=" " alt="" coords="525,5,679,47"/>
|
||||
</map>
|
||||
|
||||
@@ -1 +1 @@
|
||||
976e653cb1a919f9d66cf962510482e3
|
||||
a0b8642808c402946645aa6404f11fa5
|
||||
@@ -1,10 +1,10 @@
|
||||
<?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::LowestCommonAncestor::LowestCommonAncestor Pages: 1 -->
|
||||
<!--zoomable 116 -->
|
||||
<!--zoomable 39 -->
|
||||
<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; }
|
||||
@@ -46,22 +46,22 @@ if (edges && edges.length) {
|
||||
</defs>
|
||||
|
||||
<script type="text/javascript">
|
||||
var viewWidth = 637;
|
||||
var viewHeight = 116;
|
||||
var viewWidth = 513;
|
||||
var viewHeight = 39;
|
||||
var sectionId = 'dynsection-1';
|
||||
</script>
|
||||
<script xlink:href="../../svgpan.js"/>
|
||||
<svg id="graph" class="graph">
|
||||
<g id="viewport">
|
||||
<title>graph::LowestCommonAncestor::LowestCommonAncestor</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-111.5 633,-111.5 633,4 -4,4"/>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-35 509,-35 509,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title="Stores the tree and precomputs "up lifts".">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-33 0,-63 159,-63 159,-33 0,-33"/>
|
||||
<text text-anchor="start" x="8" y="-51" font-family="Helvetica,sans-Serif" font-size="10.00">graph::LowestCommonAncestor</text>
|
||||
<text text-anchor="middle" x="79.5" y="-40" font-family="Helvetica,sans-Serif" font-size="10.00">::LowestCommonAncestor</text>
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-0.5 0,-30.5 159,-30.5 159,-0.5 0,-0.5"/>
|
||||
<text text-anchor="start" x="8" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">graph::LowestCommonAncestor</text>
|
||||
<text text-anchor="middle" x="79.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::LowestCommonAncestor</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
@@ -69,78 +69,33 @@ var sectionId = 'dynsection-1';
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a xlink:href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a42589cc39d6bbff6c997152f1b96e356" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="195,-33 195,-63 354,-63 354,-33 195,-33"/>
|
||||
<text text-anchor="start" x="203" y="-51" font-family="Helvetica,sans-Serif" font-size="10.00">graph::LowestCommonAncestor</text>
|
||||
<text text-anchor="middle" x="274.5" y="-40" font-family="Helvetica,sans-Serif" font-size="10.00">::populate_up</text>
|
||||
<polygon fill="white" stroke="black" points="195,-0.5 195,-30.5 354,-30.5 354,-0.5 195,-0.5"/>
|
||||
<text text-anchor="start" x="203" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">graph::LowestCommonAncestor</text>
|
||||
<text text-anchor="middle" x="274.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::populate_up</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M159,-48C167.48,-48 176.14,-48 184.73,-48"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="184.76,-51.5 194.76,-48 184.76,-44.5 184.76,-51.5"/>
|
||||
<path fill="none" stroke="midnightblue" d="M159,-15.5C167.48,-15.5 176.14,-15.5 184.73,-15.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="184.76,-19 194.76,-15.5 184.76,-12 184.76,-19"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../dc/d61/classgraph_1_1_graph.html#a8930d1470d132b19e430d1c71f94c904" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="391,-77 391,-107 506,-107 506,-77 391,-77"/>
|
||||
<text text-anchor="start" x="399" y="-95" font-family="Helvetica,sans-Serif" font-size="10.00">graph::Graph::number</text>
|
||||
<text text-anchor="middle" x="448.5" y="-84" font-family="Helvetica,sans-Serif" font-size="10.00">_of_vertices</text>
|
||||
<polygon fill="white" stroke="black" points="390,-0.5 390,-30.5 505,-30.5 505,-0.5 390,-0.5"/>
|
||||
<text text-anchor="start" x="398" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">graph::Graph::number</text>
|
||||
<text text-anchor="middle" x="447.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">_of_vertices</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node2->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M334.21,-63.02C349.22,-66.86 365.47,-71.01 380.84,-74.95"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="380.24,-78.41 390.8,-77.49 381.98,-71.63 380.24,-78.41"/>
|
||||
</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/push_back.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="390,-38.5 390,-57.5 507,-57.5 507,-38.5 390,-38.5"/>
|
||||
<text text-anchor="middle" x="448.5" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node5 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node2->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M354.2,-48C362.75,-48 371.4,-48 379.81,-48"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="379.92,-51.5 389.92,-48 379.92,-44.5 379.92,-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/resize.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="401,-0.5 401,-19.5 496,-19.5 496,-0.5 401,-0.5"/>
|
||||
<text text-anchor="middle" x="448.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::resize</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node6 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node2->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M343.48,-32.98C360.51,-29.22 378.53,-25.24 394.69,-21.67"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="395.49,-25.08 404.5,-19.5 393.98,-18.24 395.49,-25.08"/>
|
||||
</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/size.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="543,-82.5 543,-101.5 629,-101.5 629,-82.5 543,-82.5"/>
|
||||
<text text-anchor="middle" x="586" y="-89.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node3->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M506.18,-92C515.04,-92 524.16,-92 532.91,-92"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="532.98,-95.5 542.98,-92 532.98,-88.5 532.98,-95.5"/>
|
||||
<path fill="none" stroke="midnightblue" d="M354.49,-15.5C362.86,-15.5 371.31,-15.5 379.53,-15.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="379.77,-19 389.77,-15.5 379.77,-12 379.77,-19"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 7.9 KiB |
@@ -1,21 +1,21 @@
|
||||
<?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::LowestCommonAncestor::LowestCommonAncestor Pages: 1 -->
|
||||
<svg width="637pt" height="116pt"
|
||||
viewBox="0.00 0.00 637.00 115.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 111.5)">
|
||||
<svg width="513pt" height="39pt"
|
||||
viewBox="0.00 0.00 513.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>graph::LowestCommonAncestor::LowestCommonAncestor</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-111.5 633,-111.5 633,4 -4,4"/>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-35 509,-35 509,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title="Stores the tree and precomputs "up lifts".">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-33 0,-63 159,-63 159,-33 0,-33"/>
|
||||
<text text-anchor="start" x="8" y="-51" font-family="Helvetica,sans-Serif" font-size="10.00">graph::LowestCommonAncestor</text>
|
||||
<text text-anchor="middle" x="79.5" y="-40" font-family="Helvetica,sans-Serif" font-size="10.00">::LowestCommonAncestor</text>
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-0.5 0,-30.5 159,-30.5 159,-0.5 0,-0.5"/>
|
||||
<text text-anchor="start" x="8" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">graph::LowestCommonAncestor</text>
|
||||
<text text-anchor="middle" x="79.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::LowestCommonAncestor</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
@@ -23,78 +23,33 @@
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a xlink:href="../../d9/d23/classgraph_1_1_lowest_common_ancestor.html#a42589cc39d6bbff6c997152f1b96e356" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="195,-33 195,-63 354,-63 354,-33 195,-33"/>
|
||||
<text text-anchor="start" x="203" y="-51" font-family="Helvetica,sans-Serif" font-size="10.00">graph::LowestCommonAncestor</text>
|
||||
<text text-anchor="middle" x="274.5" y="-40" font-family="Helvetica,sans-Serif" font-size="10.00">::populate_up</text>
|
||||
<polygon fill="white" stroke="black" points="195,-0.5 195,-30.5 354,-30.5 354,-0.5 195,-0.5"/>
|
||||
<text text-anchor="start" x="203" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">graph::LowestCommonAncestor</text>
|
||||
<text text-anchor="middle" x="274.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::populate_up</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M159,-48C167.48,-48 176.14,-48 184.73,-48"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="184.76,-51.5 194.76,-48 184.76,-44.5 184.76,-51.5"/>
|
||||
<path fill="none" stroke="midnightblue" d="M159,-15.5C167.48,-15.5 176.14,-15.5 184.73,-15.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="184.76,-19 194.76,-15.5 184.76,-12 184.76,-19"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../dc/d61/classgraph_1_1_graph.html#a8930d1470d132b19e430d1c71f94c904" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="391,-77 391,-107 506,-107 506,-77 391,-77"/>
|
||||
<text text-anchor="start" x="399" y="-95" font-family="Helvetica,sans-Serif" font-size="10.00">graph::Graph::number</text>
|
||||
<text text-anchor="middle" x="448.5" y="-84" font-family="Helvetica,sans-Serif" font-size="10.00">_of_vertices</text>
|
||||
<polygon fill="white" stroke="black" points="390,-0.5 390,-30.5 505,-30.5 505,-0.5 390,-0.5"/>
|
||||
<text text-anchor="start" x="398" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">graph::Graph::number</text>
|
||||
<text text-anchor="middle" x="447.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">_of_vertices</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node2->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M334.21,-63.02C349.22,-66.86 365.47,-71.01 380.84,-74.95"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="380.24,-78.41 390.8,-77.49 381.98,-71.63 380.24,-78.41"/>
|
||||
</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/push_back.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="390,-38.5 390,-57.5 507,-57.5 507,-38.5 390,-38.5"/>
|
||||
<text text-anchor="middle" x="448.5" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node5 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node2->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M354.2,-48C362.75,-48 371.4,-48 379.81,-48"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="379.92,-51.5 389.92,-48 379.92,-44.5 379.92,-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/resize.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="401,-0.5 401,-19.5 496,-19.5 496,-0.5 401,-0.5"/>
|
||||
<text text-anchor="middle" x="448.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::resize</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node6 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node2->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M343.48,-32.98C360.51,-29.22 378.53,-25.24 394.69,-21.67"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="395.49,-25.08 404.5,-19.5 393.98,-18.24 395.49,-25.08"/>
|
||||
</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/size.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="543,-82.5 543,-101.5 629,-101.5 629,-82.5 543,-82.5"/>
|
||||
<text text-anchor="middle" x="586" y="-89.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node3->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M506.18,-92C515.04,-92 524.16,-92 532.91,-92"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="532.98,-95.5 542.98,-92 532.98,-88.5 532.98,-95.5"/>
|
||||
<path fill="none" stroke="midnightblue" d="M354.49,-15.5C362.86,-15.5 371.31,-15.5 379.53,-15.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="379.77,-19 389.77,-15.5 379.77,-12 379.77,-19"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 5.0 KiB After Width: | Height: | Size: 2.9 KiB |
@@ -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++: probability/poisson_dist.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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d24/poisson__dist_8cpp.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -92,12 +92,11 @@ $(document).ready(function(){initNavTree('d9/d24/poisson__dist_8cpp.html','../..
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#func-members">Functions</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">poisson_dist.cpp File Reference</div> </div>
|
||||
<div class="headertitle"><div class="title">poisson_dist.cpp File Reference</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p><a href="https://en.wikipedia.org/wiki/Poisson_distribution">Poisson statistics</a>
|
||||
<p><a href="https://en.wikipedia.org/wiki/Poisson_distribution" target="_blank">Poisson statistics</a>
|
||||
<a href="#details">More...</a></p>
|
||||
<div class="textblock"><code>#include <cmath></code><br />
|
||||
<code>#include <iostream></code><br />
|
||||
@@ -108,7 +107,7 @@ Include dependency graph for poisson_dist.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:ac217ab9a06291f360d816700a6958ca8"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d24/poisson__dist_8cpp.html#ac217ab9a06291f360d816700a6958ca8">poisson_rate</a> (double events, double timeframe)</td></tr>
|
||||
<tr class="separator:ac217ab9a06291f360d816700a6958ca8"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
@@ -124,10 +123,10 @@ Functions</h2></td></tr>
|
||||
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p><a href="https://en.wikipedia.org/wiki/Poisson_distribution">Poisson statistics</a> </p>
|
||||
<p>The Poisson distribution counts how many events occur over a set time interval. </p>
|
||||
<div class="textblock"><p ><a href="https://en.wikipedia.org/wiki/Poisson_distribution" target="_blank">Poisson statistics</a> </p>
|
||||
<p >The Poisson distribution counts how many events occur over a set time interval. </p>
|
||||
</div><h2 class="groupheader">Function Documentation</h2>
|
||||
<a id="a63ffd347e75d5ed7a518cbcfbfeec71a"></a>
|
||||
<a id="a63ffd347e75d5ed7a518cbcfbfeec71a" name="a63ffd347e75d5ed7a518cbcfbfeec71a"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a63ffd347e75d5ed7a518cbcfbfeec71a">◆ </a></span>fact()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -142,22 +141,22 @@ Functions</h2></td></tr>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Compute factorial of a given number </p>
|
||||
<div class="fragment"><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>  {</div>
|
||||
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>  <span class="keywordtype">double</span> x_fact = x;</div>
|
||||
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = x - 1; i > 0; i--) {</div>
|
||||
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>  x_fact *= i;</div>
|
||||
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>  }</div>
|
||||
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>  </div>
|
||||
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>  <span class="keywordflow">if</span> (x_fact <= 0) {</div>
|
||||
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>  x_fact = 1;</div>
|
||||
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>  }</div>
|
||||
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>  <span class="keywordflow">return</span> x_fact;</div>
|
||||
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> }</div>
|
||||
<p >Compute factorial of a given number </p>
|
||||
<div class="fragment"><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> <span class="keywordtype">double</span> x_fact = x;</div>
|
||||
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = x - 1; i > 0; i--) {</div>
|
||||
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> x_fact *= i;</div>
|
||||
<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> </div>
|
||||
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <span class="keywordflow">if</span> (x_fact <= 0) {</div>
|
||||
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> x_fact = 1;</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">return</span> x_fact;</div>
|
||||
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span>}</div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
|
||||
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">◆ </a></span>main()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -172,22 +171,22 @@ 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>  {</div>
|
||||
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  <span class="keywordtype">double</span> rate, expected;</div>
|
||||
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  rate = <a class="code" href="../../d9/d24/poisson__dist_8cpp.html#ac217ab9a06291f360d816700a6958ca8">poisson_rate</a>(3, 1);</div>
|
||||
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Poisson rate : "</span> << rate << <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>  </div>
|
||||
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  expected = <a class="code" href="../../d9/d24/poisson__dist_8cpp.html#ad0aa718023ce802dd5899f0e03a7ac71">poisson_expected</a>(rate, 2);</div>
|
||||
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Poisson expected : "</span> << expected << <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="l00072"></a><span class="lineno"> 72</span>  </div>
|
||||
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Poisson 0 successes : "</span> << <a class="code" href="../../d9/d24/poisson__dist_8cpp.html#a69a136b32707bdc7950fb9057b5fa1e1">poisson_x_successes</a>(expected, 0)</div>
|
||||
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Poisson 0-8 successes : "</span></div>
|
||||
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  << <a class="code" href="../../d9/d24/poisson__dist_8cpp.html#ad9c9e74079278ca10e3b97a8d5391c9a">poisson_range_successes</a>(expected, 0, 8) << <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>  </div>
|
||||
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> }</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="keywordtype">double</span> rate, expected;</div>
|
||||
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> rate = <a class="code hl_function" href="../../d9/d24/poisson__dist_8cpp.html#ac217ab9a06291f360d816700a6958ca8">poisson_rate</a>(3, 1);</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> << <span class="stringliteral">"Poisson rate : "</span> << rate << <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> expected = <a class="code hl_function" href="../../d9/d24/poisson__dist_8cpp.html#ad0aa718023ce802dd5899f0e03a7ac71">poisson_expected</a>(rate, 2);</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_ostream.html">std::cout</a> << <span class="stringliteral">"Poisson expected : "</span> << expected << <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="l00072" name="l00072"></a><span class="lineno"> 72</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/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Poisson 0 successes : "</span> << <a class="code hl_function" href="../../d9/d24/poisson__dist_8cpp.html#a69a136b32707bdc7950fb9057b5fa1e1">poisson_x_successes</a>(expected, 0)</div>
|
||||
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> << <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> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Poisson 0-8 successes : "</span></div>
|
||||
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> << <a class="code hl_function" href="../../d9/d24/poisson__dist_8cpp.html#ad9c9e74079278ca10e3b97a8d5391c9a">poisson_range_successes</a>(expected, 0, 8) << <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="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</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="apoisson__dist_8cpp_html_a69a136b32707bdc7950fb9057b5fa1e1"><div class="ttname"><a href="../../d9/d24/poisson__dist_8cpp.html#a69a136b32707bdc7950fb9057b5fa1e1">poisson_x_successes</a></div><div class="ttdeci">double poisson_x_successes(double expected, double x)</div><div class="ttdef"><b>Definition:</b> poisson_dist.cpp:46</div></div>
|
||||
@@ -203,7 +202,7 @@ Here is the call graph for this function:</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ad0aa718023ce802dd5899f0e03a7ac71"></a>
|
||||
<a id="ad0aa718023ce802dd5899f0e03a7ac71" name="ad0aa718023ce802dd5899f0e03a7ac71"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ad0aa718023ce802dd5899f0e03a7ac71">◆ </a></span>poisson_expected()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -228,13 +227,13 @@ Here is the call graph for this function:</div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>calculate the expected value over a time e.g rate of 2.5 over 10 mins = 2.5 x 10 = 25 </p>
|
||||
<div class="fragment"><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> { <span class="keywordflow">return</span> rate * <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/time.html">time</a>; }</div>
|
||||
<p >calculate the expected value over a time e.g rate of 2.5 over 10 mins = 2.5 x 10 = 25 </p>
|
||||
<div class="fragment"><div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span>{ <span class="keywordflow">return</span> rate * <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/time.html">time</a>; }</div>
|
||||
<div class="ttc" id="atime_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/chrono/c/time.html">std::time</a></div><div class="ttdeci">T time(T... args)</div></div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
<a id="ad9c9e74079278ca10e3b97a8d5391c9a"></a>
|
||||
<a id="ad9c9e74079278ca10e3b97a8d5391c9a" name="ad9c9e74079278ca10e3b97a8d5391c9a"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ad9c9e74079278ca10e3b97a8d5391c9a">◆ </a></span>poisson_range_successes()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -265,16 +264,16 @@ Here is the call graph for this function:</div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>probability of a success in range for Poisson dist (inclusive, inclusive) </p><p class="formulaDsp">
|
||||
<p >probability of a success in range for Poisson dist (inclusive, inclusive) </p><p class="formulaDsp">
|
||||
\[P = \sum_i p(\mu,i)\]
|
||||
</p>
|
||||
<div class="fragment"><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  {</div>
|
||||
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  <span class="keywordtype">double</span> probability = 0;</div>
|
||||
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = lower; i <= upper; i++) {</div>
|
||||
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  probability += <a class="code" href="../../d9/d24/poisson__dist_8cpp.html#a69a136b32707bdc7950fb9057b5fa1e1">poisson_x_successes</a>(expected, i);</div>
|
||||
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  }</div>
|
||||
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  <span class="keywordflow">return</span> probability;</div>
|
||||
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> }</div>
|
||||
<div class="fragment"><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> <span class="keywordtype">double</span> probability = 0;</div>
|
||||
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = lower; i <= upper; i++) {</div>
|
||||
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> probability += <a class="code hl_function" href="../../d9/d24/poisson__dist_8cpp.html#a69a136b32707bdc7950fb9057b5fa1e1">poisson_x_successes</a>(expected, i);</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> <span class="keywordflow">return</span> probability;</div>
|
||||
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span>}</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -284,7 +283,7 @@ Here is the call graph for this function:</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ac217ab9a06291f360d816700a6958ca8"></a>
|
||||
<a id="ac217ab9a06291f360d816700a6958ca8" name="ac217ab9a06291f360d816700a6958ca8"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ac217ab9a06291f360d816700a6958ca8">◆ </a></span>poisson_rate()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -309,16 +308,16 @@ Here is the call graph for this function:</div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>poisson rate:<br />
|
||||
<p >poisson rate:<br />
|
||||
calculate the events per unit time<br />
|
||||
e.g 5 dollars every 2 mins = 5 / 2 = 2.5 </p>
|
||||
<div class="fragment"><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>  {</div>
|
||||
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>  <span class="keywordflow">return</span> events / timeframe;</div>
|
||||
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> }</div>
|
||||
<div class="fragment"><div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> {</div>
|
||||
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <span class="keywordflow">return</span> events / timeframe;</div>
|
||||
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span>}</div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
<a id="a69a136b32707bdc7950fb9057b5fa1e1"></a>
|
||||
<a id="a69a136b32707bdc7950fb9057b5fa1e1" name="a69a136b32707bdc7950fb9057b5fa1e1"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a69a136b32707bdc7950fb9057b5fa1e1">◆ </a></span>poisson_x_successes()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -343,12 +342,12 @@ e.g 5 dollars every 2 mins = 5 / 2 = 2.5 </p>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Find the probability of x successes in a Poisson dist. </p><p class="formulaDsp">
|
||||
<p >Find the probability of x successes in a Poisson dist. </p><p class="formulaDsp">
|
||||
\[p(\mu,x) = \frac{\mu^x e^{-\mu}}{x!}\]
|
||||
</p>
|
||||
<div class="fragment"><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  {</div>
|
||||
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  <span class="keywordflow">return</span> (<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/pow.html">std::pow</a>(expected, x) * <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/exp.html">std::exp</a>(-expected)) / <a class="code" href="../../d9/d24/poisson__dist_8cpp.html#a63ffd347e75d5ed7a518cbcfbfeec71a">fact</a>(x);</div>
|
||||
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> }</div>
|
||||
<div class="fragment"><div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> {</div>
|
||||
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <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>(expected, x) * <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/exp.html">std::exp</a>(-expected)) / <a class="code hl_function" href="../../d9/d24/poisson__dist_8cpp.html#a63ffd347e75d5ed7a518cbcfbfeec71a">fact</a>(x);</div>
|
||||
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span>}</div>
|
||||
<div class="ttc" id="aexp_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/numeric/math/exp.html">std::exp</a></div><div class="ttdeci">T exp(T... args)</div></div>
|
||||
<div class="ttc" id="apoisson__dist_8cpp_html_a63ffd347e75d5ed7a518cbcfbfeec71a"><div class="ttname"><a href="../../d9/d24/poisson__dist_8cpp.html#a63ffd347e75d5ed7a518cbcfbfeec71a">fact</a></div><div class="ttdeci">double fact(double x)</div><div class="ttdef"><b>Definition:</b> poisson_dist.cpp:30</div></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>
|
||||
@@ -367,7 +366,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_82e494173a87936756866de2fa774307.html">probability</a></li><li class="navelem"><a class="el" href="../../d9/d24/poisson__dist_8cpp.html">poisson_dist.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>
|
||||
|
||||
@@ -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: poisson_x_successes Pages: 1 -->
|
||||
<svg width="212pt" height="104pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 3.1 KiB |
@@ -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: poisson_range_successes Pages: 1 -->
|
||||
<svg width="382pt" height="104pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 3.8 KiB |
@@ -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="456pt" height="180pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 7.1 KiB After Width: | Height: | Size: 7.1 KiB |
@@ -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++: list_array 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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d27/namespacelist__array.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -90,22 +90,21 @@ $(document).ready(function(){initNavTree('d9/d27/namespacelist__array.html','../
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">list_array Namespace Reference</div> </div>
|
||||
<div class="headertitle"><div class="title">list_array Namespace Reference</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>Functions for <a href="https://en.wikipedia.org/wiki/Dynamic_array">Dynamic Array</a> algorithm.
|
||||
<p>Functions for <a href="https://en.wikipedia.org/wiki/Dynamic_array" target="_blank">Dynamic Array</a> algorithm.
|
||||
<a href="../../d9/d27/namespacelist__array.html#details">More...</a></p>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>Functions for <a href="https://en.wikipedia.org/wiki/Dynamic_array">Dynamic Array</a> algorithm. </p>
|
||||
<div class="textblock"><p >Functions for <a href="https://en.wikipedia.org/wiki/Dynamic_array" target="_blank">Dynamic Array</a> 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="../../d9/d27/namespacelist__array.html">list_array</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>
|
||||
|
||||
@@ -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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d5/d58/class_test_cases.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -90,34 +90,33 @@ $(document).ready(function(){initNavTree('d5/d58/class_test_cases.html','../../'
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">TestCases Member List</div> </div>
|
||||
<div class="headertitle"><div class="title">TestCases Member List</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>This is the complete list of members for <a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a>, including all inherited members.</p>
|
||||
<table class="directory">
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#aa3aa3d5bf666f327ee8e2d11d397b06e">log</a>(T msg)</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">private</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#aa3aa3d5bf666f327ee8e2d11d397b06e">log</a>(T msg)</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">private</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#aa3aa3d5bf666f327ee8e2d11d397b06e">log</a>(T msg)</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">private</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#aa3aa3d5bf666f327ee8e2d11d397b06e">log</a>(T msg)</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">private</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#aeabea90c02f9159e4a784bbf736e1e23">runTests</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#aeabea90c02f9159e4a784bbf736e1e23">runTests</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#aeabea90c02f9159e4a784bbf736e1e23">runTests</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#aeabea90c02f9159e4a784bbf736e1e23">runTests</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#aeabea90c02f9159e4a784bbf736e1e23">runTests</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#ac2636e8b5b9e053374c45bfcf0603008">testCase_1</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#ac2636e8b5b9e053374c45bfcf0603008">testCase_1</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#ac2636e8b5b9e053374c45bfcf0603008">testCase_1</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#ac2636e8b5b9e053374c45bfcf0603008">testCase_1</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#abae0148985f159b582a385cf399254e3">testCase_2</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#abae0148985f159b582a385cf399254e3">testCase_2</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#abae0148985f159b582a385cf399254e3">testCase_2</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#abae0148985f159b582a385cf399254e3">testCase_2</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#abae0148985f159b582a385cf399254e3">testCase_2</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#ad9f95c09931625b41e3be1f88d1e28c5">testCase_3</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#ad9f95c09931625b41e3be1f88d1e28c5">testCase_3</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#ad9f95c09931625b41e3be1f88d1e28c5">testCase_3</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html#ad9f95c09931625b41e3be1f88d1e28c5">testCase_3</a>()</td><td class="entry"><a class="el" href="../../d5/d58/class_test_cases.html">TestCases</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>
|
||||
|
||||
@@ -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/coin_change_topdown.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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d31/coin__change__topdown_8cpp.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -93,12 +93,11 @@ $(document).ready(function(){initNavTree('d9/d31/coin__change__topdown_8cpp.html
|
||||
<div class="summary">
|
||||
<a href="#namespaces">Namespaces</a> |
|
||||
<a href="#func-members">Functions</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">coin_change_topdown.cpp File Reference</div> </div>
|
||||
<div class="headertitle"><div class="title">coin_change_topdown.cpp File Reference</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p><a href="https://leetcode.com/problems/coin-change/">Minimum coins</a> change problem is a problem used to find the minimum number of coins required to completely reach a target amount.
|
||||
<p><a href="https://leetcode.com/problems/coin-change/" target="_blank">Minimum coins</a> change problem is a problem used to find the minimum number of coins required to completely reach a target amount.
|
||||
<a href="#details">More...</a></p>
|
||||
<div class="textblock"><code>#include <cassert></code><br />
|
||||
<code>#include <climits></code><br />
|
||||
@@ -111,16 +110,16 @@ Include dependency graph for coin_change_topdown.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">  </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  </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"> </td><td class="mdescRight">Dynamic Programming algorithms. <br /></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:d5/db8/namespacemincoins__topdown"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/db8/namespacemincoins__topdown.html">mincoins_topdown</a></td></tr>
|
||||
<tr class="memdesc:d5/db8/namespacemincoins__topdown"><td class="mdescLeft"> </td><td class="mdescRight">Functions for <a href="https://leetcode.com/problems/coin-change/">minimum coin exchange</a> problem. <br /></td></tr>
|
||||
<tr class="memitem:d5/db8/namespacemincoins__topdown"><td class="memItemLeft" align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/db8/namespacemincoins__topdown.html">mincoins_topdown</a></td></tr>
|
||||
<tr class="memdesc:d5/db8/namespacemincoins__topdown"><td class="mdescLeft"> </td><td class="mdescRight">Functions for <a href="https://leetcode.com/problems/coin-change/" target="_blank">minimum coin exchange</a> problem. <br /></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </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:ac816a4ae8a29c156b90377041000929a"><td class="memTemplParams" colspan="2">template<typename T > </td></tr>
|
||||
<tr class="memitem:ac816a4ae8a29c156b90377041000929a"><td class="memTemplItemLeft" align="right" valign="top">int64_t </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../d9/d31/coin__change__topdown_8cpp.html#ac816a4ae8a29c156b90377041000929a">dynamic_programming::mincoins_topdown::mincoins</a> (const T &n, const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< T > &coins, const int16_t &t, <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< T > dp)</td></tr>
|
||||
@@ -134,14 +133,14 @@ Functions</h2></td></tr>
|
||||
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p><a href="https://leetcode.com/problems/coin-change/">Minimum coins</a> change problem is a problem used to find the minimum number of coins required to completely reach a target amount. </p>
|
||||
<p>This problem can be solved using 2 methods:</p><ol type="1">
|
||||
<div class="textblock"><p ><a href="https://leetcode.com/problems/coin-change/" target="_blank">Minimum coins</a> change problem is a problem used to find the minimum number of coins required to completely reach a target amount. </p>
|
||||
<p >This problem can be solved using 2 methods:</p><ol type="1">
|
||||
<li>Top down approach</li>
|
||||
<li>Bottom up appraoch Top down approach involves a vector with all elements initialised to 0. It is based on optimal substructure and overlapping subproblems. Overall time complexity of coin change problem is O(n*t) For example: example 1:- Coins: {1,7,10} Target:15 Therfore minimum number of coins required = 3 of denomination 1,7 and 7. <dl class="section author"><dt>Author</dt><dd><a href="https://github.com/webdesignbydivyansh">Divyansh Kushwaha</a> </dd></dl>
|
||||
<li>Bottom up appraoch Top down approach involves a vector with all elements initialised to 0. It is based on optimal substructure and overlapping subproblems. Overall time complexity of coin change problem is O(n*t) For example: example 1:- Coins: {1,7,10} Target:15 Therfore minimum number of coins required = 3 of denomination 1,7 and 7. <dl class="section author"><dt>Author</dt><dd><a href="https://github.com/webdesignbydivyansh" target="_blank">Divyansh Kushwaha</a> </dd></dl>
|
||||
</li>
|
||||
</ol>
|
||||
</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">◆ </a></span>main()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -159,10 +158,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>  {</div>
|
||||
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <a class="code" href="../../d9/d31/coin__change__topdown_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>(); <span class="comment">// execute the test</span></div>
|
||||
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> }</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="../../d9/d31/coin__change__topdown_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>(); <span class="comment">// execute the test</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="acoin__change__topdown_8cpp_html_aa8dca7b867074164d5f45b0f3851269d"><div class="ttname"><a href="../../d9/d31/coin__change__topdown_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a></div><div class="ttdeci">static void test()</div><div class="ttdoc">Test implementations.</div><div class="ttdef"><b>Definition:</b> coin_change_topdown.cpp:74</div></div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
@@ -173,7 +172,7 @@ Here is the call graph for this function:</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ac816a4ae8a29c156b90377041000929a"></a>
|
||||
<a id="ac816a4ae8a29c156b90377041000929a" name="ac816a4ae8a29c156b90377041000929a"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ac816a4ae8a29c156b90377041000929a">◆ </a></span>mincoins()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -225,24 +224,24 @@ template<typename T > </div>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>minimum number of coins </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  {</div>
|
||||
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  <span class="keywordflow">if</span> (n == 0) {</div>
|
||||
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  }</div>
|
||||
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  <span class="keywordflow">if</span> (dp[n] != 0) {</div>
|
||||
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  <span class="keywordflow">return</span> dp[n];</div>
|
||||
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  }</div>
|
||||
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  <span class="keywordtype">int</span> <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa">ans</a> = INT_MAX; <span class="comment">// variable to store min coins</span></div>
|
||||
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < t; i++) {</div>
|
||||
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  <span class="keywordflow">if</span> (n - coins[i] >= 0) { <span class="comment">// if after subtracting the current</span></div>
|
||||
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  <span class="comment">// denomination is it greater than 0 or not</span></div>
|
||||
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  <span class="keywordtype">int</span> sub = <a class="code" href="../../d9/d31/coin__change__topdown_8cpp.html#ac816a4ae8a29c156b90377041000929a">mincoins</a>(n - coins[i], coins, t, dp);</div>
|
||||
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa">ans</a> = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/min.html">std::min</a>(<a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa">ans</a>, sub + 1);</div>
|
||||
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  }</div>
|
||||
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  }</div>
|
||||
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  dp[n] = <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa">ans</a>;</div>
|
||||
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  <span class="keywordflow">return</span> dp[n]; <span class="comment">// returns minimum number of coins</span></div>
|
||||
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> }</div>
|
||||
<div class="fragment"><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="keywordflow">if</span> (n == 0) {</div>
|
||||
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">return</span> 0;</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">if</span> (dp[n] != 0) {</div>
|
||||
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="keywordflow">return</span> dp[n];</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> <span class="keywordtype">int</span> <a class="code hl_function" href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa">ans</a> = INT_MAX; <span class="comment">// variable to store min coins</span></div>
|
||||
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < t; i++) {</div>
|
||||
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">if</span> (n - coins[i] >= 0) { <span class="comment">// if after subtracting the current</span></div>
|
||||
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="comment">// denomination is it greater than 0 or not</span></div>
|
||||
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keywordtype">int</span> sub = <a class="code hl_function" href="../../d9/d31/coin__change__topdown_8cpp.html#ac816a4ae8a29c156b90377041000929a">mincoins</a>(n - coins[i], coins, t, dp);</div>
|
||||
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <a class="code hl_function" href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa">ans</a> = <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/min.html">std::min</a>(<a class="code hl_function" href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa">ans</a>, sub + 1);</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="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> dp[n] = <a class="code hl_function" href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa">ans</a>;</div>
|
||||
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <span class="keywordflow">return</span> dp[n]; <span class="comment">// returns minimum number of coins</span></div>
|
||||
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span>}</div>
|
||||
<div class="ttc" id="acoin__change__topdown_8cpp_html_ac816a4ae8a29c156b90377041000929a"><div class="ttname"><a href="../../d9/d31/coin__change__topdown_8cpp.html#ac816a4ae8a29c156b90377041000929a">dynamic_programming::mincoins_topdown::mincoins</a></div><div class="ttdeci">int64_t mincoins(const T &n, const std::vector< T > &coins, const int16_t &t, std::vector< T > dp)</div><div class="ttdoc">This implementation is for finding minimum number of coins .</div><div class="ttdef"><b>Definition:</b> coin_change_topdown.cpp:47</div></div>
|
||||
<div class="ttc" id="amatrix__exponentiation_8cpp_html_ad8389ed58fd0ec66df248014775ad1fa"><div class="ttname"><a href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa">ans</a></div><div class="ttdeci">ll ans(ll n)</div><div class="ttdef"><b>Definition:</b> matrix_exponentiation.cpp:91</div></div>
|
||||
<div class="ttc" id="amin_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/algorithm/min.html">std::min</a></div><div class="ttdeci">T min(T... args)</div></div>
|
||||
@@ -255,7 +254,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">◆ </a></span>test()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -280,21 +279,21 @@ Here is the call graph for this function:</div>
|
||||
|
||||
<p>Test implementations. </p>
|
||||
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  {</div>
|
||||
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  <span class="comment">// example 1: number of coins=3 and minimum coins required=3(7,7,1)</span></div>
|
||||
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  <span class="keyword">const</span> int64_t n1 = 15;</div>
|
||||
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  <span class="keyword">const</span> int8_t t1 = 3, a1 = 0;</div>
|
||||
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nTest 1..."</span>;</div>
|
||||
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<int64_t></a> arr1{1, 7, 10};</div>
|
||||
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<int64_t></a> dp1(n1 + 1);</div>
|
||||
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <a class="code" href="../../de/d85/decimal__to__roman__numeral_8cpp.html#a88203bd297e8405160c132faa1187780">fill</a>(dp1.begin(), dp1.end(), a1);</div>
|
||||
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  assert(dynamic_programming::mincoins_topdown::mincoins(n1, arr1, t1, dp1) ==</div>
|
||||
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  3);</div>
|
||||
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Passed\n"</span>;</div>
|
||||
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> }</div>
|
||||
<div class="fragment"><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">// example 1: number of coins=3 and minimum coins required=3(7,7,1)</span></div>
|
||||
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="keyword">const</span> int64_t n1 = 15;</div>
|
||||
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keyword">const</span> int8_t t1 = 3, a1 = 0;</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/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nTest 1..."</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<int64_t></a> arr1{1, 7, 10};</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/container/vector.html">std::vector<int64_t></a> dp1(n1 + 1);</div>
|
||||
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> <a class="code hl_function" href="../../de/d85/decimal__to__roman__numeral_8cpp.html#a88203bd297e8405160c132faa1187780">fill</a>(dp1.begin(), dp1.end(), a1);</div>
|
||||
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> assert(dynamic_programming::mincoins_topdown::mincoins(n1, arr1, t1, dp1) ==</div>
|
||||
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> 3);</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> << <span class="stringliteral">"Passed\n"</span>;</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="adecimal__to__roman__numeral_8cpp_html_a88203bd297e8405160c132faa1187780"><div class="ttname"><a href="../../de/d85/decimal__to__roman__numeral_8cpp.html#a88203bd297e8405160c132faa1187780">fill</a></div><div class="ttdeci">std::string fill(char c, int n)</div><div class="ttdef"><b>Definition:</b> decimal_to_roman_numeral.cpp:15</div></div>
|
||||
<div class="ttc" id="avector_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector< int64_t ></a></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">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -310,7 +309,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="../../d9/d31/coin__change__topdown_8cpp.html">coin_change_topdown.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>
|
||||
|
||||
@@ -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="170pt" height="104pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 3.0 KiB |
@@ -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::mincoins_topdown::mincoins Pages: 1 -->
|
||||
<svg width="214pt" height="76pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 3.0 KiB |
@@ -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="244pt" height="104pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 3.8 KiB |
@@ -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/recursive_bubble_sort.cpp Pages: 1 -->
|
||||
<svg width="327pt" height="95pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 4.3 KiB |
@@ -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++: range_queries::heavy_light_decomposition::SG< X > Class Template 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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -95,8 +95,7 @@ $(document).ready(function(){initNavTree('d9/d35/classrange__queries_1_1heavy__l
|
||||
<a href="#pri-attribs">Private Attributes</a> |
|
||||
<a href="#friends">Friends</a> |
|
||||
<a href="../../d3/de4/classrange__queries_1_1heavy__light__decomposition_1_1_s_g-members.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">range_queries::heavy_light_decomposition::SG< X > Class Template Reference</div> </div>
|
||||
<div class="headertitle"><div class="title">range_queries::heavy_light_decomposition::SG< X > Class Template Reference</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
@@ -108,14 +107,8 @@ Inheritance diagram for range_queries::heavy_light_decomposition::SG< X >:
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d1/de6/classrange__queries_1_1heavy__light__decomposition_1_1_s_g__inherit__graph.svg" width="162" height="171"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
<center><span class="legend">[<a target="top" href="../../graph_legend.html">legend</a>]</span></center></div>
|
||||
<div class="dynheader">
|
||||
Collaboration diagram for range_queries::heavy_light_decomposition::SG< X >:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d1/d67/classrange__queries_1_1heavy__light__decomposition_1_1_s_g__coll__graph.svg" width="162" height="156"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
<center><span class="legend">[<a target="top" href="../../graph_legend.html">legend</a>]</span></center></div>
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-methods" name="pri-methods"></a>
|
||||
Private Member Functions</h2></td></tr>
|
||||
<tr class="memitem:a41c733f5f5e262b308f7cb95c88c1e74"><td class="memItemLeft" align="right" valign="top">X </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74">combine</a> (X lhs, X rhs)</td></tr>
|
||||
<tr class="memdesc:a41c733f5f5e262b308f7cb95c88c1e74"><td class="mdescLeft"> </td><td class="mdescRight">Function that specifies the type of operation involved when segments are combined. <a href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74">More...</a><br /></td></tr>
|
||||
@@ -133,32 +126,30 @@ Private Member Functions</h2></td></tr>
|
||||
<tr class="memdesc:ad3b942be27a1b0fe3cff6cb6edf01294"><td class="mdescLeft"> </td><td class="mdescRight">Set the initialization for the query data type, based on requirement. <a href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#ad3b942be27a1b0fe3cff6cb6edf01294">More...</a><br /></td></tr>
|
||||
<tr class="separator:ad3b942be27a1b0fe3cff6cb6edf01294"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-attribs" name="pri-attribs"></a>
|
||||
Private Attributes</h2></td></tr>
|
||||
<tr class="memitem:afbf8a9cb9449d5ca844f4e141a801e6a"><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>< X > </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afbf8a9cb9449d5ca844f4e141a801e6a">s_tree</a></td></tr>
|
||||
<tr class="memdesc:afbf8a9cb9449d5ca844f4e141a801e6a"><td class="mdescLeft"> </td><td class="mdescRight">Everything here is private, and can only be accessed through the methods, in the derived class (<a class="el" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html" title="The Heavy-Light Decomposition class.">HLD</a>) <a href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afbf8a9cb9449d5ca844f4e141a801e6a">More...</a><br /></td></tr>
|
||||
<tr class="separator:afbf8a9cb9449d5ca844f4e141a801e6a"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ac6d912bbfafa3a7509f66bbc1729ca25"><td class="memItemLeft" align="right" valign="top"><a id="ac6d912bbfafa3a7509f66bbc1729ca25"></a>
|
||||
int </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#ac6d912bbfafa3a7509f66bbc1729ca25">s_size</a></td></tr>
|
||||
<tr class="memitem:ac6d912bbfafa3a7509f66bbc1729ca25"><td class="memItemLeft" align="right" valign="top"><a id="ac6d912bbfafa3a7509f66bbc1729ca25" name="ac6d912bbfafa3a7509f66bbc1729ca25"></a>
|
||||
int </td><td class="memItemRight" valign="bottom"><b>s_size</b></td></tr>
|
||||
<tr class="memdesc:ac6d912bbfafa3a7509f66bbc1729ca25"><td class="mdescLeft"> </td><td class="mdescRight">number of leaves in the segment tree <br /></td></tr>
|
||||
<tr class="separator:ac6d912bbfafa3a7509f66bbc1729ca25"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:aa7f93971a9f891e0bbb7023081f379d5"><td class="memItemLeft" align="right" valign="top"><a id="aa7f93971a9f891e0bbb7023081f379d5"></a>
|
||||
X </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#aa7f93971a9f891e0bbb7023081f379d5">sret_init</a> = 0</td></tr>
|
||||
<tr class="memitem:aa7f93971a9f891e0bbb7023081f379d5"><td class="memItemLeft" align="right" valign="top"><a id="aa7f93971a9f891e0bbb7023081f379d5" name="aa7f93971a9f891e0bbb7023081f379d5"></a>
|
||||
X </td><td class="memItemRight" valign="bottom"><b>sret_init</b> = 0</td></tr>
|
||||
<tr class="memdesc:aa7f93971a9f891e0bbb7023081f379d5"><td class="mdescLeft"> </td><td class="mdescRight">inital query return value <br /></td></tr>
|
||||
<tr class="separator:aa7f93971a9f891e0bbb7023081f379d5"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="friends" name="friends"></a>
|
||||
Friends</h2></td></tr>
|
||||
<tr class="memitem:afcdadbdea1e2391cebbb17d2c1ae2f0b"><td class="memTemplParams" colspan="2"><a id="afcdadbdea1e2391cebbb17d2c1ae2f0b"></a>
|
||||
<tr class="memitem:afcdadbdea1e2391cebbb17d2c1ae2f0b"><td class="memTemplParams" colspan="2"><a id="afcdadbdea1e2391cebbb17d2c1ae2f0b" name="afcdadbdea1e2391cebbb17d2c1ae2f0b"></a>
|
||||
template<typename T > </td></tr>
|
||||
<tr class="memitem:afcdadbdea1e2391cebbb17d2c1ae2f0b"><td class="memTemplItemLeft" align="right" valign="top">class </td><td class="memTemplItemRight" valign="bottom"><b>HLD</b></td></tr>
|
||||
<tr class="separator:afcdadbdea1e2391cebbb17d2c1ae2f0b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><h3>template<typename X><br />
|
||||
class range_queries::heavy_light_decomposition::SG< X ></h3>
|
||||
|
||||
<p>Segment <a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html" title="A Basic Tree, which supports binary lifting.">Tree</a>, to store heavy chains. </p>
|
||||
<div class="textblock"><div class="compoundTemplParams">template<typename X><br />
|
||||
class range_queries::heavy_light_decomposition::SG< X ></div><p >Segment <a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html" title="A Basic Tree, which supports binary lifting.">Tree</a>, to store heavy chains. </p>
|
||||
<dl class="tparams"><dt>Template Parameters</dt><dd>
|
||||
<table class="tparams">
|
||||
<tr><td class="paramname">the</td><td>data type of the values stored in the tree nodes </td></tr>
|
||||
@@ -166,7 +157,7 @@ class range_queries::heavy_light_decomposition::SG< X ></h3>
|
||||
</dd>
|
||||
</dl>
|
||||
</div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
||||
<a id="afba5c1225ba04c0025c7786c09ff28f1"></a>
|
||||
<a id="afba5c1225ba04c0025c7786c09ff28f1" name="afba5c1225ba04c0025c7786c09ff28f1"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#afba5c1225ba04c0025c7786c09ff28f1">◆ </a></span>SG()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -200,18 +191,17 @@ template<typename X > </div>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>  {</div>
|
||||
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>  <a class="code" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#ac6d912bbfafa3a7509f66bbc1729ca25">s_size</a> = size;</div>
|
||||
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>  <a class="code" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afbf8a9cb9449d5ca844f4e141a801e6a">s_tree</a>.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/assign.html">assign</a>(2 * <a class="code" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#ac6d912bbfafa3a7509f66bbc1729ca25">s_size</a>, 0ll);</div>
|
||||
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>  }</div>
|
||||
<div class="ttc" id="aassign_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector/assign.html">std::vector::assign</a></div><div class="ttdeci">T assign(T... args)</div></div>
|
||||
<div class="fragment"><div class="line"><a id="l00282" name="l00282"></a><span class="lineno"> 282</span> {</div>
|
||||
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"> 283</span> <a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#ac6d912bbfafa3a7509f66bbc1729ca25">s_size</a> = size;</div>
|
||||
<div class="line"><a id="l00284" name="l00284"></a><span class="lineno"> 284</span> <a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afbf8a9cb9449d5ca844f4e141a801e6a">s_tree</a>.assign(2 * <a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#ac6d912bbfafa3a7509f66bbc1729ca25">s_size</a>, 0ll);</div>
|
||||
<div class="line"><a id="l00285" name="l00285"></a><span class="lineno"> 285</span> }</div>
|
||||
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_s_g_html_ac6d912bbfafa3a7509f66bbc1729ca25"><div class="ttname"><a href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#ac6d912bbfafa3a7509f66bbc1729ca25">range_queries::heavy_light_decomposition::SG::s_size</a></div><div class="ttdeci">int s_size</div><div class="ttdoc">number of leaves in the segment tree</div><div class="ttdef"><b>Definition:</b> heavy_light_decomposition.cpp:263</div></div>
|
||||
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_s_g_html_afbf8a9cb9449d5ca844f4e141a801e6a"><div class="ttname"><a href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afbf8a9cb9449d5ca844f4e141a801e6a">range_queries::heavy_light_decomposition::SG::s_tree</a></div><div class="ttdeci">std::vector< X > s_tree</div><div class="ttdoc">Everything here is private, and can only be accessed through the methods, in the derived class (HLD)</div><div class="ttdef"><b>Definition:</b> heavy_light_decomposition.cpp:262</div></div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
<h2 class="groupheader">Member Function Documentation</h2>
|
||||
<a id="a41c733f5f5e262b308f7cb95c88c1e74"></a>
|
||||
<a id="a41c733f5f5e262b308f7cb95c88c1e74" name="a41c733f5f5e262b308f7cb95c88c1e74"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a41c733f5f5e262b308f7cb95c88c1e74">◆ </a></span>combine()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -256,11 +246,11 @@ template<typename X > </div>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>the combined result </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00274"></a><span class="lineno"> 274</span> { <span class="keywordflow">return</span> lhs + rhs; }</div>
|
||||
<div class="fragment"><div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span>{ <span class="keywordflow">return</span> lhs + rhs; }</div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
<a id="a1fda852e6e522707fd97f61cdb0a2591"></a>
|
||||
<a id="a1fda852e6e522707fd97f61cdb0a2591" name="a1fda852e6e522707fd97f61cdb0a2591"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a1fda852e6e522707fd97f61cdb0a2591">◆ </a></span>query()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -305,18 +295,18 @@ template<typename X > </div>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>  {</div>
|
||||
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>  X lhs = <a class="code" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#aa7f93971a9f891e0bbb7023081f379d5">sret_init</a>, rhs = <a class="code" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#aa7f93971a9f891e0bbb7023081f379d5">sret_init</a>;</div>
|
||||
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>  <span class="keywordflow">for</span> (l += <a class="code" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#ac6d912bbfafa3a7509f66bbc1729ca25">s_size</a>, r += <a class="code" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#ac6d912bbfafa3a7509f66bbc1729ca25">s_size</a> + 1; l < r; l >>= 1, r >>= 1) {</div>
|
||||
<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>  <span class="keywordflow">if</span> (l & 1) {</div>
|
||||
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>  lhs = <a class="code" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74">combine</a>(lhs, <a class="code" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afbf8a9cb9449d5ca844f4e141a801e6a">s_tree</a>[l++]);</div>
|
||||
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>  }</div>
|
||||
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>  <span class="keywordflow">if</span> (r & 1) {</div>
|
||||
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>  rhs = <a class="code" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74">combine</a>(<a class="code" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afbf8a9cb9449d5ca844f4e141a801e6a">s_tree</a>[--r], rhs);</div>
|
||||
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>  }</div>
|
||||
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>  }</div>
|
||||
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>  <span class="keywordflow">return</span> <a class="code" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74">combine</a>(lhs, rhs);</div>
|
||||
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>  }</div>
|
||||
<div class="fragment"><div class="line"><a id="l00305" name="l00305"></a><span class="lineno"> 305</span> {</div>
|
||||
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"> 306</span> X lhs = <a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#aa7f93971a9f891e0bbb7023081f379d5">sret_init</a>, rhs = <a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#aa7f93971a9f891e0bbb7023081f379d5">sret_init</a>;</div>
|
||||
<div class="line"><a id="l00307" name="l00307"></a><span class="lineno"> 307</span> <span class="keywordflow">for</span> (l += <a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#ac6d912bbfafa3a7509f66bbc1729ca25">s_size</a>, r += <a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#ac6d912bbfafa3a7509f66bbc1729ca25">s_size</a> + 1; l < r; l >>= 1, r >>= 1) {</div>
|
||||
<div class="line"><a id="l00308" name="l00308"></a><span class="lineno"> 308</span> <span class="keywordflow">if</span> (l & 1) {</div>
|
||||
<div class="line"><a id="l00309" name="l00309"></a><span class="lineno"> 309</span> lhs = <a class="code hl_function" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74">combine</a>(lhs, <a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afbf8a9cb9449d5ca844f4e141a801e6a">s_tree</a>[l++]);</div>
|
||||
<div class="line"><a id="l00310" name="l00310"></a><span class="lineno"> 310</span> }</div>
|
||||
<div class="line"><a id="l00311" name="l00311"></a><span class="lineno"> 311</span> <span class="keywordflow">if</span> (r & 1) {</div>
|
||||
<div class="line"><a id="l00312" name="l00312"></a><span class="lineno"> 312</span> rhs = <a class="code hl_function" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74">combine</a>(<a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afbf8a9cb9449d5ca844f4e141a801e6a">s_tree</a>[--r], rhs);</div>
|
||||
<div class="line"><a id="l00313" name="l00313"></a><span class="lineno"> 313</span> }</div>
|
||||
<div class="line"><a id="l00314" name="l00314"></a><span class="lineno"> 314</span> }</div>
|
||||
<div class="line"><a id="l00315" name="l00315"></a><span class="lineno"> 315</span> <span class="keywordflow">return</span> <a class="code hl_function" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74">combine</a>(lhs, rhs);</div>
|
||||
<div class="line"><a id="l00316" name="l00316"></a><span class="lineno"> 316</span> }</div>
|
||||
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_s_g_html_a41c733f5f5e262b308f7cb95c88c1e74"><div class="ttname"><a href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74">range_queries::heavy_light_decomposition::SG::combine</a></div><div class="ttdeci">X combine(X lhs, X rhs)</div><div class="ttdoc">Function that specifies the type of operation involved when segments are combined.</div><div class="ttdef"><b>Definition:</b> heavy_light_decomposition.cpp:274</div></div>
|
||||
<div class="ttc" id="aclassrange__queries_1_1heavy__light__decomposition_1_1_s_g_html_aa7f93971a9f891e0bbb7023081f379d5"><div class="ttname"><a href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#aa7f93971a9f891e0bbb7023081f379d5">range_queries::heavy_light_decomposition::SG::sret_init</a></div><div class="ttdeci">X sret_init</div><div class="ttdoc">inital query return value</div><div class="ttdef"><b>Definition:</b> heavy_light_decomposition.cpp:264</div></div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
@@ -328,7 +318,7 @@ Here is the call graph for this function:</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ad3b942be27a1b0fe3cff6cb6edf01294"></a>
|
||||
<a id="ad3b942be27a1b0fe3cff6cb6edf01294" name="ad3b942be27a1b0fe3cff6cb6edf01294"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ad3b942be27a1b0fe3cff6cb6edf01294">◆ </a></span>set_sret_init()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -355,7 +345,7 @@ template<typename X > </div>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Set the initialization for the query data type, based on requirement. </p>
|
||||
<p>Change the sret_init, based on requirement:</p><ul>
|
||||
<p >Change the sret_init, based on requirement:</p><ul>
|
||||
<li>Sum Query: 0 (Default)</li>
|
||||
<li><a class="el" href="../../d7/d47/namespace_x_o_r.html" title="Functions for XOR cipher algorithm.">XOR</a> Query: 0 (Default)</li>
|
||||
<li>Min Query: Infinity</li>
|
||||
@@ -367,11 +357,11 @@ template<typename X > </div>
|
||||
</dl>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="fragment"><div class="line"><a name="l00329"></a><span class="lineno"> 329</span> { <a class="code" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#aa7f93971a9f891e0bbb7023081f379d5">sret_init</a> = new_sret_init; }</div>
|
||||
<div class="fragment"><div class="line"><a id="l00329" name="l00329"></a><span class="lineno"> 329</span>{ <a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#aa7f93971a9f891e0bbb7023081f379d5">sret_init</a> = new_sret_init; }</div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
<a id="a3c75bf5770790f8eba8cc92227b5400c"></a>
|
||||
<a id="a3c75bf5770790f8eba8cc92227b5400c" name="a3c75bf5770790f8eba8cc92227b5400c"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a3c75bf5770790f8eba8cc92227b5400c">◆ </a></span>update()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -416,16 +406,16 @@ template<typename X > </div>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>  {</div>
|
||||
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  <span class="keywordflow">for</span> (p += <a class="code" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#ac6d912bbfafa3a7509f66bbc1729ca25">s_size</a>; p > 0; p >>= 1) {</div>
|
||||
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  <a class="code" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afbf8a9cb9449d5ca844f4e141a801e6a">s_tree</a>[p] += v;</div>
|
||||
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  }</div>
|
||||
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>  }</div>
|
||||
<div class="fragment"><div class="line"><a id="l00293" name="l00293"></a><span class="lineno"> 293</span> {</div>
|
||||
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno"> 294</span> <span class="keywordflow">for</span> (p += <a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#ac6d912bbfafa3a7509f66bbc1729ca25">s_size</a>; p > 0; p >>= 1) {</div>
|
||||
<div class="line"><a id="l00295" name="l00295"></a><span class="lineno"> 295</span> <a class="code hl_variable" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afbf8a9cb9449d5ca844f4e141a801e6a">s_tree</a>[p] += v;</div>
|
||||
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"> 296</span> }</div>
|
||||
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"> 297</span> }</div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
<h2 class="groupheader">Member Data Documentation</h2>
|
||||
<a id="afbf8a9cb9449d5ca844f4e141a801e6a"></a>
|
||||
<a id="afbf8a9cb9449d5ca844f4e141a801e6a" name="afbf8a9cb9449d5ca844f4e141a801e6a"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#afbf8a9cb9449d5ca844f4e141a801e6a">◆ </a></span>s_tree</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -448,7 +438,7 @@ template<typename X > </div>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Everything here is private, and can only be accessed through the methods, in the derived class (<a class="el" href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html" title="The Heavy-Light Decomposition class.">HLD</a>) </p>
|
||||
<p>the segment tree, stored as a vector </p>
|
||||
<p >the segment tree, stored as a vector </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -461,7 +451,7 @@ template<typename X > </div>
|
||||
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="../../dd/d69/namespacerange__queries.html">range_queries</a></li><li class="navelem"><b>heavy_light_decomposition</b></li><li class="navelem"><a class="el" href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html">SG</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>
|
||||
|
||||
@@ -5,7 +5,6 @@ var classrange__queries_1_1heavy__light__decomposition_1_1_s_g =
|
||||
[ "query", "d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a1fda852e6e522707fd97f61cdb0a2591", null ],
|
||||
[ "set_sret_init", "d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#ad3b942be27a1b0fe3cff6cb6edf01294", null ],
|
||||
[ "update", "d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a3c75bf5770790f8eba8cc92227b5400c", null ],
|
||||
[ "HLD", "d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afcdadbdea1e2391cebbb17d2c1ae2f0b", null ],
|
||||
[ "s_size", "d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#ac6d912bbfafa3a7509f66bbc1729ca25", null ],
|
||||
[ "s_tree", "d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#afbf8a9cb9449d5ca844f4e141a801e6a", null ],
|
||||
[ "sret_init", "d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#aa7f93971a9f891e0bbb7023081f379d5", null ]
|
||||
|
||||
@@ -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: range_queries::heavy_light_decomposition::SG::query Pages: 1 -->
|
||||
<svg width="270pt" height="50pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
@@ -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/hopcroft_karp.cpp Pages: 1 -->
|
||||
<svg width="437pt" height="84pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 5.4 KiB After Width: | Height: | Size: 5.4 KiB |
@@ -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/magic_number.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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d44/magic__number_8cpp.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -93,8 +93,7 @@ $(document).ready(function(){initNavTree('d9/d44/magic__number_8cpp.html','../..
|
||||
<div class="summary">
|
||||
<a href="#namespaces">Namespaces</a> |
|
||||
<a href="#func-members">Functions</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">magic_number.cpp File Reference</div> </div>
|
||||
<div class="headertitle"><div class="title">magic_number.cpp File Reference</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
@@ -109,13 +108,13 @@ Include dependency graph for magic_number.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">  </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  </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"> </td><td class="mdescRight">for IO operations <br /></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </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:a8d8e81a7cd59644b311ef9adb268f5f0"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d47/namespacemath.html#a8d8e81a7cd59644b311ef9adb268f5f0">math::magic_number</a> (const uint64_t &n)</td></tr>
|
||||
<tr class="separator:a8d8e81a7cd59644b311ef9adb268f5f0"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
@@ -127,10 +126,10 @@ Functions</h2></td></tr>
|
||||
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>A simple program to check if the given number is a magic number or not. A number is said to be a magic number, if the sum of its digits are calculated till a single digit recursively by adding the sum of the digits after every addition. If the single digit comes out to be 1,then the number is a magic number. </p>
|
||||
<p>This is a shortcut method to verify Magic Number. On dividing the input by 9, if the remainder is 1 then the number is a magic number else not. The divisibility rule of 9 says that a number is divisible by 9 if the sum of its digits are also divisible by 9. Therefore, if a number is divisible by 9, then, recursively, all the digit sums are also divisible by 9. The final digit sum is always 9. An increase of 1 in the original number will increase the ultimate value by 1, making it 10 and the ultimate sum will be 1, thus verifying that it is a magic number. </p><dl class="section author"><dt>Author</dt><dd><a href="https://github.com/neha-hasija17">Neha Hasija</a> </dd></dl>
|
||||
<div class="textblock"><p >A simple program to check if the given number is a magic number or not. A number is said to be a magic number, if the sum of its digits are calculated till a single digit recursively by adding the sum of the digits after every addition. If the single digit comes out to be 1,then the number is a magic number. </p>
|
||||
<p >This is a shortcut method to verify Magic Number. On dividing the input by 9, if the remainder is 1 then the number is a magic number else not. The divisibility rule of 9 says that a number is divisible by 9 if the sum of its digits are also divisible by 9. Therefore, if a number is divisible by 9, then, recursively, all the digit sums are also divisible by 9. The final digit sum is always 9. An increase of 1 in the original number will increase the ultimate value by 1, making it 10 and the ultimate sum will be 1, thus verifying that it is a magic number. </p><dl class="section author"><dt>Author</dt><dd><a href="https://github.com/neha-hasija17" target="_blank">Neha Hasija</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">◆ </a></span>main()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -148,10 +147,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="l00077"></a><span class="lineno"> 77</span>  {</div>
|
||||
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <a class="code" href="../../d9/d44/magic__number_8cpp.html#a483bb8ccf42aaf7375a83e91490eda1e">tests</a>(); <span class="comment">// execute the tests</span></div>
|
||||
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> }</div>
|
||||
<div class="fragment"><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> <a class="code hl_function" href="../../d9/d44/magic__number_8cpp.html#a483bb8ccf42aaf7375a83e91490eda1e">tests</a>(); <span class="comment">// execute the tests</span></div>
|
||||
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span>}</div>
|
||||
<div class="ttc" id="amagic__number_8cpp_html_a483bb8ccf42aaf7375a83e91490eda1e"><div class="ttname"><a href="../../d9/d44/magic__number_8cpp.html#a483bb8ccf42aaf7375a83e91490eda1e">tests</a></div><div class="ttdeci">static void tests()</div><div class="ttdoc">Test function.</div><div class="ttdef"><b>Definition:</b> magic_number.cpp:51</div></div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
@@ -162,7 +161,7 @@ Here is the call graph for this function:</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a483bb8ccf42aaf7375a83e91490eda1e"></a>
|
||||
<a id="a483bb8ccf42aaf7375a83e91490eda1e" name="a483bb8ccf42aaf7375a83e91490eda1e"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a483bb8ccf42aaf7375a83e91490eda1e">◆ </a></span>tests()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -187,27 +186,27 @@ Here is the call graph for this function:</div>
|
||||
|
||||
<p>Test function. </p>
|
||||
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  {</div>
|
||||
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 1:\t n=60\n"</span>;</div>
|
||||
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  assert(<a class="code" href="../../dd/d47/namespacemath.html#a8d8e81a7cd59644b311ef9adb268f5f0">math::magic_number</a>(60) == <span class="keyword">false</span>);</div>
|
||||
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"passed\n"</span>;</div>
|
||||
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  </div>
|
||||
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 2:\t n=730\n"</span>;</div>
|
||||
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  assert(<a class="code" href="../../dd/d47/namespacemath.html#a8d8e81a7cd59644b311ef9adb268f5f0">math::magic_number</a>(730) == <span class="keyword">true</span>);</div>
|
||||
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"passed\n"</span>;</div>
|
||||
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  </div>
|
||||
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 3:\t n=0\n"</span>;</div>
|
||||
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  assert(<a class="code" href="../../dd/d47/namespacemath.html#a8d8e81a7cd59644b311ef9adb268f5f0">math::magic_number</a>(0) == <span class="keyword">false</span>);</div>
|
||||
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"passed\n"</span>;</div>
|
||||
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  </div>
|
||||
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 4:\t n=479001600\n"</span>;</div>
|
||||
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  assert(<a class="code" href="../../dd/d47/namespacemath.html#a8d8e81a7cd59644b311ef9adb268f5f0">math::magic_number</a>(479001600) == <span class="keyword">false</span>);</div>
|
||||
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"passed\n"</span>;</div>
|
||||
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  </div>
|
||||
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 5:\t n=-35\n"</span>;</div>
|
||||
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  assert(<a class="code" href="../../dd/d47/namespacemath.html#a8d8e81a7cd59644b311ef9adb268f5f0">math::magic_number</a>(-35) == <span class="keyword">false</span>);</div>
|
||||
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"passed\n"</span>;</div>
|
||||
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> }</div>
|
||||
<div class="fragment"><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> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 1:\t n=60\n"</span>;</div>
|
||||
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> assert(<a class="code hl_function" href="../../dd/d47/namespacemath.html#a8d8e81a7cd59644b311ef9adb268f5f0">math::magic_number</a>(60) == <span class="keyword">false</span>);</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/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"passed\n"</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> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 2:\t n=730\n"</span>;</div>
|
||||
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> assert(<a class="code hl_function" href="../../dd/d47/namespacemath.html#a8d8e81a7cd59644b311ef9adb268f5f0">math::magic_number</a>(730) == <span class="keyword">true</span>);</div>
|
||||
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"passed\n"</span>;</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> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 3:\t n=0\n"</span>;</div>
|
||||
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> assert(<a class="code hl_function" href="../../dd/d47/namespacemath.html#a8d8e81a7cd59644b311ef9adb268f5f0">math::magic_number</a>(0) == <span class="keyword">false</span>);</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> << <span class="stringliteral">"passed\n"</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> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 4:\t n=479001600\n"</span>;</div>
|
||||
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> assert(<a class="code hl_function" href="../../dd/d47/namespacemath.html#a8d8e81a7cd59644b311ef9adb268f5f0">math::magic_number</a>(479001600) == <span class="keyword">false</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_ostream.html">std::cout</a> << <span class="stringliteral">"passed\n"</span>;</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_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 5:\t n=-35\n"</span>;</div>
|
||||
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> assert(<a class="code hl_function" href="../../dd/d47/namespacemath.html#a8d8e81a7cd59644b311ef9adb268f5f0">math::magic_number</a>(-35) == <span class="keyword">false</span>);</div>
|
||||
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"passed\n"</span>;</div>
|
||||
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</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="anamespacemath_html_a8d8e81a7cd59644b311ef9adb268f5f0"><div class="ttname"><a href="../../dd/d47/namespacemath.html#a8d8e81a7cd59644b311ef9adb268f5f0">math::magic_number</a></div><div class="ttdeci">bool magic_number(const uint64_t &n)</div><div class="ttdef"><b>Definition:</b> magic_number.cpp:32</div></div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
@@ -225,7 +224,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="../../d9/d44/magic__number_8cpp.html">magic_number.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>
|
||||
|
||||
@@ -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: tests Pages: 1 -->
|
||||
<svg width="192pt" height="28pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
@@ -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="266pt" height="28pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
@@ -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++: machine_learning/kohonen_som_trace.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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d49/kohonen__som__trace_8cpp.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -94,12 +94,11 @@ $(document).ready(function(){initNavTree('d9/d49/kohonen__som__trace_8cpp.html',
|
||||
<a href="#namespaces">Namespaces</a> |
|
||||
<a href="#define-members">Macros</a> |
|
||||
<a href="#func-members">Functions</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">kohonen_som_trace.cpp File Reference<div class="ingroups"><a class="el" href="../../d9/d66/group__machine__learning.html">Machine Learning Algorithms</a></div></div> </div>
|
||||
<div class="headertitle"><div class="title">kohonen_som_trace.cpp File Reference<div class="ingroups"><a class="el" href="../../d9/d66/group__machine__learning.html">Machine Learning Algorithms</a></div></div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p><a href="https://en.wikipedia.org/wiki/Self-organizing_map">Kohonen self organizing map</a> (data tracing)
|
||||
<p><a href="https://en.wikipedia.org/wiki/Self-organizing_map" target="_blank">Kohonen self organizing map</a> (data tracing)
|
||||
<a href="#details">More...</a></p>
|
||||
<div class="textblock"><code>#include <algorithm></code><br />
|
||||
<code>#include <array></code><br />
|
||||
@@ -117,32 +116,32 @@ Include dependency graph for kohonen_som_trace.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:d8/d77/namespacemachine__learning"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d77/namespacemachine__learning.html">machine_learning</a></td></tr>
|
||||
<tr class="memdesc:d8/d77/namespacemachine__learning"><td class="mdescLeft"> </td><td class="mdescRight"><a href="https://en.wikipedia.org/wiki/A*_search_algorithm">A* search algorithm</a> <br /></td></tr>
|
||||
<tr class="memitem:d8/d77/namespacemachine__learning"><td class="memItemLeft" align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d77/namespacemachine__learning.html">machine_learning</a></td></tr>
|
||||
<tr class="memdesc:d8/d77/namespacemachine__learning"><td class="mdescLeft"> </td><td class="mdescRight"><a href="https://en.wikipedia.org/wiki/A*_search_algorithm" target="_blank">A* search algorithm</a> <br /></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </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:gaf5ce14f026d6d231bef29161bac2b485"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a> (double a, double b)</td></tr>
|
||||
<tr class="separator:gaf5ce14f026d6d231bef29161bac2b485"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga72699c805c19a6cc47a937a6f3378afa"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa">save_nd_data</a> (const char *fname, const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double >> &X)</td></tr>
|
||||
<tr class="separator:ga72699c805c19a6cc47a937a6f3378afa"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a361674452869413536ee501f053129a8"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d77/namespacemachine__learning.html#a361674452869413536ee501f053129a8">machine_learning::update_weights</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > &x, <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double >> *W, <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > *D, double alpha, int R)</td></tr>
|
||||
<tr class="separator:a361674452869413536ee501f053129a8"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:acc6a28f40512dbda75ab1a3969248898"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d77/namespacemachine__learning.html#acc6a28f40512dbda75ab1a3969248898">machine_learning::kohonen_som_tracer</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double >> &X, <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double >> *W, double alpha_min)</td></tr>
|
||||
<tr class="separator:acc6a28f40512dbda75ab1a3969248898"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ab47fb569e63648bd76e7edfdacc02dbd"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d49/kohonen__som__trace_8cpp.html#ab47fb569e63648bd76e7edfdacc02dbd">test_circle</a> (<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double >> *<a class="el" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>)</td></tr>
|
||||
<tr class="separator:ab47fb569e63648bd76e7edfdacc02dbd"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gae0208548f8b393528e5db01717e88e67"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67">save_nd_data</a> (const char *fname, const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > > &X)</td></tr>
|
||||
<tr class="separator:gae0208548f8b393528e5db01717e88e67"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:aa6aac06ccf128b0a9c55c9ee1a8e5631"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d77/namespacemachine__learning.html#aa6aac06ccf128b0a9c55c9ee1a8e5631">machine_learning::update_weights</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > &x, <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > > *W, <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > *D, double alpha, int R)</td></tr>
|
||||
<tr class="separator:aa6aac06ccf128b0a9c55c9ee1a8e5631"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a042f435bca0839e721fc1574a61e8da3"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d77/namespacemachine__learning.html#a042f435bca0839e721fc1574a61e8da3">machine_learning::kohonen_som_tracer</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > > &X, <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > > *W, double alpha_min)</td></tr>
|
||||
<tr class="separator:a042f435bca0839e721fc1574a61e8da3"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ae571600aa42a81bc14a4a602ea5ff00d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d49/kohonen__som__trace_8cpp.html#ae571600aa42a81bc14a4a602ea5ff00d">test_circle</a> (<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > > *<a class="el" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>)</td></tr>
|
||||
<tr class="separator:ae571600aa42a81bc14a4a602ea5ff00d"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a1440a7779ac56f47a3f355ce4a8c7da0"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d49/kohonen__som__trace_8cpp.html#a1440a7779ac56f47a3f355ce4a8c7da0">test1</a> ()</td></tr>
|
||||
<tr class="separator:a1440a7779ac56f47a3f355ce4a8c7da0"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a412b7afa156306b1f8788643c91a1c60"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d49/kohonen__som__trace_8cpp.html#a412b7afa156306b1f8788643c91a1c60">test_lamniscate</a> (<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double >> *<a class="el" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>)</td></tr>
|
||||
<tr class="separator:a412b7afa156306b1f8788643c91a1c60"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a53082f2e5bacec40266499da4547309a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d49/kohonen__som__trace_8cpp.html#a53082f2e5bacec40266499da4547309a">test_lamniscate</a> (<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > > *<a class="el" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>)</td></tr>
|
||||
<tr class="separator:a53082f2e5bacec40266499da4547309a"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a0283886819c7c140a023582b7269e2d0"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d49/kohonen__som__trace_8cpp.html#a0283886819c7c140a023582b7269e2d0">test2</a> ()</td></tr>
|
||||
<tr class="separator:a0283886819c7c140a023582b7269e2d0"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a9ab8c79ffb674a63f151f282faeb723b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d49/kohonen__som__trace_8cpp.html#a9ab8c79ffb674a63f151f282faeb723b">test_3d_classes</a> (<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double >> *<a class="el" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>)</td></tr>
|
||||
<tr class="separator:a9ab8c79ffb674a63f151f282faeb723b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a7154fe319e6033485a8a6cd6f0d8932d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d49/kohonen__som__trace_8cpp.html#a7154fe319e6033485a8a6cd6f0d8932d">test_3d_classes</a> (<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > > *<a class="el" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>)</td></tr>
|
||||
<tr class="separator:a7154fe319e6033485a8a6cd6f0d8932d"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a6d0455dd5c30adda100e95f0423c786e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d49/kohonen__som__trace_8cpp.html#a6d0455dd5c30adda100e95f0423c786e">test3</a> ()</td></tr>
|
||||
<tr class="separator:a6d0455dd5c30adda100e95f0423c786e"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a2256c10b16edba377b64a44b6c656908"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d49/kohonen__som__trace_8cpp.html#a2256c10b16edba377b64a44b6c656908">get_clock_diff</a> (clock_t start_t, clock_t end_t)</td></tr>
|
||||
@@ -151,15 +150,15 @@ Functions</h2></td></tr>
|
||||
<tr class="separator:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p><a href="https://en.wikipedia.org/wiki/Self-organizing_map">Kohonen self organizing map</a> (data tracing) </p>
|
||||
<p>This example implements a powerful self organizing map algorithm. The algorithm creates a connected network of weights that closely follows the given data points. This this creates a chain of nodes that resembles the given input shape.</p>
|
||||
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/kvedala">Krishna Vedala</a></dd></dl>
|
||||
<dl class="section note"><dt>Note</dt><dd>This C++ version of the program is considerable slower than its <a href="https://github.com/kvedala/C/blob/master/machine_learning/kohonen_som_trace.c">C counterpart</a> </dd>
|
||||
<div class="textblock"><p ><a href="https://en.wikipedia.org/wiki/Self-organizing_map" target="_blank">Kohonen self organizing map</a> (data tracing) </p>
|
||||
<p >This example implements a powerful self organizing map algorithm. The algorithm creates a connected network of weights that closely follows the given data points. This this creates a chain of nodes that resembles the given input shape.</p>
|
||||
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/kvedala" target="_blank">Krishna Vedala</a></dd></dl>
|
||||
<dl class="section note"><dt>Note</dt><dd>This C++ version of the program is considerable slower than its <a href="https://github.com/kvedala/C/blob/master/machine_learning/kohonen_som_trace.c" target="_blank">C counterpart</a> </dd>
|
||||
<dd>
|
||||
The compiled code is much slower when compiled with MS Visual C++ 2019 than with GCC on windows </dd></dl>
|
||||
<dl class="section see"><dt>See also</dt><dd><a class="el" href="../../d4/def/kohonen__som__topology_8cpp.html" title="Kohonen self organizing map (topological map)">kohonen_som_topology.cpp</a> </dd></dl>
|
||||
</div><h2 class="groupheader">Function Documentation</h2>
|
||||
<a id="a2256c10b16edba377b64a44b6c656908"></a>
|
||||
<a id="a2256c10b16edba377b64a44b6c656908" name="a2256c10b16edba377b64a44b6c656908"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a2256c10b16edba377b64a44b6c656908">◆ </a></span>get_clock_diff()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -184,7 +183,7 @@ The compiled code is much slower when compiled with MS Visual C++ 2019 than with
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Convert clock cycle difference to time in seconds</p>
|
||||
<p >Convert clock cycle difference to time in seconds</p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">start_t</td><td>start clock </td></tr>
|
||||
@@ -193,13 +192,13 @@ The compiled code is much slower when compiled with MS Visual C++ 2019 than with
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>time difference in seconds </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>  {</div>
|
||||
<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>  <span class="keywordflow">return</span> <span class="keyword">static_cast<</span><span class="keywordtype">double</span><span class="keyword">></span>(end_t - start_t) / CLOCKS_PER_SEC;</div>
|
||||
<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> }</div>
|
||||
<div class="fragment"><div class="line"><a id="l00452" name="l00452"></a><span class="lineno"> 452</span> {</div>
|
||||
<div class="line"><a id="l00453" name="l00453"></a><span class="lineno"> 453</span> <span class="keywordflow">return</span> <span class="keyword">static_cast<</span><span class="keywordtype">double</span><span class="keyword">></span>(end_t - start_t) / CLOCKS_PER_SEC;</div>
|
||||
<div class="line"><a id="l00454" name="l00454"></a><span class="lineno"> 454</span>}</div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
<a id="a3c04138a5bfe5d72780bb7e82a18e627"></a>
|
||||
<a id="a3c04138a5bfe5d72780bb7e82a18e627" name="a3c04138a5bfe5d72780bb7e82a18e627"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a3c04138a5bfe5d72780bb7e82a18e627">◆ </a></span>main()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -224,39 +223,39 @@ The compiled code is much slower when compiled with MS Visual C++ 2019 than with
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Main function </p>
|
||||
<div class="fragment"><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>  {</div>
|
||||
<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
|
||||
<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Using OpenMP based parallelization\n"</span>;</div>
|
||||
<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> <span class="preprocessor">#else</span></div>
|
||||
<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"NOT using OpenMP based parallelization\n"</span>;</div>
|
||||
<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="preprocessor">#endif</span></div>
|
||||
<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>  </div>
|
||||
<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/random/srand.html">std::srand</a>(<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/time.html">std::time</a>(<span class="keyword">nullptr</span>));</div>
|
||||
<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>  </div>
|
||||
<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/clock_t.html">std::clock_t</a> start_clk = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/clock.html">std::clock</a>();</div>
|
||||
<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>  <a class="code" href="../../d9/d49/kohonen__som__trace_8cpp.html#a1440a7779ac56f47a3f355ce4a8c7da0">test1</a>();</div>
|
||||
<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>  <span class="keyword">auto</span> end_clk = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/clock.html">std::clock</a>();</div>
|
||||
<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 1 completed in "</span> << <a class="code" href="../../d9/d49/kohonen__som__trace_8cpp.html#a2256c10b16edba377b64a44b6c656908">get_clock_diff</a>(start_clk, end_clk)</div>
|
||||
<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>  << <span class="stringliteral">" sec\n"</span>;</div>
|
||||
<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>  </div>
|
||||
<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>  start_clk = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/clock.html">std::clock</a>();</div>
|
||||
<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>  <a class="code" href="../../d9/d49/kohonen__som__trace_8cpp.html#a0283886819c7c140a023582b7269e2d0">test2</a>();</div>
|
||||
<div class="line"><a name="l00474"></a><span class="lineno"> 474</span>  end_clk = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/clock.html">std::clock</a>();</div>
|
||||
<div class="line"><a name="l00475"></a><span class="lineno"> 475</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 2 completed in "</span> << <a class="code" href="../../d9/d49/kohonen__som__trace_8cpp.html#a2256c10b16edba377b64a44b6c656908">get_clock_diff</a>(start_clk, end_clk)</div>
|
||||
<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>  << <span class="stringliteral">" sec\n"</span>;</div>
|
||||
<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>  </div>
|
||||
<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>  start_clk = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/clock.html">std::clock</a>();</div>
|
||||
<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>  <a class="code" href="../../d9/d49/kohonen__som__trace_8cpp.html#a6d0455dd5c30adda100e95f0423c786e">test3</a>();</div>
|
||||
<div class="line"><a name="l00480"></a><span class="lineno"> 480</span>  end_clk = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/clock.html">std::clock</a>();</div>
|
||||
<div class="line"><a name="l00481"></a><span class="lineno"> 481</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 3 completed in "</span> << <a class="code" href="../../d9/d49/kohonen__som__trace_8cpp.html#a2256c10b16edba377b64a44b6c656908">get_clock_diff</a>(start_clk, end_clk)</div>
|
||||
<div class="line"><a name="l00482"></a><span class="lineno"> 482</span>  << <span class="stringliteral">" sec\n"</span>;</div>
|
||||
<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>  </div>
|
||||
<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div>
|
||||
<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>  << <span class="stringliteral">"(Note: Calculated times include: creating test sets, training "</span></div>
|
||||
<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>  <span class="stringliteral">"model and writing files to disk.)\n\n"</span>;</div>
|
||||
<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>  <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> }</div>
|
||||
<p >Main function </p>
|
||||
<div class="fragment"><div class="line"><a id="l00457" name="l00457"></a><span class="lineno"> 457</span> {</div>
|
||||
<div class="line"><a id="l00458" name="l00458"></a><span class="lineno"> 458</span><span class="preprocessor">#ifdef _OPENMP</span></div>
|
||||
<div class="line"><a id="l00459" name="l00459"></a><span class="lineno"> 459</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Using OpenMP based parallelization\n"</span>;</div>
|
||||
<div class="line"><a id="l00460" name="l00460"></a><span class="lineno"> 460</span><span class="preprocessor">#else</span></div>
|
||||
<div class="line"><a id="l00461" name="l00461"></a><span class="lineno"> 461</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"NOT using OpenMP based parallelization\n"</span>;</div>
|
||||
<div class="line"><a id="l00462" name="l00462"></a><span class="lineno"> 462</span><span class="preprocessor">#endif</span></div>
|
||||
<div class="line"><a id="l00463" name="l00463"></a><span class="lineno"> 463</span> </div>
|
||||
<div class="line"><a id="l00464" name="l00464"></a><span class="lineno"> 464</span> <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/random/srand.html">std::srand</a>(<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/time.html">std::time</a>(<span class="keyword">nullptr</span>));</div>
|
||||
<div class="line"><a id="l00465" name="l00465"></a><span class="lineno"> 465</span> </div>
|
||||
<div class="line"><a id="l00466" name="l00466"></a><span class="lineno"> 466</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/clock_t.html">std::clock_t</a> start_clk = <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/clock.html">std::clock</a>();</div>
|
||||
<div class="line"><a id="l00467" name="l00467"></a><span class="lineno"> 467</span> <a class="code hl_function" href="../../d9/d49/kohonen__som__trace_8cpp.html#a1440a7779ac56f47a3f355ce4a8c7da0">test1</a>();</div>
|
||||
<div class="line"><a id="l00468" name="l00468"></a><span class="lineno"> 468</span> <span class="keyword">auto</span> end_clk = <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/clock.html">std::clock</a>();</div>
|
||||
<div class="line"><a id="l00469" name="l00469"></a><span class="lineno"> 469</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 1 completed in "</span> << <a class="code hl_function" href="../../d9/d49/kohonen__som__trace_8cpp.html#a2256c10b16edba377b64a44b6c656908">get_clock_diff</a>(start_clk, end_clk)</div>
|
||||
<div class="line"><a id="l00470" name="l00470"></a><span class="lineno"> 470</span> << <span class="stringliteral">" sec\n"</span>;</div>
|
||||
<div class="line"><a id="l00471" name="l00471"></a><span class="lineno"> 471</span> </div>
|
||||
<div class="line"><a id="l00472" name="l00472"></a><span class="lineno"> 472</span> start_clk = <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/clock.html">std::clock</a>();</div>
|
||||
<div class="line"><a id="l00473" name="l00473"></a><span class="lineno"> 473</span> <a class="code hl_function" href="../../d9/d49/kohonen__som__trace_8cpp.html#a0283886819c7c140a023582b7269e2d0">test2</a>();</div>
|
||||
<div class="line"><a id="l00474" name="l00474"></a><span class="lineno"> 474</span> end_clk = <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/clock.html">std::clock</a>();</div>
|
||||
<div class="line"><a id="l00475" name="l00475"></a><span class="lineno"> 475</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 2 completed in "</span> << <a class="code hl_function" href="../../d9/d49/kohonen__som__trace_8cpp.html#a2256c10b16edba377b64a44b6c656908">get_clock_diff</a>(start_clk, end_clk)</div>
|
||||
<div class="line"><a id="l00476" name="l00476"></a><span class="lineno"> 476</span> << <span class="stringliteral">" sec\n"</span>;</div>
|
||||
<div class="line"><a id="l00477" name="l00477"></a><span class="lineno"> 477</span> </div>
|
||||
<div class="line"><a id="l00478" name="l00478"></a><span class="lineno"> 478</span> start_clk = <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/clock.html">std::clock</a>();</div>
|
||||
<div class="line"><a id="l00479" name="l00479"></a><span class="lineno"> 479</span> <a class="code hl_function" href="../../d9/d49/kohonen__som__trace_8cpp.html#a6d0455dd5c30adda100e95f0423c786e">test3</a>();</div>
|
||||
<div class="line"><a id="l00480" name="l00480"></a><span class="lineno"> 480</span> end_clk = <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/clock.html">std::clock</a>();</div>
|
||||
<div class="line"><a id="l00481" name="l00481"></a><span class="lineno"> 481</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 3 completed in "</span> << <a class="code hl_function" href="../../d9/d49/kohonen__som__trace_8cpp.html#a2256c10b16edba377b64a44b6c656908">get_clock_diff</a>(start_clk, end_clk)</div>
|
||||
<div class="line"><a id="l00482" name="l00482"></a><span class="lineno"> 482</span> << <span class="stringliteral">" sec\n"</span>;</div>
|
||||
<div class="line"><a id="l00483" name="l00483"></a><span class="lineno"> 483</span> </div>
|
||||
<div class="line"><a id="l00484" name="l00484"></a><span class="lineno"> 484</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div>
|
||||
<div class="line"><a id="l00485" name="l00485"></a><span class="lineno"> 485</span> << <span class="stringliteral">"(Note: Calculated times include: creating test sets, training "</span></div>
|
||||
<div class="line"><a id="l00486" name="l00486"></a><span class="lineno"> 486</span> <span class="stringliteral">"model and writing files to disk.)\n\n"</span>;</div>
|
||||
<div class="line"><a id="l00487" name="l00487"></a><span class="lineno"> 487</span> <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a id="l00488" name="l00488"></a><span class="lineno"> 488</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="aclock_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/chrono/c/clock.html">std::clock</a></div><div class="ttdeci">T clock(T... args)</div></div>
|
||||
<div class="ttc" id="aclock_t_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/chrono/c/clock_t.html">std::clock_t</a></div></div>
|
||||
@@ -275,7 +274,7 @@ Here is the call graph for this function:</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a1440a7779ac56f47a3f355ce4a8c7da0"></a>
|
||||
<a id="a1440a7779ac56f47a3f355ce4a8c7da0" name="a1440a7779ac56f47a3f355ce4a8c7da0"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a1440a7779ac56f47a3f355ce4a8c7da0">◆ </a></span>test1()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -289,54 +288,54 @@ Here is the call graph for this function:</div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Test that creates a random set of points distributed <em>near</em> the circumference of a circle and trains an SOM that finds that circular pattern. The following <a href="https://en.wikipedia.org/wiki/Comma-separated_values">CSV</a> files are created to validate the execution:</p><ul>
|
||||
<p >Test that creates a random set of points distributed <em>near</em> the circumference of a circle and trains an SOM that finds that circular pattern. The following <a href="https://en.wikipedia.org/wiki/Comma-separated_values" target="_blank">CSV</a> files are created to validate the execution:</p><ul>
|
||||
<li><code>test1.csv</code>: random test samples points with a circular pattern</li>
|
||||
<li><code>w11.csv</code>: initial random map</li>
|
||||
<li><code>w12.csv</code>: trained SOM map</li>
|
||||
</ul>
|
||||
<p>The outputs can be readily plotted in <a href="https:://gnuplot.info">gnuplot</a> using the following snippet </p><div class="fragment"><div class="line">set datafile separator ','</div>
|
||||
<p >The outputs can be readily plotted in <a href="https:://gnuplot.info" target="_blank">gnuplot</a> using the following snippet </p><div class="fragment"><div class="line">set datafile separator ','</div>
|
||||
<div class="line">plot "test1.csv" title "original", \</div>
|
||||
<div class="line"> "w11.csv" title "w1", \</div>
|
||||
<div class="line"> "w12.csv" title "w2"</div>
|
||||
</div><!-- fragment --><p> <img src="https://raw.githubusercontent.com/TheAlgorithms/C-Plus-Plus/docs/images/machine_learning/kohonen/test1.svg" alt="Sample execution
|
||||
output" style="pointer-events: none;" class="inline"/> </p>
|
||||
<div class="fragment"><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  {</div>
|
||||
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>  <span class="keywordtype">int</span> j = 0, <a class="code" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a> = 500;</div>
|
||||
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>  <span class="keywordtype">int</span> features = 2;</div>
|
||||
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>  <span class="keywordtype">int</span> num_out = 50;</div>
|
||||
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::valarray<double></a>> X(N);</div>
|
||||
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::valarray<double></a>> W(num_out);</div>
|
||||
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/max.html">std::max</a>(num_out, N); i++) {</div>
|
||||
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  <span class="comment">// loop till max(N, num_out)</span></div>
|
||||
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  <span class="keywordflow">if</span> (i < N) { <span class="comment">// only add new arrays if i < N</span></div>
|
||||
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  X[i] = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray<double></a>(features);</div>
|
||||
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  }</div>
|
||||
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  <span class="keywordflow">if</span> (i < num_out) { <span class="comment">// only add new arrays if i < num_out</span></div>
|
||||
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  W[i] = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray<double></a>(features);</div>
|
||||
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  </div>
|
||||
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
|
||||
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="preprocessor">#pragma omp for</span></div>
|
||||
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <span class="preprocessor">#endif</span></div>
|
||||
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>  <span class="keywordflow">for</span> (j = 0; j < features; j++) {</div>
|
||||
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>  <span class="comment">// preallocate with random initial weights</span></div>
|
||||
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>  W[i][j] = <a class="code" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(-1, 1);</div>
|
||||
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>  }</div>
|
||||
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>  }</div>
|
||||
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>  }</div>
|
||||
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>  </div>
|
||||
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>  <a class="code" href="../../d9/d49/kohonen__som__trace_8cpp.html#ab47fb569e63648bd76e7edfdacc02dbd">test_circle</a>(&X); <span class="comment">// create test data around circumference of a circle</span></div>
|
||||
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>  <a class="code" href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa">save_nd_data</a>(<span class="stringliteral">"test1.csv"</span>, X); <span class="comment">// save test data points</span></div>
|
||||
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>  <a class="code" href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa">save_nd_data</a>(<span class="stringliteral">"w11.csv"</span>, W); <span class="comment">// save initial random weights</span></div>
|
||||
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>  <a class="code" href="../../d8/d77/namespacemachine__learning.html#acc6a28f40512dbda75ab1a3969248898">kohonen_som_tracer</a>(X, &W, 0.1); <span class="comment">// train the SOM</span></div>
|
||||
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  <a class="code" href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa">save_nd_data</a>(<span class="stringliteral">"w12.csv"</span>, W); <span class="comment">// save the resultant weights</span></div>
|
||||
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> }</div>
|
||||
<div class="fragment"><div class="line"><a id="l00233" name="l00233"></a><span class="lineno"> 233</span> {</div>
|
||||
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"> 234</span> <span class="keywordtype">int</span> j = 0, <a class="code hl_variable" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a> = 500;</div>
|
||||
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span> <span class="keywordtype">int</span> features = 2;</div>
|
||||
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span> <span class="keywordtype">int</span> num_out = 50;</div>
|
||||
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::valarray<double></a>> X(N);</div>
|
||||
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"> 238</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::valarray<double></a>> W(num_out);</div>
|
||||
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"> 239</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/max.html">std::max</a>(num_out, N); i++) {</div>
|
||||
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span> <span class="comment">// loop till max(N, num_out)</span></div>
|
||||
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> <span class="keywordflow">if</span> (i < N) { <span class="comment">// only add new arrays if i < N</span></div>
|
||||
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> X[i] = <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray<double></a>(features);</div>
|
||||
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> }</div>
|
||||
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span> <span class="keywordflow">if</span> (i < num_out) { <span class="comment">// only add new arrays if i < num_out</span></div>
|
||||
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno"> 245</span> W[i] = <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray<double></a>(features);</div>
|
||||
<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="preprocessor">#ifdef _OPENMP</span></div>
|
||||
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span><span class="preprocessor">#pragma omp for</span></div>
|
||||
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span><span class="preprocessor">#endif</span></div>
|
||||
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"> 250</span> <span class="keywordflow">for</span> (j = 0; j < features; j++) {</div>
|
||||
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"> 251</span> <span class="comment">// preallocate with random initial weights</span></div>
|
||||
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span> W[i][j] = <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(-1, 1);</div>
|
||||
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span> }</div>
|
||||
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span> }</div>
|
||||
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> }</div>
|
||||
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span> </div>
|
||||
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span> <a class="code hl_function" href="../../d9/d49/kohonen__som__trace_8cpp.html#ae571600aa42a81bc14a4a602ea5ff00d">test_circle</a>(&X); <span class="comment">// create test data around circumference of a circle</span></div>
|
||||
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67">save_nd_data</a>(<span class="stringliteral">"test1.csv"</span>, X); <span class="comment">// save test data points</span></div>
|
||||
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span> <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67">save_nd_data</a>(<span class="stringliteral">"w11.csv"</span>, W); <span class="comment">// save initial random weights</span></div>
|
||||
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> <a class="code hl_function" href="../../d8/d77/namespacemachine__learning.html#a042f435bca0839e721fc1574a61e8da3">kohonen_som_tracer</a>(X, &W, 0.1); <span class="comment">// train the SOM</span></div>
|
||||
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span> <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67">save_nd_data</a>(<span class="stringliteral">"w12.csv"</span>, W); <span class="comment">// save the resultant weights</span></div>
|
||||
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"> 262</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="agroup__machine__learning_html_ga72699c805c19a6cc47a937a6f3378afa"><div class="ttname"><a href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa">save_nd_data</a></div><div class="ttdeci">int save_nd_data(const char *fname, const std::vector< std::valarray< double >> &X)</div><div class="ttdef"><b>Definition:</b> kohonen_som_trace.cpp:58</div></div>
|
||||
<div class="ttc" id="agroup__machine__learning_html_gae0208548f8b393528e5db01717e88e67"><div class="ttname"><a href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67">save_nd_data</a></div><div class="ttdeci">int save_nd_data(const char *fname, const std::vector< std::valarray< double > > &X)</div><div class="ttdef"><b>Definition:</b> kohonen_som_trace.cpp:58</div></div>
|
||||
<div class="ttc" id="agroup__machine__learning_html_gaf5ce14f026d6d231bef29161bac2b485"><div class="ttname"><a href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a></div><div class="ttdeci">double _random(double a, double b)</div><div class="ttdef"><b>Definition:</b> kohonen_som_topology.cpp:53</div></div>
|
||||
<div class="ttc" id="akohonen__som__trace_8cpp_html_ab47fb569e63648bd76e7edfdacc02dbd"><div class="ttname"><a href="../../d9/d49/kohonen__som__trace_8cpp.html#ab47fb569e63648bd76e7edfdacc02dbd">test_circle</a></div><div class="ttdeci">void test_circle(std::vector< std::valarray< double >> *data)</div><div class="ttdef"><b>Definition:</b> kohonen_som_trace.cpp:196</div></div>
|
||||
<div class="ttc" id="akohonen__som__trace_8cpp_html_ae571600aa42a81bc14a4a602ea5ff00d"><div class="ttname"><a href="../../d9/d49/kohonen__som__trace_8cpp.html#ae571600aa42a81bc14a4a602ea5ff00d">test_circle</a></div><div class="ttdeci">void test_circle(std::vector< std::valarray< double > > *data)</div><div class="ttdef"><b>Definition:</b> kohonen_som_trace.cpp:196</div></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="anamespacemachine__learning_html_acc6a28f40512dbda75ab1a3969248898"><div class="ttname"><a href="../../d8/d77/namespacemachine__learning.html#acc6a28f40512dbda75ab1a3969248898">machine_learning::kohonen_som_tracer</a></div><div class="ttdeci">void kohonen_som_tracer(const std::vector< std::valarray< double >> &X, std::vector< std::valarray< double >> *W, double alpha_min)</div><div class="ttdef"><b>Definition:</b> kohonen_som_trace.cpp:149</div></div>
|
||||
<div class="ttc" id="avalarray_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray< double ></a></div></div>
|
||||
<div class="ttc" id="anamespacemachine__learning_html_a042f435bca0839e721fc1574a61e8da3"><div class="ttname"><a href="../../d8/d77/namespacemachine__learning.html#a042f435bca0839e721fc1574a61e8da3">machine_learning::kohonen_som_tracer</a></div><div class="ttdeci">void kohonen_som_tracer(const std::vector< std::valarray< double > > &X, std::vector< std::valarray< double > > *W, double alpha_min)</div><div class="ttdef"><b>Definition:</b> kohonen_som_trace.cpp:149</div></div>
|
||||
<div class="ttc" id="avalarray_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a></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">
|
||||
Here is the call graph for this function:</div>
|
||||
@@ -347,7 +346,7 @@ Here is the call graph for this function:</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a0283886819c7c140a023582b7269e2d0"></a>
|
||||
<a id="a0283886819c7c140a023582b7269e2d0" name="a0283886819c7c140a023582b7269e2d0"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a0283886819c7c140a023582b7269e2d0">◆ </a></span>test2()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -361,48 +360,48 @@ Here is the call graph for this function:</div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Test that creates a random set of points distributed <em>near</em> the locus of the <a href="https://en.wikipedia.org/wiki/Lemniscate_of_Gerono">Lamniscate of Gerono</a> and trains an SOM that finds that circular pattern. The following <a href="https://en.wikipedia.org/wiki/Comma-separated_values">CSV</a> files are created to validate the execution:</p><ul>
|
||||
<p >Test that creates a random set of points distributed <em>near</em> the locus of the <a href="https://en.wikipedia.org/wiki/Lemniscate_of_Gerono" target="_blank">Lamniscate of Gerono</a> and trains an SOM that finds that circular pattern. The following <a href="https://en.wikipedia.org/wiki/Comma-separated_values" target="_blank">CSV</a> files are created to validate the execution:</p><ul>
|
||||
<li><code>test2.csv</code>: random test samples points with a lamniscate pattern</li>
|
||||
<li><code>w21.csv</code>: initial random map</li>
|
||||
<li><code>w22.csv</code>: trained SOM map</li>
|
||||
</ul>
|
||||
<p>The outputs can be readily plotted in <a href="https:://gnuplot.info">gnuplot</a> using the following snippet </p><div class="fragment"><div class="line">set datafile separator ','</div>
|
||||
<p >The outputs can be readily plotted in <a href="https:://gnuplot.info" target="_blank">gnuplot</a> using the following snippet </p><div class="fragment"><div class="line">set datafile separator ','</div>
|
||||
<div class="line">plot "test2.csv" title "original", \</div>
|
||||
<div class="line"> "w21.csv" title "w1", \</div>
|
||||
<div class="line"> "w22.csv" title "w2"</div>
|
||||
</div><!-- fragment --><p> <img src="https://raw.githubusercontent.com/TheAlgorithms/C-Plus-Plus/docs/images/machine_learning/kohonen/test2.svg" alt="Sample execution
|
||||
output" style="pointer-events: none;" class="inline"/> </p>
|
||||
<div class="fragment"><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>  {</div>
|
||||
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>  <span class="keywordtype">int</span> j = 0, <a class="code" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a> = 500;</div>
|
||||
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>  <span class="keywordtype">int</span> features = 2;</div>
|
||||
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>  <span class="keywordtype">int</span> num_out = 20;</div>
|
||||
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::valarray<double></a>> X(N);</div>
|
||||
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::valarray<double></a>> W(num_out);</div>
|
||||
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/max.html">std::max</a>(num_out, N); i++) {</div>
|
||||
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>  <span class="comment">// loop till max(N, num_out)</span></div>
|
||||
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>  <span class="keywordflow">if</span> (i < N) { <span class="comment">// only add new arrays if i < N</span></div>
|
||||
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>  X[i] = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray<double></a>(features);</div>
|
||||
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>  }</div>
|
||||
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>  <span class="keywordflow">if</span> (i < num_out) { <span class="comment">// only add new arrays if i < num_out</span></div>
|
||||
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>  W[i] = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray<double></a>(features);</div>
|
||||
<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>  </div>
|
||||
<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
|
||||
<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="preprocessor">#pragma omp for</span></div>
|
||||
<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="preprocessor">#endif</span></div>
|
||||
<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>  <span class="keywordflow">for</span> (j = 0; j < features; j++) {</div>
|
||||
<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>  <span class="comment">// preallocate with random initial weights</span></div>
|
||||
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>  W[i][j] = <a class="code" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(-1, 1);</div>
|
||||
<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>  }</div>
|
||||
<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>  }</div>
|
||||
<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>  }</div>
|
||||
<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>  </div>
|
||||
<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>  <a class="code" href="../../d9/d49/kohonen__som__trace_8cpp.html#a412b7afa156306b1f8788643c91a1c60">test_lamniscate</a>(&X); <span class="comment">// create test data around the lamniscate</span></div>
|
||||
<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>  <a class="code" href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa">save_nd_data</a>(<span class="stringliteral">"test2.csv"</span>, X); <span class="comment">// save test data points</span></div>
|
||||
<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>  <a class="code" href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa">save_nd_data</a>(<span class="stringliteral">"w21.csv"</span>, W); <span class="comment">// save initial random weights</span></div>
|
||||
<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>  <a class="code" href="../../d8/d77/namespacemachine__learning.html#acc6a28f40512dbda75ab1a3969248898">kohonen_som_tracer</a>(X, &W, 0.01); <span class="comment">// train the SOM</span></div>
|
||||
<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>  <a class="code" href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa">save_nd_data</a>(<span class="stringliteral">"w22.csv"</span>, W); <span class="comment">// save the resultant weights</span></div>
|
||||
<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> }</div>
|
||||
<div class="ttc" id="akohonen__som__trace_8cpp_html_a412b7afa156306b1f8788643c91a1c60"><div class="ttname"><a href="../../d9/d49/kohonen__som__trace_8cpp.html#a412b7afa156306b1f8788643c91a1c60">test_lamniscate</a></div><div class="ttdeci">void test_lamniscate(std::vector< std::valarray< double >> *data)</div><div class="ttdef"><b>Definition:</b> kohonen_som_trace.cpp:277</div></div>
|
||||
<div class="fragment"><div class="line"><a id="l00315" name="l00315"></a><span class="lineno"> 315</span> {</div>
|
||||
<div class="line"><a id="l00316" name="l00316"></a><span class="lineno"> 316</span> <span class="keywordtype">int</span> j = 0, <a class="code hl_variable" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a> = 500;</div>
|
||||
<div class="line"><a id="l00317" name="l00317"></a><span class="lineno"> 317</span> <span class="keywordtype">int</span> features = 2;</div>
|
||||
<div class="line"><a id="l00318" name="l00318"></a><span class="lineno"> 318</span> <span class="keywordtype">int</span> num_out = 20;</div>
|
||||
<div class="line"><a id="l00319" name="l00319"></a><span class="lineno"> 319</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::valarray<double></a>> X(N);</div>
|
||||
<div class="line"><a id="l00320" name="l00320"></a><span class="lineno"> 320</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::valarray<double></a>> W(num_out);</div>
|
||||
<div class="line"><a id="l00321" name="l00321"></a><span class="lineno"> 321</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/max.html">std::max</a>(num_out, N); i++) {</div>
|
||||
<div class="line"><a id="l00322" name="l00322"></a><span class="lineno"> 322</span> <span class="comment">// loop till max(N, num_out)</span></div>
|
||||
<div class="line"><a id="l00323" name="l00323"></a><span class="lineno"> 323</span> <span class="keywordflow">if</span> (i < N) { <span class="comment">// only add new arrays if i < N</span></div>
|
||||
<div class="line"><a id="l00324" name="l00324"></a><span class="lineno"> 324</span> X[i] = <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray<double></a>(features);</div>
|
||||
<div class="line"><a id="l00325" name="l00325"></a><span class="lineno"> 325</span> }</div>
|
||||
<div class="line"><a id="l00326" name="l00326"></a><span class="lineno"> 326</span> <span class="keywordflow">if</span> (i < num_out) { <span class="comment">// only add new arrays if i < num_out</span></div>
|
||||
<div class="line"><a id="l00327" name="l00327"></a><span class="lineno"> 327</span> W[i] = <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray<double></a>(features);</div>
|
||||
<div class="line"><a id="l00328" name="l00328"></a><span class="lineno"> 328</span> </div>
|
||||
<div class="line"><a id="l00329" name="l00329"></a><span class="lineno"> 329</span><span class="preprocessor">#ifdef _OPENMP</span></div>
|
||||
<div class="line"><a id="l00330" name="l00330"></a><span class="lineno"> 330</span><span class="preprocessor">#pragma omp for</span></div>
|
||||
<div class="line"><a id="l00331" name="l00331"></a><span class="lineno"> 331</span><span class="preprocessor">#endif</span></div>
|
||||
<div class="line"><a id="l00332" name="l00332"></a><span class="lineno"> 332</span> <span class="keywordflow">for</span> (j = 0; j < features; j++) {</div>
|
||||
<div class="line"><a id="l00333" name="l00333"></a><span class="lineno"> 333</span> <span class="comment">// preallocate with random initial weights</span></div>
|
||||
<div class="line"><a id="l00334" name="l00334"></a><span class="lineno"> 334</span> W[i][j] = <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(-1, 1);</div>
|
||||
<div class="line"><a id="l00335" name="l00335"></a><span class="lineno"> 335</span> }</div>
|
||||
<div class="line"><a id="l00336" name="l00336"></a><span class="lineno"> 336</span> }</div>
|
||||
<div class="line"><a id="l00337" name="l00337"></a><span class="lineno"> 337</span> }</div>
|
||||
<div class="line"><a id="l00338" name="l00338"></a><span class="lineno"> 338</span> </div>
|
||||
<div class="line"><a id="l00339" name="l00339"></a><span class="lineno"> 339</span> <a class="code hl_function" href="../../d9/d49/kohonen__som__trace_8cpp.html#a53082f2e5bacec40266499da4547309a">test_lamniscate</a>(&X); <span class="comment">// create test data around the lamniscate</span></div>
|
||||
<div class="line"><a id="l00340" name="l00340"></a><span class="lineno"> 340</span> <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67">save_nd_data</a>(<span class="stringliteral">"test2.csv"</span>, X); <span class="comment">// save test data points</span></div>
|
||||
<div class="line"><a id="l00341" name="l00341"></a><span class="lineno"> 341</span> <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67">save_nd_data</a>(<span class="stringliteral">"w21.csv"</span>, W); <span class="comment">// save initial random weights</span></div>
|
||||
<div class="line"><a id="l00342" name="l00342"></a><span class="lineno"> 342</span> <a class="code hl_function" href="../../d8/d77/namespacemachine__learning.html#a042f435bca0839e721fc1574a61e8da3">kohonen_som_tracer</a>(X, &W, 0.01); <span class="comment">// train the SOM</span></div>
|
||||
<div class="line"><a id="l00343" name="l00343"></a><span class="lineno"> 343</span> <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67">save_nd_data</a>(<span class="stringliteral">"w22.csv"</span>, W); <span class="comment">// save the resultant weights</span></div>
|
||||
<div class="line"><a id="l00344" name="l00344"></a><span class="lineno"> 344</span>}</div>
|
||||
<div class="ttc" id="akohonen__som__trace_8cpp_html_a53082f2e5bacec40266499da4547309a"><div class="ttname"><a href="../../d9/d49/kohonen__som__trace_8cpp.html#a53082f2e5bacec40266499da4547309a">test_lamniscate</a></div><div class="ttdeci">void test_lamniscate(std::vector< std::valarray< double > > *data)</div><div class="ttdef"><b>Definition:</b> kohonen_som_trace.cpp:277</div></div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -412,7 +411,7 @@ Here is the call graph for this function:</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a6d0455dd5c30adda100e95f0423c786e"></a>
|
||||
<a id="a6d0455dd5c30adda100e95f0423c786e" name="a6d0455dd5c30adda100e95f0423c786e"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a6d0455dd5c30adda100e95f0423c786e">◆ </a></span>test3()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -426,48 +425,48 @@ Here is the call graph for this function:</div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Test that creates a random set of points distributed in six clusters in 3D space. The following <a href="https://en.wikipedia.org/wiki/Comma-separated_values">CSV</a> files are created to validate the execution:</p><ul>
|
||||
<p >Test that creates a random set of points distributed in six clusters in 3D space. The following <a href="https://en.wikipedia.org/wiki/Comma-separated_values" target="_blank">CSV</a> files are created to validate the execution:</p><ul>
|
||||
<li><code>test3.csv</code>: random test samples points with a circular pattern</li>
|
||||
<li><code>w31.csv</code>: initial random map</li>
|
||||
<li><code>w32.csv</code>: trained SOM map</li>
|
||||
</ul>
|
||||
<p>The outputs can be readily plotted in <a href="https:://gnuplot.info">gnuplot</a> using the following snippet </p><div class="fragment"><div class="line">set datafile separator ','</div>
|
||||
<p >The outputs can be readily plotted in <a href="https:://gnuplot.info" target="_blank">gnuplot</a> using the following snippet </p><div class="fragment"><div class="line">set datafile separator ','</div>
|
||||
<div class="line">plot "test3.csv" title "original", \</div>
|
||||
<div class="line"> "w31.csv" title "w1", \</div>
|
||||
<div class="line"> "w32.csv" title "w2"</div>
|
||||
</div><!-- fragment --><p> <img src="https://raw.githubusercontent.com/TheAlgorithms/C-Plus-Plus/docs/images/machine_learning/kohonen/test3.svg" alt="Sample execution
|
||||
output" style="pointer-events: none;" class="inline"/> </p>
|
||||
<div class="fragment"><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>  {</div>
|
||||
<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>  <span class="keywordtype">int</span> j = 0, <a class="code" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a> = 200;</div>
|
||||
<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>  <span class="keywordtype">int</span> features = 3;</div>
|
||||
<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>  <span class="keywordtype">int</span> num_out = 20;</div>
|
||||
<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::valarray<double></a>> X(N);</div>
|
||||
<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::valarray<double></a>> W(num_out);</div>
|
||||
<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/max.html">std::max</a>(num_out, N); i++) {</div>
|
||||
<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>  <span class="comment">// loop till max(N, num_out)</span></div>
|
||||
<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>  <span class="keywordflow">if</span> (i < N) { <span class="comment">// only add new arrays if i < N</span></div>
|
||||
<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>  X[i] = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray<double></a>(features);</div>
|
||||
<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>  }</div>
|
||||
<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>  <span class="keywordflow">if</span> (i < num_out) { <span class="comment">// only add new arrays if i < num_out</span></div>
|
||||
<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>  W[i] = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray<double></a>(features);</div>
|
||||
<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>  </div>
|
||||
<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
|
||||
<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="preprocessor">#pragma omp for</span></div>
|
||||
<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="preprocessor">#endif</span></div>
|
||||
<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>  <span class="keywordflow">for</span> (j = 0; j < features; j++) {</div>
|
||||
<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>  <span class="comment">// preallocate with random initial weights</span></div>
|
||||
<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>  W[i][j] = <a class="code" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(-1, 1);</div>
|
||||
<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>  }</div>
|
||||
<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>  }</div>
|
||||
<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>  }</div>
|
||||
<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>  </div>
|
||||
<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>  <a class="code" href="../../d9/d49/kohonen__som__trace_8cpp.html#a9ab8c79ffb674a63f151f282faeb723b">test_3d_classes</a>(&X); <span class="comment">// create test data around the lamniscate</span></div>
|
||||
<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>  <a class="code" href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa">save_nd_data</a>(<span class="stringliteral">"test3.csv"</span>, X); <span class="comment">// save test data points</span></div>
|
||||
<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>  <a class="code" href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa">save_nd_data</a>(<span class="stringliteral">"w31.csv"</span>, W); <span class="comment">// save initial random weights</span></div>
|
||||
<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>  <a class="code" href="../../d8/d77/namespacemachine__learning.html#acc6a28f40512dbda75ab1a3969248898">kohonen_som_tracer</a>(X, &W, 0.01); <span class="comment">// train the SOM</span></div>
|
||||
<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>  <a class="code" href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa">save_nd_data</a>(<span class="stringliteral">"w32.csv"</span>, W); <span class="comment">// save the resultant weights</span></div>
|
||||
<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> }</div>
|
||||
<div class="ttc" id="akohonen__som__trace_8cpp_html_a9ab8c79ffb674a63f151f282faeb723b"><div class="ttname"><a href="../../d9/d49/kohonen__som__trace_8cpp.html#a9ab8c79ffb674a63f151f282faeb723b">test_3d_classes</a></div><div class="ttdeci">void test_3d_classes(std::vector< std::valarray< double >> *data)</div><div class="ttdef"><b>Definition:</b> kohonen_som_trace.cpp:359</div></div>
|
||||
<div class="fragment"><div class="line"><a id="l00414" name="l00414"></a><span class="lineno"> 414</span> {</div>
|
||||
<div class="line"><a id="l00415" name="l00415"></a><span class="lineno"> 415</span> <span class="keywordtype">int</span> j = 0, <a class="code hl_variable" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a> = 200;</div>
|
||||
<div class="line"><a id="l00416" name="l00416"></a><span class="lineno"> 416</span> <span class="keywordtype">int</span> features = 3;</div>
|
||||
<div class="line"><a id="l00417" name="l00417"></a><span class="lineno"> 417</span> <span class="keywordtype">int</span> num_out = 20;</div>
|
||||
<div class="line"><a id="l00418" name="l00418"></a><span class="lineno"> 418</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::valarray<double></a>> X(N);</div>
|
||||
<div class="line"><a id="l00419" name="l00419"></a><span class="lineno"> 419</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::valarray<double></a>> W(num_out);</div>
|
||||
<div class="line"><a id="l00420" name="l00420"></a><span class="lineno"> 420</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/max.html">std::max</a>(num_out, N); i++) {</div>
|
||||
<div class="line"><a id="l00421" name="l00421"></a><span class="lineno"> 421</span> <span class="comment">// loop till max(N, num_out)</span></div>
|
||||
<div class="line"><a id="l00422" name="l00422"></a><span class="lineno"> 422</span> <span class="keywordflow">if</span> (i < N) { <span class="comment">// only add new arrays if i < N</span></div>
|
||||
<div class="line"><a id="l00423" name="l00423"></a><span class="lineno"> 423</span> X[i] = <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray<double></a>(features);</div>
|
||||
<div class="line"><a id="l00424" name="l00424"></a><span class="lineno"> 424</span> }</div>
|
||||
<div class="line"><a id="l00425" name="l00425"></a><span class="lineno"> 425</span> <span class="keywordflow">if</span> (i < num_out) { <span class="comment">// only add new arrays if i < num_out</span></div>
|
||||
<div class="line"><a id="l00426" name="l00426"></a><span class="lineno"> 426</span> W[i] = <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray<double></a>(features);</div>
|
||||
<div class="line"><a id="l00427" name="l00427"></a><span class="lineno"> 427</span> </div>
|
||||
<div class="line"><a id="l00428" name="l00428"></a><span class="lineno"> 428</span><span class="preprocessor">#ifdef _OPENMP</span></div>
|
||||
<div class="line"><a id="l00429" name="l00429"></a><span class="lineno"> 429</span><span class="preprocessor">#pragma omp for</span></div>
|
||||
<div class="line"><a id="l00430" name="l00430"></a><span class="lineno"> 430</span><span class="preprocessor">#endif</span></div>
|
||||
<div class="line"><a id="l00431" name="l00431"></a><span class="lineno"> 431</span> <span class="keywordflow">for</span> (j = 0; j < features; j++) {</div>
|
||||
<div class="line"><a id="l00432" name="l00432"></a><span class="lineno"> 432</span> <span class="comment">// preallocate with random initial weights</span></div>
|
||||
<div class="line"><a id="l00433" name="l00433"></a><span class="lineno"> 433</span> W[i][j] = <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(-1, 1);</div>
|
||||
<div class="line"><a id="l00434" name="l00434"></a><span class="lineno"> 434</span> }</div>
|
||||
<div class="line"><a id="l00435" name="l00435"></a><span class="lineno"> 435</span> }</div>
|
||||
<div class="line"><a id="l00436" name="l00436"></a><span class="lineno"> 436</span> }</div>
|
||||
<div class="line"><a id="l00437" name="l00437"></a><span class="lineno"> 437</span> </div>
|
||||
<div class="line"><a id="l00438" name="l00438"></a><span class="lineno"> 438</span> <a class="code hl_function" href="../../d9/d49/kohonen__som__trace_8cpp.html#a7154fe319e6033485a8a6cd6f0d8932d">test_3d_classes</a>(&X); <span class="comment">// create test data around the lamniscate</span></div>
|
||||
<div class="line"><a id="l00439" name="l00439"></a><span class="lineno"> 439</span> <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67">save_nd_data</a>(<span class="stringliteral">"test3.csv"</span>, X); <span class="comment">// save test data points</span></div>
|
||||
<div class="line"><a id="l00440" name="l00440"></a><span class="lineno"> 440</span> <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67">save_nd_data</a>(<span class="stringliteral">"w31.csv"</span>, W); <span class="comment">// save initial random weights</span></div>
|
||||
<div class="line"><a id="l00441" name="l00441"></a><span class="lineno"> 441</span> <a class="code hl_function" href="../../d8/d77/namespacemachine__learning.html#a042f435bca0839e721fc1574a61e8da3">kohonen_som_tracer</a>(X, &W, 0.01); <span class="comment">// train the SOM</span></div>
|
||||
<div class="line"><a id="l00442" name="l00442"></a><span class="lineno"> 442</span> <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67">save_nd_data</a>(<span class="stringliteral">"w32.csv"</span>, W); <span class="comment">// save the resultant weights</span></div>
|
||||
<div class="line"><a id="l00443" name="l00443"></a><span class="lineno"> 443</span>}</div>
|
||||
<div class="ttc" id="akohonen__som__trace_8cpp_html_a7154fe319e6033485a8a6cd6f0d8932d"><div class="ttname"><a href="../../d9/d49/kohonen__som__trace_8cpp.html#a7154fe319e6033485a8a6cd6f0d8932d">test_3d_classes</a></div><div class="ttdeci">void test_3d_classes(std::vector< std::valarray< double > > *data)</div><div class="ttdef"><b>Definition:</b> kohonen_som_trace.cpp:359</div></div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -477,8 +476,8 @@ Here is the call graph for this function:</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a9ab8c79ffb674a63f151f282faeb723b"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a9ab8c79ffb674a63f151f282faeb723b">◆ </a></span>test_3d_classes()</h2>
|
||||
<a id="a7154fe319e6033485a8a6cd6f0d8932d" name="a7154fe319e6033485a8a6cd6f0d8932d"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a7154fe319e6033485a8a6cd6f0d8932d">◆ </a></span>test_3d_classes()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
@@ -486,13 +485,13 @@ Here is the call graph for this function:</div>
|
||||
<tr>
|
||||
<td class="memname">void test_3d_classes </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double >> * </td>
|
||||
<td class="paramtype"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > > * </td>
|
||||
<td class="paramname"><em>data</em></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Creates a random set of points distributed in six clusters in 3D space with centroids at the points</p><ul>
|
||||
<p >Creates a random set of points distributed in six clusters in 3D space with centroids at the points</p><ul>
|
||||
<li>\({0.5, 0.5, 0.5}\)</li>
|
||||
<li>\({0.5, 0.5, -0.5}\)</li>
|
||||
<li>\({0.5, -0.5, 0.5}\)</li>
|
||||
@@ -508,55 +507,55 @@ Here is the call graph for this function:</div>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<div class="fragment"><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>  {</div>
|
||||
<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>  <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a> = <a class="code" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>->size();</div>
|
||||
<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>  <span class="keyword">const</span> <span class="keywordtype">double</span> R = 0.1; <span class="comment">// radius of cluster</span></div>
|
||||
<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>  <span class="keywordtype">int</span> i = 0;</div>
|
||||
<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>  <span class="keyword">const</span> <span class="keywordtype">int</span> num_classes = 8;</div>
|
||||
<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>  <span class="keyword">const</span> <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<const std::array<double, 3></a>, num_classes> centres = {</div>
|
||||
<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>  <span class="comment">// centres of each class cluster</span></div>
|
||||
<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<double, 3></a>({.5, .5, .5}), <span class="comment">// centre of class 0</span></div>
|
||||
<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<double, 3></a>({.5, .5, -.5}), <span class="comment">// centre of class 1</span></div>
|
||||
<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<double, 3></a>({.5, -.5, .5}), <span class="comment">// centre of class 2</span></div>
|
||||
<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<double, 3></a>({.5, -.5, -.5}), <span class="comment">// centre of class 3</span></div>
|
||||
<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<double, 3></a>({-.5, .5, .5}), <span class="comment">// centre of class 4</span></div>
|
||||
<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<double, 3></a>({-.5, .5, -.5}), <span class="comment">// centre of class 5</span></div>
|
||||
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<double, 3></a>({-.5, -.5, .5}), <span class="comment">// centre of class 6</span></div>
|
||||
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<double, 3></a>({-.5, -.5, -.5}) <span class="comment">// centre of class 7</span></div>
|
||||
<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>  };</div>
|
||||
<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>  </div>
|
||||
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
|
||||
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="preprocessor">#pragma omp for</span></div>
|
||||
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="preprocessor">#endif</span></div>
|
||||
<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>  <span class="keywordflow">for</span> (i = 0; i < <a class="code" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a>; i++) {</div>
|
||||
<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>  <span class="keywordtype">int</span> cls =</div>
|
||||
<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/random/rand.html">std::rand</a>() % num_classes; <span class="comment">// select a random class for the point</span></div>
|
||||
<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>  </div>
|
||||
<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>  <span class="comment">// create random coordinates (x,y,z) around the centre of the class</span></div>
|
||||
<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>  <a class="code" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>[0][i][0] = <a class="code" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(centres[cls][0] - R, centres[cls][0] + R);</div>
|
||||
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>  <a class="code" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>[0][i][1] = <a class="code" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(centres[cls][1] - R, centres[cls][1] + R);</div>
|
||||
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>  <a class="code" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>[0][i][2] = <a class="code" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(centres[cls][2] - R, centres[cls][2] + R);</div>
|
||||
<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>  </div>
|
||||
<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>  <span class="comment">/* The follosing can also be used</span></div>
|
||||
<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> <span class="comment"> for (int j = 0; j < 3; j++)</span></div>
|
||||
<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="comment"> data[0][i][j] = _random(centres[cls][j] - R, centres[cls][j] + R);</span></div>
|
||||
<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="comment"> */</span></div>
|
||||
<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>  }</div>
|
||||
<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> }</div>
|
||||
<div class="fragment"><div class="line"><a id="l00359" name="l00359"></a><span class="lineno"> 359</span> {</div>
|
||||
<div class="line"><a id="l00360" name="l00360"></a><span class="lineno"> 360</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code hl_variable" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a> = <a class="code hl_variable" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>->size();</div>
|
||||
<div class="line"><a id="l00361" name="l00361"></a><span class="lineno"> 361</span> <span class="keyword">const</span> <span class="keywordtype">double</span> R = 0.1; <span class="comment">// radius of cluster</span></div>
|
||||
<div class="line"><a id="l00362" name="l00362"></a><span class="lineno"> 362</span> <span class="keywordtype">int</span> i = 0;</div>
|
||||
<div class="line"><a id="l00363" name="l00363"></a><span class="lineno"> 363</span> <span class="keyword">const</span> <span class="keywordtype">int</span> num_classes = 8;</div>
|
||||
<div class="line"><a id="l00364" name="l00364"></a><span class="lineno"> 364</span> <span class="keyword">const</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<const std::array<double, 3></a>, num_classes> centres = {</div>
|
||||
<div class="line"><a id="l00365" name="l00365"></a><span class="lineno"> 365</span> <span class="comment">// centres of each class cluster</span></div>
|
||||
<div class="line"><a id="l00366" name="l00366"></a><span class="lineno"> 366</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<double, 3></a>({.5, .5, .5}), <span class="comment">// centre of class 0</span></div>
|
||||
<div class="line"><a id="l00367" name="l00367"></a><span class="lineno"> 367</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<double, 3></a>({.5, .5, -.5}), <span class="comment">// centre of class 1</span></div>
|
||||
<div class="line"><a id="l00368" name="l00368"></a><span class="lineno"> 368</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<double, 3></a>({.5, -.5, .5}), <span class="comment">// centre of class 2</span></div>
|
||||
<div class="line"><a id="l00369" name="l00369"></a><span class="lineno"> 369</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<double, 3></a>({.5, -.5, -.5}), <span class="comment">// centre of class 3</span></div>
|
||||
<div class="line"><a id="l00370" name="l00370"></a><span class="lineno"> 370</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<double, 3></a>({-.5, .5, .5}), <span class="comment">// centre of class 4</span></div>
|
||||
<div class="line"><a id="l00371" name="l00371"></a><span class="lineno"> 371</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<double, 3></a>({-.5, .5, -.5}), <span class="comment">// centre of class 5</span></div>
|
||||
<div class="line"><a id="l00372" name="l00372"></a><span class="lineno"> 372</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<double, 3></a>({-.5, -.5, .5}), <span class="comment">// centre of class 6</span></div>
|
||||
<div class="line"><a id="l00373" name="l00373"></a><span class="lineno"> 373</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array<double, 3></a>({-.5, -.5, -.5}) <span class="comment">// centre of class 7</span></div>
|
||||
<div class="line"><a id="l00374" name="l00374"></a><span class="lineno"> 374</span> };</div>
|
||||
<div class="line"><a id="l00375" name="l00375"></a><span class="lineno"> 375</span> </div>
|
||||
<div class="line"><a id="l00376" name="l00376"></a><span class="lineno"> 376</span><span class="preprocessor">#ifdef _OPENMP</span></div>
|
||||
<div class="line"><a id="l00377" name="l00377"></a><span class="lineno"> 377</span><span class="preprocessor">#pragma omp for</span></div>
|
||||
<div class="line"><a id="l00378" name="l00378"></a><span class="lineno"> 378</span><span class="preprocessor">#endif</span></div>
|
||||
<div class="line"><a id="l00379" name="l00379"></a><span class="lineno"> 379</span> <span class="keywordflow">for</span> (i = 0; i < <a class="code hl_variable" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a>; i++) {</div>
|
||||
<div class="line"><a id="l00380" name="l00380"></a><span class="lineno"> 380</span> <span class="keywordtype">int</span> cls =</div>
|
||||
<div class="line"><a id="l00381" name="l00381"></a><span class="lineno"> 381</span> <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/random/rand.html">std::rand</a>() % num_classes; <span class="comment">// select a random class for the point</span></div>
|
||||
<div class="line"><a id="l00382" name="l00382"></a><span class="lineno"> 382</span> </div>
|
||||
<div class="line"><a id="l00383" name="l00383"></a><span class="lineno"> 383</span> <span class="comment">// create random coordinates (x,y,z) around the centre of the class</span></div>
|
||||
<div class="line"><a id="l00384" name="l00384"></a><span class="lineno"> 384</span> <a class="code hl_variable" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>[0][i][0] = <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(centres[cls][0] - R, centres[cls][0] + R);</div>
|
||||
<div class="line"><a id="l00385" name="l00385"></a><span class="lineno"> 385</span> <a class="code hl_variable" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>[0][i][1] = <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(centres[cls][1] - R, centres[cls][1] + R);</div>
|
||||
<div class="line"><a id="l00386" name="l00386"></a><span class="lineno"> 386</span> <a class="code hl_variable" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>[0][i][2] = <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(centres[cls][2] - R, centres[cls][2] + R);</div>
|
||||
<div class="line"><a id="l00387" name="l00387"></a><span class="lineno"> 387</span> </div>
|
||||
<div class="line"><a id="l00388" name="l00388"></a><span class="lineno"> 388</span> <span class="comment">/* The follosing can also be used</span></div>
|
||||
<div class="line"><a id="l00389" name="l00389"></a><span class="lineno"> 389</span><span class="comment"> for (int j = 0; j < 3; j++)</span></div>
|
||||
<div class="line"><a id="l00390" name="l00390"></a><span class="lineno"> 390</span><span class="comment"> data[0][i][j] = _random(centres[cls][j] - R, centres[cls][j] + R);</span></div>
|
||||
<div class="line"><a id="l00391" name="l00391"></a><span class="lineno"> 391</span><span class="comment"> */</span></div>
|
||||
<div class="line"><a id="l00392" name="l00392"></a><span class="lineno"> 392</span> }</div>
|
||||
<div class="line"><a id="l00393" name="l00393"></a><span class="lineno"> 393</span>}</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="ahash__search_8cpp_html_a6e1a77282bc65ad359d753d25df23243"><div class="ttname"><a href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a></div><div class="ttdeci">int data[MAX]</div><div class="ttdoc">test data</div><div class="ttdef"><b>Definition:</b> hash_search.cpp:24</div></div>
|
||||
<div class="ttc" id="arand_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/numeric/random/rand.html">std::rand</a></div><div class="ttdeci">T rand(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="../../d9/d49/kohonen__som__trace_8cpp_a9ab8c79ffb674a63f151f282faeb723b_cgraph.svg" width="372" height="63"><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="../../d9/d49/kohonen__som__trace_8cpp_a7154fe319e6033485a8a6cd6f0d8932d_cgraph.svg" width="372" height="63"><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="ab47fb569e63648bd76e7edfdacc02dbd"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ab47fb569e63648bd76e7edfdacc02dbd">◆ </a></span>test_circle()</h2>
|
||||
<a id="ae571600aa42a81bc14a4a602ea5ff00d" name="ae571600aa42a81bc14a4a602ea5ff00d"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ae571600aa42a81bc14a4a602ea5ff00d">◆ </a></span>test_circle()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
@@ -564,13 +563,13 @@ Here is the call graph for this function:</div>
|
||||
<tr>
|
||||
<td class="memname">void test_circle </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double >> * </td>
|
||||
<td class="paramtype"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > > * </td>
|
||||
<td class="paramname"><em>data</em></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Creates a random set of points distributed <em>near</em> the circumference of a circle and trains an SOM that finds that circular pattern. The generating function is </p><p class="formulaDsp">
|
||||
<p >Creates a random set of points distributed <em>near</em> the circumference of a circle and trains an SOM that finds that circular pattern. The generating function is </p><p class="formulaDsp">
|
||||
\begin{eqnarray*} r &\in& [1-\delta r, 1+\delta r)\\ \theta &\in& [0, 2\pi)\\ x &=& r\cos\theta\\ y &=& r\sin\theta \end{eqnarray*}
|
||||
</p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
@@ -579,36 +578,36 @@ Here is the call graph for this function:</div>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<div class="fragment"><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>  {</div>
|
||||
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>  <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a> = <a class="code" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>->size();</div>
|
||||
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>  <span class="keyword">const</span> <span class="keywordtype">double</span> R = 0.75, dr = 0.3;</div>
|
||||
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>  <span class="keywordtype">double</span> a_t = 0., b_t = 2.f * M_PI; <span class="comment">// theta random between 0 and 2*pi</span></div>
|
||||
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  <span class="keywordtype">double</span> a_r = R - dr, b_r = R + dr; <span class="comment">// radius random between R-dr and R+dr</span></div>
|
||||
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  <span class="keywordtype">int</span> i = 0;</div>
|
||||
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  </div>
|
||||
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
|
||||
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="preprocessor">#pragma omp for</span></div>
|
||||
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="preprocessor">#endif</span></div>
|
||||
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  <span class="keywordflow">for</span> (i = 0; i < <a class="code" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a>; i++) {</div>
|
||||
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  <span class="keywordtype">double</span> r = <a class="code" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(a_r, b_r); <span class="comment">// random radius</span></div>
|
||||
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>  <span class="keywordtype">double</span> theta = <a class="code" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(a_t, b_t); <span class="comment">// random theta</span></div>
|
||||
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  <a class="code" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>[0][i][0] = r * <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/cos.html">cos</a>(theta); <span class="comment">// convert from polar to cartesian</span></div>
|
||||
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  <a class="code" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>[0][i][1] = r * <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/sin.html">sin</a>(theta);</div>
|
||||
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  }</div>
|
||||
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> }</div>
|
||||
<div class="fragment"><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> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code hl_variable" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a> = <a class="code hl_variable" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>->size();</div>
|
||||
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> <span class="keyword">const</span> <span class="keywordtype">double</span> R = 0.75, dr = 0.3;</div>
|
||||
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> <span class="keywordtype">double</span> a_t = 0., b_t = 2.f * M_PI; <span class="comment">// theta random between 0 and 2*pi</span></div>
|
||||
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> <span class="keywordtype">double</span> a_r = R - dr, b_r = R + dr; <span class="comment">// radius random between R-dr and R+dr</span></div>
|
||||
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> <span class="keywordtype">int</span> i = 0;</div>
|
||||
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> </div>
|
||||
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span><span class="preprocessor">#ifdef _OPENMP</span></div>
|
||||
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span><span class="preprocessor">#pragma omp for</span></div>
|
||||
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span><span class="preprocessor">#endif</span></div>
|
||||
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> <span class="keywordflow">for</span> (i = 0; i < <a class="code hl_variable" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a>; i++) {</div>
|
||||
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> <span class="keywordtype">double</span> r = <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(a_r, b_r); <span class="comment">// random radius</span></div>
|
||||
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> <span class="keywordtype">double</span> theta = <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(a_t, b_t); <span class="comment">// random theta</span></div>
|
||||
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> <a class="code hl_variable" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>[0][i][0] = r * <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/cos.html">cos</a>(theta); <span class="comment">// convert from polar to cartesian</span></div>
|
||||
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> <a class="code hl_variable" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>[0][i][1] = r * <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/sin.html">sin</a>(theta);</div>
|
||||
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> }</div>
|
||||
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</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 class="ttc" id="asin_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/numeric/math/sin.html">std::sin</a></div><div class="ttdeci">T sin(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="../../d9/d49/kohonen__som__trace_8cpp_ab47fb569e63648bd76e7edfdacc02dbd_cgraph.svg" width="338" height="38"><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="../../d9/d49/kohonen__som__trace_8cpp_ae571600aa42a81bc14a4a602ea5ff00d_cgraph.svg" width="338" 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>
|
||||
</div>
|
||||
<a id="a412b7afa156306b1f8788643c91a1c60"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a412b7afa156306b1f8788643c91a1c60">◆ </a></span>test_lamniscate()</h2>
|
||||
<a id="a53082f2e5bacec40266499da4547309a" name="a53082f2e5bacec40266499da4547309a"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a53082f2e5bacec40266499da4547309a">◆ </a></span>test_lamniscate()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
@@ -616,13 +615,13 @@ Here is the call graph for this function:</div>
|
||||
<tr>
|
||||
<td class="memname">void test_lamniscate </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double >> * </td>
|
||||
<td class="paramtype"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > > * </td>
|
||||
<td class="paramname"><em>data</em></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Creates a random set of points distributed <em>near</em> the locus of the <a href="https://en.wikipedia.org/wiki/Lemniscate_of_Gerono">Lamniscate of Gerono</a>. </p><p class="formulaDsp">
|
||||
<p >Creates a random set of points distributed <em>near</em> the locus of the <a href="https://en.wikipedia.org/wiki/Lemniscate_of_Gerono" target="_blank">Lamniscate of Gerono</a>. </p><p class="formulaDsp">
|
||||
\begin{eqnarray*} \delta r &=& 0.2\\ \delta x &\in& [-\delta r, \delta r)\\ \delta y &\in& [-\delta r, \delta r)\\ \theta &\in& [0, \pi)\\ x &=& \delta x + \cos\theta\\ y &=& \delta y + \frac{\sin(2\theta)}{2} \end{eqnarray*}
|
||||
</p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
@@ -631,26 +630,26 @@ Here is the call graph for this function:</div>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<div class="fragment"><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>  {</div>
|
||||
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a> = <a class="code" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>->size();</div>
|
||||
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>  <span class="keyword">const</span> <span class="keywordtype">double</span> dr = 0.2;</div>
|
||||
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  <span class="keywordtype">int</span> i = 0;</div>
|
||||
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>  </div>
|
||||
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
|
||||
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="preprocessor">#pragma omp for</span></div>
|
||||
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="preprocessor">#endif</span></div>
|
||||
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>  <span class="keywordflow">for</span> (i = 0; i < <a class="code" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a>; i++) {</div>
|
||||
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>  <span class="keywordtype">double</span> dx = <a class="code" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(-dr, dr); <span class="comment">// random change in x</span></div>
|
||||
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>  <span class="keywordtype">double</span> dy = <a class="code" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(-dr, dr); <span class="comment">// random change in y</span></div>
|
||||
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>  <span class="keywordtype">double</span> theta = <a class="code" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(0, M_PI); <span class="comment">// random theta</span></div>
|
||||
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>  <a class="code" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>[0][i][0] = dx + <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/cos.html">cos</a>(theta); <span class="comment">// convert from polar to cartesian</span></div>
|
||||
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>  <a class="code" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>[0][i][1] = dy + <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/sin.html">sin</a>(2. * theta) / 2.f;</div>
|
||||
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>  }</div>
|
||||
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> }</div>
|
||||
<div class="fragment"><div class="line"><a id="l00277" name="l00277"></a><span class="lineno"> 277</span> {</div>
|
||||
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"> 278</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code hl_variable" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a> = <a class="code hl_variable" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>->size();</div>
|
||||
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno"> 279</span> <span class="keyword">const</span> <span class="keywordtype">double</span> dr = 0.2;</div>
|
||||
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span> <span class="keywordtype">int</span> i = 0;</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="preprocessor">#ifdef _OPENMP</span></div>
|
||||
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"> 283</span><span class="preprocessor">#pragma omp for</span></div>
|
||||
<div class="line"><a id="l00284" name="l00284"></a><span class="lineno"> 284</span><span class="preprocessor">#endif</span></div>
|
||||
<div class="line"><a id="l00285" name="l00285"></a><span class="lineno"> 285</span> <span class="keywordflow">for</span> (i = 0; i < <a class="code hl_variable" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a>; i++) {</div>
|
||||
<div class="line"><a id="l00286" name="l00286"></a><span class="lineno"> 286</span> <span class="keywordtype">double</span> dx = <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(-dr, dr); <span class="comment">// random change in x</span></div>
|
||||
<div class="line"><a id="l00287" name="l00287"></a><span class="lineno"> 287</span> <span class="keywordtype">double</span> dy = <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(-dr, dr); <span class="comment">// random change in y</span></div>
|
||||
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno"> 288</span> <span class="keywordtype">double</span> theta = <a class="code hl_function" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a>(0, M_PI); <span class="comment">// random theta</span></div>
|
||||
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"> 289</span> <a class="code hl_variable" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>[0][i][0] = dx + <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/cos.html">cos</a>(theta); <span class="comment">// convert from polar to cartesian</span></div>
|
||||
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno"> 290</span> <a class="code hl_variable" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>[0][i][1] = dy + <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/math/sin.html">sin</a>(2. * theta) / 2.f;</div>
|
||||
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"> 291</span> }</div>
|
||||
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"> 292</span>}</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="../../d9/d49/kohonen__som__trace_8cpp_a412b7afa156306b1f8788643c91a1c60_cgraph.svg" width="370" height="38"><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="../../d9/d49/kohonen__som__trace_8cpp_a53082f2e5bacec40266499da4547309a_cgraph.svg" width="370" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -662,7 +661,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_3343723ae086de42ee4ca9774da3a13f.html">machine_learning</a></li><li class="navelem"><a class="el" href="../../d9/d49/kohonen__som__trace_8cpp.html">kohonen_som_trace.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>
|
||||
|
||||
@@ -1,16 +1,15 @@
|
||||
var kohonen__som__trace_8cpp =
|
||||
[
|
||||
[ "_USE_MATH_DEFINES", "d9/d66/group__machine__learning.html#ga525335710b53cb064ca56b936120431e", null ],
|
||||
[ "_random", "d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485", null ],
|
||||
[ "get_clock_diff", "d9/d49/kohonen__som__trace_8cpp.html#a2256c10b16edba377b64a44b6c656908", null ],
|
||||
[ "kohonen_som_tracer", "d9/d49/kohonen__som__trace_8cpp.html#acc6a28f40512dbda75ab1a3969248898", null ],
|
||||
[ "kohonen_som_tracer", "d9/d49/kohonen__som__trace_8cpp.html#a042f435bca0839e721fc1574a61e8da3", null ],
|
||||
[ "main", "d9/d49/kohonen__som__trace_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627", null ],
|
||||
[ "save_nd_data", "d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa", null ],
|
||||
[ "save_nd_data", "d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67", null ],
|
||||
[ "test1", "d9/d49/kohonen__som__trace_8cpp.html#a1440a7779ac56f47a3f355ce4a8c7da0", null ],
|
||||
[ "test2", "d9/d49/kohonen__som__trace_8cpp.html#a0283886819c7c140a023582b7269e2d0", null ],
|
||||
[ "test3", "d9/d49/kohonen__som__trace_8cpp.html#a6d0455dd5c30adda100e95f0423c786e", null ],
|
||||
[ "test_3d_classes", "d9/d49/kohonen__som__trace_8cpp.html#a9ab8c79ffb674a63f151f282faeb723b", null ],
|
||||
[ "test_circle", "d9/d49/kohonen__som__trace_8cpp.html#ab47fb569e63648bd76e7edfdacc02dbd", null ],
|
||||
[ "test_lamniscate", "d9/d49/kohonen__som__trace_8cpp.html#a412b7afa156306b1f8788643c91a1c60", null ],
|
||||
[ "update_weights", "d9/d49/kohonen__som__trace_8cpp.html#a361674452869413536ee501f053129a8", null ]
|
||||
[ "test_3d_classes", "d9/d49/kohonen__som__trace_8cpp.html#a7154fe319e6033485a8a6cd6f0d8932d", null ],
|
||||
[ "test_circle", "d9/d49/kohonen__som__trace_8cpp.html#ae571600aa42a81bc14a4a602ea5ff00d", null ],
|
||||
[ "test_lamniscate", "d9/d49/kohonen__som__trace_8cpp.html#a53082f2e5bacec40266499da4547309a", null ],
|
||||
[ "update_weights", "d9/d49/kohonen__som__trace_8cpp.html#aa6aac06ccf128b0a9c55c9ee1a8e5631", null ]
|
||||
];
|
||||
@@ -1,17 +1,17 @@
|
||||
<map id="test2" name="test2">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,183,56,209"/>
|
||||
<area shape="rect" id="node2" href="$d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485" title=" " alt="" coords="388,73,463,100"/>
|
||||
<area shape="rect" id="node4" href="$d8/d77/namespacemachine__learning.html#acc6a28f40512dbda75ab1a3969248898" title=" " alt="" coords="104,175,289,217"/>
|
||||
<area shape="rect" id="node4" href="$d8/d77/namespacemachine__learning.html#a042f435bca0839e721fc1574a61e8da3" title=" " alt="" coords="104,175,289,217"/>
|
||||
<area shape="rect" id="node12" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/max.html#" title=" " alt="" coords="605,309,677,336"/>
|
||||
<area shape="rect" id="node16" href="$d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa" title=" " alt="" coords="144,317,249,344"/>
|
||||
<area shape="rect" id="node20" href="$d9/d49/kohonen__som__trace_8cpp.html#a412b7afa156306b1f8788643c91a1c60" title=" " alt="" coords="139,124,254,151"/>
|
||||
<area shape="rect" id="node16" href="$d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67" title=" " alt="" coords="144,317,249,344"/>
|
||||
<area shape="rect" id="node20" href="$d9/d49/kohonen__som__trace_8cpp.html#a53082f2e5bacec40266499da4547309a" title=" " alt="" coords="139,124,254,151"/>
|
||||
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/random/rand.html#" title=" " alt="" coords="605,5,678,32"/>
|
||||
<area shape="rect" id="node5" href="$d8/d77/namespacemachine__learning.html#ac4010fe3a52a74e8b5b1aaadfe38b46f" title=" " alt="" coords="337,175,513,217"/>
|
||||
<area shape="rect" id="node5" href="$d8/d77/namespacemachine__learning.html#ae868ad43698a1d69ba46ea3827d7d2c3" title=" " alt="" coords="337,175,513,217"/>
|
||||
<area shape="rect" id="node6" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/math/exp.html#" title=" " alt="" coords="607,56,676,83"/>
|
||||
<area shape="rect" id="node7" href="$d9/d66/group__machine__learning.html#gab53c14440b2b2dd3172c66afc5c2f63f" title=" " alt="" coords="595,107,687,133"/>
|
||||
<area shape="rect" id="node7" href="$d9/d66/group__machine__learning.html#ga60f9186ccb682724a8792a2bf81e9b9e" title=" " alt="" coords="595,107,687,133"/>
|
||||
<area shape="rect" id="node13" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/min.html#" title=" " alt="" coords="607,157,676,184"/>
|
||||
<area shape="rect" id="node14" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/math/sqrt.html#" title=" " alt="" coords="607,208,676,235"/>
|
||||
<area shape="rect" id="node15" href="$d8/d77/namespacemachine__learning.html#a5305cc18d11943d3dc0d66e70d7e9c44" title=" " alt="" coords="561,259,721,285"/>
|
||||
<area shape="rect" id="node15" href="$d8/d77/namespacemachine__learning.html#a6f1c98c016ad34ff3d9f39372161bd35" title=" " alt="" coords="561,259,721,285"/>
|
||||
<area shape="rect" id="node8" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/iterator/begin.html#" title=" " alt="" coords="791,31,871,57"/>
|
||||
<area shape="rect" id="node9" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/iterator/distance.html#" title=" " alt="" coords="783,81,880,108"/>
|
||||
<area shape="rect" id="node10" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/iterator/end.html#" title=" " alt="" coords="797,132,866,159"/>
|
||||
|
||||
@@ -1 +1 @@
|
||||
30c062c89ac03d89285ddafd69d7e04e
|
||||
a64501d930e1c47687c0df77a0b4a856
|
||||
@@ -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: test2 Pages: 1 -->
|
||||
<!--zoomable 319 -->
|
||||
@@ -82,7 +82,7 @@ var sectionId = 'dynsection-3';
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../d8/d77/namespacemachine__learning.html#acc6a28f40512dbda75ab1a3969248898" target="_top" xlink:title=" ">
|
||||
<g id="a_node4"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a042f435bca0839e721fc1574a61e8da3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-153 74,-183 213,-183 213,-153 74,-153"/>
|
||||
<text text-anchor="start" x="82" y="-171" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::kohonen</text>
|
||||
<text text-anchor="middle" x="143.5" y="-160" font-family="Helvetica,sans-Serif" font-size="10.00">_som_tracer</text>
|
||||
@@ -113,7 +113,7 @@ var sectionId = 'dynsection-3';
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a xlink:href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa" target="_top" xlink:title=" ">
|
||||
<g id="a_node16"><a xlink:href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="104,-57.5 104,-76.5 183,-76.5 183,-57.5 104,-57.5"/>
|
||||
<text text-anchor="middle" x="143.5" y="-64.5" font-family="Helvetica,sans-Serif" font-size="10.00">save_nd_data</text>
|
||||
</a>
|
||||
@@ -128,7 +128,7 @@ var sectionId = 'dynsection-3';
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#a412b7afa156306b1f8788643c91a1c60" target="_top" xlink:title=" ">
|
||||
<g id="a_node20"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#a53082f2e5bacec40266499da4547309a" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="100.5,-202.5 100.5,-221.5 186.5,-221.5 186.5,-202.5 100.5,-202.5"/>
|
||||
<text text-anchor="middle" x="143.5" y="-209.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_lamniscate</text>
|
||||
</a>
|
||||
@@ -158,7 +158,7 @@ var sectionId = 'dynsection-3';
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../d8/d77/namespacemachine__learning.html#ac4010fe3a52a74e8b5b1aaadfe38b46f" target="_top" xlink:title=" ">
|
||||
<g id="a_node5"><a xlink:href="../../d8/d77/namespacemachine__learning.html#ae868ad43698a1d69ba46ea3827d7d2c3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="249,-153 249,-183 381,-183 381,-153 249,-153"/>
|
||||
<text text-anchor="start" x="257" y="-171" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::update</text>
|
||||
<text text-anchor="middle" x="315" y="-160" font-family="Helvetica,sans-Serif" font-size="10.00">_weights</text>
|
||||
@@ -189,7 +189,7 @@ var sectionId = 'dynsection-3';
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a xlink:href="../../d9/d66/group__machine__learning.html#gab53c14440b2b2dd3172c66afc5c2f63f" target="_top" xlink:title=" ">
|
||||
<g id="a_node7"><a xlink:href="../../d9/d66/group__machine__learning.html#ga60f9186ccb682724a8792a2bf81e9b9e" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="442.5,-215.5 442.5,-234.5 511.5,-234.5 511.5,-215.5 442.5,-215.5"/>
|
||||
<text text-anchor="middle" x="477" y="-222.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_min_2d</text>
|
||||
</a>
|
||||
@@ -240,7 +240,7 @@ var sectionId = 'dynsection-3';
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a5305cc18d11943d3dc0d66e70d7e9c44" target="_top" xlink:title=" ">
|
||||
<g id="a_node15"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a6f1c98c016ad34ff3d9f39372161bd35" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="417,-101.5 417,-120.5 537,-120.5 537,-101.5 417,-101.5"/>
|
||||
<text text-anchor="middle" x="477" y="-108.5" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::sum</text>
|
||||
</a>
|
||||
|
||||
|
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 21 KiB |
@@ -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: test2 Pages: 1 -->
|
||||
<svg width="674pt" height="319pt"
|
||||
@@ -36,7 +36,7 @@
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../d8/d77/namespacemachine__learning.html#acc6a28f40512dbda75ab1a3969248898" target="_top" xlink:title=" ">
|
||||
<g id="a_node4"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a042f435bca0839e721fc1574a61e8da3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-153 74,-183 213,-183 213,-153 74,-153"/>
|
||||
<text text-anchor="start" x="82" y="-171" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::kohonen</text>
|
||||
<text text-anchor="middle" x="143.5" y="-160" font-family="Helvetica,sans-Serif" font-size="10.00">_som_tracer</text>
|
||||
@@ -67,7 +67,7 @@
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a xlink:href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa" target="_top" xlink:title=" ">
|
||||
<g id="a_node16"><a xlink:href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="104,-57.5 104,-76.5 183,-76.5 183,-57.5 104,-57.5"/>
|
||||
<text text-anchor="middle" x="143.5" y="-64.5" font-family="Helvetica,sans-Serif" font-size="10.00">save_nd_data</text>
|
||||
</a>
|
||||
@@ -82,7 +82,7 @@
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#a412b7afa156306b1f8788643c91a1c60" target="_top" xlink:title=" ">
|
||||
<g id="a_node20"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#a53082f2e5bacec40266499da4547309a" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="100.5,-202.5 100.5,-221.5 186.5,-221.5 186.5,-202.5 100.5,-202.5"/>
|
||||
<text text-anchor="middle" x="143.5" y="-209.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_lamniscate</text>
|
||||
</a>
|
||||
@@ -112,7 +112,7 @@
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../d8/d77/namespacemachine__learning.html#ac4010fe3a52a74e8b5b1aaadfe38b46f" target="_top" xlink:title=" ">
|
||||
<g id="a_node5"><a xlink:href="../../d8/d77/namespacemachine__learning.html#ae868ad43698a1d69ba46ea3827d7d2c3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="249,-153 249,-183 381,-183 381,-153 249,-153"/>
|
||||
<text text-anchor="start" x="257" y="-171" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::update</text>
|
||||
<text text-anchor="middle" x="315" y="-160" font-family="Helvetica,sans-Serif" font-size="10.00">_weights</text>
|
||||
@@ -143,7 +143,7 @@
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a xlink:href="../../d9/d66/group__machine__learning.html#gab53c14440b2b2dd3172c66afc5c2f63f" target="_top" xlink:title=" ">
|
||||
<g id="a_node7"><a xlink:href="../../d9/d66/group__machine__learning.html#ga60f9186ccb682724a8792a2bf81e9b9e" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="442.5,-215.5 442.5,-234.5 511.5,-234.5 511.5,-215.5 442.5,-215.5"/>
|
||||
<text text-anchor="middle" x="477" y="-222.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_min_2d</text>
|
||||
</a>
|
||||
@@ -194,7 +194,7 @@
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a5305cc18d11943d3dc0d66e70d7e9c44" target="_top" xlink:title=" ">
|
||||
<g id="a_node15"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a6f1c98c016ad34ff3d9f39372161bd35" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="417,-101.5 417,-120.5 537,-120.5 537,-101.5 417,-101.5"/>
|
||||
<text text-anchor="middle" x="477" y="-108.5" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::sum</text>
|
||||
</a>
|
||||
|
||||
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
@@ -1,17 +1,17 @@
|
||||
<map id="test1" name="test1">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,183,56,209"/>
|
||||
<area shape="rect" id="node2" href="$d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485" title=" " alt="" coords="388,73,463,100"/>
|
||||
<area shape="rect" id="node4" href="$d8/d77/namespacemachine__learning.html#acc6a28f40512dbda75ab1a3969248898" title=" " alt="" coords="104,175,289,217"/>
|
||||
<area shape="rect" id="node4" href="$d8/d77/namespacemachine__learning.html#a042f435bca0839e721fc1574a61e8da3" title=" " alt="" coords="104,175,289,217"/>
|
||||
<area shape="rect" id="node12" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/max.html#" title=" " alt="" coords="605,309,677,336"/>
|
||||
<area shape="rect" id="node16" href="$d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa" title=" " alt="" coords="144,317,249,344"/>
|
||||
<area shape="rect" id="node20" href="$d9/d49/kohonen__som__trace_8cpp.html#ab47fb569e63648bd76e7edfdacc02dbd" title=" " alt="" coords="155,124,238,151"/>
|
||||
<area shape="rect" id="node16" href="$d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67" title=" " alt="" coords="144,317,249,344"/>
|
||||
<area shape="rect" id="node20" href="$d9/d49/kohonen__som__trace_8cpp.html#ae571600aa42a81bc14a4a602ea5ff00d" title=" " alt="" coords="155,124,238,151"/>
|
||||
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/random/rand.html#" title=" " alt="" coords="605,5,678,32"/>
|
||||
<area shape="rect" id="node5" href="$d8/d77/namespacemachine__learning.html#ac4010fe3a52a74e8b5b1aaadfe38b46f" title=" " alt="" coords="337,175,513,217"/>
|
||||
<area shape="rect" id="node5" href="$d8/d77/namespacemachine__learning.html#ae868ad43698a1d69ba46ea3827d7d2c3" title=" " alt="" coords="337,175,513,217"/>
|
||||
<area shape="rect" id="node6" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/math/exp.html#" title=" " alt="" coords="607,56,676,83"/>
|
||||
<area shape="rect" id="node7" href="$d9/d66/group__machine__learning.html#gab53c14440b2b2dd3172c66afc5c2f63f" title=" " alt="" coords="595,107,687,133"/>
|
||||
<area shape="rect" id="node7" href="$d9/d66/group__machine__learning.html#ga60f9186ccb682724a8792a2bf81e9b9e" title=" " alt="" coords="595,107,687,133"/>
|
||||
<area shape="rect" id="node13" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/min.html#" title=" " alt="" coords="607,157,676,184"/>
|
||||
<area shape="rect" id="node14" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/math/sqrt.html#" title=" " alt="" coords="607,208,676,235"/>
|
||||
<area shape="rect" id="node15" href="$d8/d77/namespacemachine__learning.html#a5305cc18d11943d3dc0d66e70d7e9c44" title=" " alt="" coords="561,259,721,285"/>
|
||||
<area shape="rect" id="node15" href="$d8/d77/namespacemachine__learning.html#a6f1c98c016ad34ff3d9f39372161bd35" title=" " alt="" coords="561,259,721,285"/>
|
||||
<area shape="rect" id="node8" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/iterator/begin.html#" title=" " alt="" coords="791,31,871,57"/>
|
||||
<area shape="rect" id="node9" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/iterator/distance.html#" title=" " alt="" coords="783,81,880,108"/>
|
||||
<area shape="rect" id="node10" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/iterator/end.html#" title=" " alt="" coords="797,132,866,159"/>
|
||||
|
||||
@@ -1 +1 @@
|
||||
9dd2ffe6458a177be845c2826e25b2e2
|
||||
b548d0d3988c44c26a6fdc9a79270b5d
|
||||
@@ -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: test1 Pages: 1 -->
|
||||
<!--zoomable 319 -->
|
||||
@@ -82,7 +82,7 @@ var sectionId = 'dynsection-2';
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../d8/d77/namespacemachine__learning.html#acc6a28f40512dbda75ab1a3969248898" target="_top" xlink:title=" ">
|
||||
<g id="a_node4"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a042f435bca0839e721fc1574a61e8da3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-153 74,-183 213,-183 213,-153 74,-153"/>
|
||||
<text text-anchor="start" x="82" y="-171" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::kohonen</text>
|
||||
<text text-anchor="middle" x="143.5" y="-160" font-family="Helvetica,sans-Serif" font-size="10.00">_som_tracer</text>
|
||||
@@ -113,7 +113,7 @@ var sectionId = 'dynsection-2';
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a xlink:href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa" target="_top" xlink:title=" ">
|
||||
<g id="a_node16"><a xlink:href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="104,-57.5 104,-76.5 183,-76.5 183,-57.5 104,-57.5"/>
|
||||
<text text-anchor="middle" x="143.5" y="-64.5" font-family="Helvetica,sans-Serif" font-size="10.00">save_nd_data</text>
|
||||
</a>
|
||||
@@ -128,7 +128,7 @@ var sectionId = 'dynsection-2';
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#ab47fb569e63648bd76e7edfdacc02dbd" target="_top" xlink:title=" ">
|
||||
<g id="a_node20"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#ae571600aa42a81bc14a4a602ea5ff00d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="112.5,-202.5 112.5,-221.5 174.5,-221.5 174.5,-202.5 112.5,-202.5"/>
|
||||
<text text-anchor="middle" x="143.5" y="-209.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_circle</text>
|
||||
</a>
|
||||
@@ -158,7 +158,7 @@ var sectionId = 'dynsection-2';
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../d8/d77/namespacemachine__learning.html#ac4010fe3a52a74e8b5b1aaadfe38b46f" target="_top" xlink:title=" ">
|
||||
<g id="a_node5"><a xlink:href="../../d8/d77/namespacemachine__learning.html#ae868ad43698a1d69ba46ea3827d7d2c3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="249,-153 249,-183 381,-183 381,-153 249,-153"/>
|
||||
<text text-anchor="start" x="257" y="-171" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::update</text>
|
||||
<text text-anchor="middle" x="315" y="-160" font-family="Helvetica,sans-Serif" font-size="10.00">_weights</text>
|
||||
@@ -189,7 +189,7 @@ var sectionId = 'dynsection-2';
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a xlink:href="../../d9/d66/group__machine__learning.html#gab53c14440b2b2dd3172c66afc5c2f63f" target="_top" xlink:title=" ">
|
||||
<g id="a_node7"><a xlink:href="../../d9/d66/group__machine__learning.html#ga60f9186ccb682724a8792a2bf81e9b9e" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="442.5,-215.5 442.5,-234.5 511.5,-234.5 511.5,-215.5 442.5,-215.5"/>
|
||||
<text text-anchor="middle" x="477" y="-222.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_min_2d</text>
|
||||
</a>
|
||||
@@ -240,7 +240,7 @@ var sectionId = 'dynsection-2';
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a5305cc18d11943d3dc0d66e70d7e9c44" target="_top" xlink:title=" ">
|
||||
<g id="a_node15"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a6f1c98c016ad34ff3d9f39372161bd35" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="417,-101.5 417,-120.5 537,-120.5 537,-101.5 417,-101.5"/>
|
||||
<text text-anchor="middle" x="477" y="-108.5" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::sum</text>
|
||||
</a>
|
||||
|
||||
|
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 21 KiB |
@@ -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: test1 Pages: 1 -->
|
||||
<svg width="674pt" height="319pt"
|
||||
@@ -36,7 +36,7 @@
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../d8/d77/namespacemachine__learning.html#acc6a28f40512dbda75ab1a3969248898" target="_top" xlink:title=" ">
|
||||
<g id="a_node4"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a042f435bca0839e721fc1574a61e8da3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-153 74,-183 213,-183 213,-153 74,-153"/>
|
||||
<text text-anchor="start" x="82" y="-171" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::kohonen</text>
|
||||
<text text-anchor="middle" x="143.5" y="-160" font-family="Helvetica,sans-Serif" font-size="10.00">_som_tracer</text>
|
||||
@@ -67,7 +67,7 @@
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a xlink:href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa" target="_top" xlink:title=" ">
|
||||
<g id="a_node16"><a xlink:href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="104,-57.5 104,-76.5 183,-76.5 183,-57.5 104,-57.5"/>
|
||||
<text text-anchor="middle" x="143.5" y="-64.5" font-family="Helvetica,sans-Serif" font-size="10.00">save_nd_data</text>
|
||||
</a>
|
||||
@@ -82,7 +82,7 @@
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#ab47fb569e63648bd76e7edfdacc02dbd" target="_top" xlink:title=" ">
|
||||
<g id="a_node20"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#ae571600aa42a81bc14a4a602ea5ff00d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="112.5,-202.5 112.5,-221.5 174.5,-221.5 174.5,-202.5 112.5,-202.5"/>
|
||||
<text text-anchor="middle" x="143.5" y="-209.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_circle</text>
|
||||
</a>
|
||||
@@ -112,7 +112,7 @@
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../d8/d77/namespacemachine__learning.html#ac4010fe3a52a74e8b5b1aaadfe38b46f" target="_top" xlink:title=" ">
|
||||
<g id="a_node5"><a xlink:href="../../d8/d77/namespacemachine__learning.html#ae868ad43698a1d69ba46ea3827d7d2c3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="249,-153 249,-183 381,-183 381,-153 249,-153"/>
|
||||
<text text-anchor="start" x="257" y="-171" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::update</text>
|
||||
<text text-anchor="middle" x="315" y="-160" font-family="Helvetica,sans-Serif" font-size="10.00">_weights</text>
|
||||
@@ -143,7 +143,7 @@
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a xlink:href="../../d9/d66/group__machine__learning.html#gab53c14440b2b2dd3172c66afc5c2f63f" target="_top" xlink:title=" ">
|
||||
<g id="a_node7"><a xlink:href="../../d9/d66/group__machine__learning.html#ga60f9186ccb682724a8792a2bf81e9b9e" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="442.5,-215.5 442.5,-234.5 511.5,-234.5 511.5,-215.5 442.5,-215.5"/>
|
||||
<text text-anchor="middle" x="477" y="-222.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_min_2d</text>
|
||||
</a>
|
||||
@@ -194,7 +194,7 @@
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a5305cc18d11943d3dc0d66e70d7e9c44" target="_top" xlink:title=" ">
|
||||
<g id="a_node15"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a6f1c98c016ad34ff3d9f39372161bd35" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="417,-101.5 417,-120.5 537,-120.5 537,-101.5 417,-101.5"/>
|
||||
<text text-anchor="middle" x="477" y="-108.5" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::sum</text>
|
||||
</a>
|
||||
|
||||
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
@@ -8,17 +8,17 @@
|
||||
<area shape="rect" id="node27" href="$d9/d49/kohonen__som__trace_8cpp.html#a6d0455dd5c30adda100e95f0423c786e" title=" " alt="" coords="130,208,181,235"/>
|
||||
<area shape="rect" id="node29" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/chrono/c/time.html#" title=" " alt="" coords="119,419,191,445"/>
|
||||
<area shape="rect" id="node6" href="$d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485" title=" " alt="" coords="539,360,613,387"/>
|
||||
<area shape="rect" id="node8" href="$d8/d77/namespacemachine__learning.html#acc6a28f40512dbda75ab1a3969248898" title=" " alt="" coords="255,361,440,402"/>
|
||||
<area shape="rect" id="node8" href="$d8/d77/namespacemachine__learning.html#a042f435bca0839e721fc1574a61e8da3" title=" " alt="" coords="255,361,440,402"/>
|
||||
<area shape="rect" id="node16" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/max.html#" title=" " alt="" coords="756,359,828,385"/>
|
||||
<area shape="rect" id="node20" href="$d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa" title=" " alt="" coords="295,208,400,235"/>
|
||||
<area shape="rect" id="node24" href="$d9/d49/kohonen__som__trace_8cpp.html#ab47fb569e63648bd76e7edfdacc02dbd" title=" " alt="" coords="306,477,389,504"/>
|
||||
<area shape="rect" id="node20" href="$d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67" title=" " alt="" coords="295,208,400,235"/>
|
||||
<area shape="rect" id="node24" href="$d9/d49/kohonen__som__trace_8cpp.html#ae571600aa42a81bc14a4a602ea5ff00d" title=" " alt="" coords="306,477,389,504"/>
|
||||
<area shape="rect" id="node7" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/random/rand.html#" title=" " alt="" coords="755,233,829,260"/>
|
||||
<area shape="rect" id="node9" href="$d8/d77/namespacemachine__learning.html#ac4010fe3a52a74e8b5b1aaadfe38b46f" title=" " alt="" coords="488,579,664,621"/>
|
||||
<area shape="rect" id="node9" href="$d8/d77/namespacemachine__learning.html#ae868ad43698a1d69ba46ea3827d7d2c3" title=" " alt="" coords="488,579,664,621"/>
|
||||
<area shape="rect" id="node10" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/math/exp.html#" title=" " alt="" coords="757,637,827,664"/>
|
||||
<area shape="rect" id="node11" href="$d9/d66/group__machine__learning.html#gab53c14440b2b2dd3172c66afc5c2f63f" title=" " alt="" coords="746,688,838,715"/>
|
||||
<area shape="rect" id="node11" href="$d9/d66/group__machine__learning.html#ga60f9186ccb682724a8792a2bf81e9b9e" title=" " alt="" coords="746,688,838,715"/>
|
||||
<area shape="rect" id="node17" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/min.html#" title=" " alt="" coords="757,485,827,512"/>
|
||||
<area shape="rect" id="node18" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/math/sqrt.html#" title=" " alt="" coords="757,536,827,563"/>
|
||||
<area shape="rect" id="node19" href="$d8/d77/namespacemachine__learning.html#a5305cc18d11943d3dc0d66e70d7e9c44" title=" " alt="" coords="712,587,872,613"/>
|
||||
<area shape="rect" id="node19" href="$d8/d77/namespacemachine__learning.html#a6f1c98c016ad34ff3d9f39372161bd35" title=" " alt="" coords="712,587,872,613"/>
|
||||
<area shape="rect" id="node12" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/iterator/begin.html#" title=" " alt="" coords="942,612,1022,639"/>
|
||||
<area shape="rect" id="node13" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/iterator/distance.html#" title=" " alt="" coords="933,663,1031,689"/>
|
||||
<area shape="rect" id="node14" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/iterator/end.html#" title=" " alt="" coords="947,713,1017,740"/>
|
||||
@@ -26,6 +26,6 @@
|
||||
<area shape="rect" id="node21" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/basic_ofstream/close.html#" title=" " alt="" coords="507,259,645,285"/>
|
||||
<area shape="rect" id="node22" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/basic_ofstream/is_open.html#" title=" " alt="" coords="499,309,653,336"/>
|
||||
<area shape="rect" id="node23" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/basic_ofstream/open.html#" title=" " alt="" coords="508,208,644,235"/>
|
||||
<area shape="rect" id="node26" href="$d9/d49/kohonen__som__trace_8cpp.html#a412b7afa156306b1f8788643c91a1c60" title=" " alt="" coords="290,309,405,336"/>
|
||||
<area shape="rect" id="node28" href="$d9/d49/kohonen__som__trace_8cpp.html#a9ab8c79ffb674a63f151f282faeb723b" title=" " alt="" coords="289,5,406,32"/>
|
||||
<area shape="rect" id="node26" href="$d9/d49/kohonen__som__trace_8cpp.html#a53082f2e5bacec40266499da4547309a" title=" " alt="" coords="290,309,405,336"/>
|
||||
<area shape="rect" id="node28" href="$d9/d49/kohonen__som__trace_8cpp.html#a7154fe319e6033485a8a6cd6f0d8932d" title=" " alt="" coords="289,5,406,32"/>
|
||||
</map>
|
||||
|
||||
@@ -1 +1 @@
|
||||
9483ec308eb785d0c34efa61c7d976f4
|
||||
dc73408c590bb255bcc8fabc3862002d
|
||||
@@ -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 -->
|
||||
<!--zoomable 597 -->
|
||||
@@ -187,7 +187,7 @@ var sectionId = 'dynsection-1';
|
||||
<!-- Node8 -->
|
||||
<g id="node8" class="node">
|
||||
<title>Node8</title>
|
||||
<g id="a_node8"><a xlink:href="../../d8/d77/namespacemachine__learning.html#acc6a28f40512dbda75ab1a3969248898" target="_top" xlink:title=" ">
|
||||
<g id="a_node8"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a042f435bca0839e721fc1574a61e8da3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="187,-292 187,-322 326,-322 326,-292 187,-292"/>
|
||||
<text text-anchor="start" x="195" y="-310" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::kohonen</text>
|
||||
<text text-anchor="middle" x="256.5" y="-299" font-family="Helvetica,sans-Serif" font-size="10.00">_som_tracer</text>
|
||||
@@ -218,7 +218,7 @@ var sectionId = 'dynsection-1';
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><a xlink:href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa" target="_top" xlink:title=" ">
|
||||
<g id="a_node20"><a xlink:href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="217,-417.5 217,-436.5 296,-436.5 296,-417.5 217,-417.5"/>
|
||||
<text text-anchor="middle" x="256.5" y="-424.5" font-family="Helvetica,sans-Serif" font-size="10.00">save_nd_data</text>
|
||||
</a>
|
||||
@@ -233,7 +233,7 @@ var sectionId = 'dynsection-1';
|
||||
<!-- Node24 -->
|
||||
<g id="node24" class="node">
|
||||
<title>Node24</title>
|
||||
<g id="a_node24"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#ab47fb569e63648bd76e7edfdacc02dbd" target="_top" xlink:title=" ">
|
||||
<g id="a_node24"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#ae571600aa42a81bc14a4a602ea5ff00d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="225.5,-215.5 225.5,-234.5 287.5,-234.5 287.5,-215.5 225.5,-215.5"/>
|
||||
<text text-anchor="middle" x="256.5" y="-222.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_circle</text>
|
||||
</a>
|
||||
@@ -263,7 +263,7 @@ var sectionId = 'dynsection-1';
|
||||
<!-- Node9 -->
|
||||
<g id="node9" class="node">
|
||||
<title>Node9</title>
|
||||
<g id="a_node9"><a xlink:href="../../d8/d77/namespacemachine__learning.html#ac4010fe3a52a74e8b5b1aaadfe38b46f" target="_top" xlink:title=" ">
|
||||
<g id="a_node9"><a xlink:href="../../d8/d77/namespacemachine__learning.html#ae868ad43698a1d69ba46ea3827d7d2c3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="362,-128 362,-158 494,-158 494,-128 362,-128"/>
|
||||
<text text-anchor="start" x="370" y="-146" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::update</text>
|
||||
<text text-anchor="middle" x="428" y="-135" font-family="Helvetica,sans-Serif" font-size="10.00">_weights</text>
|
||||
@@ -294,7 +294,7 @@ var sectionId = 'dynsection-1';
|
||||
<!-- Node11 -->
|
||||
<g id="node11" class="node">
|
||||
<title>Node11</title>
|
||||
<g id="a_node11"><a xlink:href="../../d9/d66/group__machine__learning.html#gab53c14440b2b2dd3172c66afc5c2f63f" target="_top" xlink:title=" ">
|
||||
<g id="a_node11"><a xlink:href="../../d9/d66/group__machine__learning.html#ga60f9186ccb682724a8792a2bf81e9b9e" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="555.5,-57.5 555.5,-76.5 624.5,-76.5 624.5,-57.5 555.5,-57.5"/>
|
||||
<text text-anchor="middle" x="590" y="-64.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_min_2d</text>
|
||||
</a>
|
||||
@@ -345,7 +345,7 @@ var sectionId = 'dynsection-1';
|
||||
<!-- Node19 -->
|
||||
<g id="node19" class="node">
|
||||
<title>Node19</title>
|
||||
<g id="a_node19"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a5305cc18d11943d3dc0d66e70d7e9c44" target="_top" xlink:title=" ">
|
||||
<g id="a_node19"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a6f1c98c016ad34ff3d9f39372161bd35" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="530,-133.5 530,-152.5 650,-152.5 650,-133.5 530,-133.5"/>
|
||||
<text text-anchor="middle" x="590" y="-140.5" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::sum</text>
|
||||
</a>
|
||||
@@ -495,7 +495,7 @@ var sectionId = 'dynsection-1';
|
||||
<!-- Node26 -->
|
||||
<g id="node26" class="node">
|
||||
<title>Node26</title>
|
||||
<g id="a_node26"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#a412b7afa156306b1f8788643c91a1c60" target="_top" xlink:title=" ">
|
||||
<g id="a_node26"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#a53082f2e5bacec40266499da4547309a" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="213.5,-341.5 213.5,-360.5 299.5,-360.5 299.5,-341.5 213.5,-341.5"/>
|
||||
<text text-anchor="middle" x="256.5" y="-348.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_lamniscate</text>
|
||||
</a>
|
||||
@@ -540,7 +540,7 @@ var sectionId = 'dynsection-1';
|
||||
<!-- Node28 -->
|
||||
<g id="node28" class="node">
|
||||
<title>Node28</title>
|
||||
<g id="a_node28"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#a9ab8c79ffb674a63f151f282faeb723b" target="_top" xlink:title=" ">
|
||||
<g id="a_node28"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#a7154fe319e6033485a8a6cd6f0d8932d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="212.5,-569.5 212.5,-588.5 300.5,-588.5 300.5,-569.5 212.5,-569.5"/>
|
||||
<text text-anchor="middle" x="256.5" y="-576.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_3d_classes</text>
|
||||
</a>
|
||||
|
||||
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
@@ -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="787pt" height="597pt"
|
||||
@@ -141,7 +141,7 @@
|
||||
<!-- Node8 -->
|
||||
<g id="node8" class="node">
|
||||
<title>Node8</title>
|
||||
<g id="a_node8"><a xlink:href="../../d8/d77/namespacemachine__learning.html#acc6a28f40512dbda75ab1a3969248898" target="_top" xlink:title=" ">
|
||||
<g id="a_node8"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a042f435bca0839e721fc1574a61e8da3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="187,-292 187,-322 326,-322 326,-292 187,-292"/>
|
||||
<text text-anchor="start" x="195" y="-310" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::kohonen</text>
|
||||
<text text-anchor="middle" x="256.5" y="-299" font-family="Helvetica,sans-Serif" font-size="10.00">_som_tracer</text>
|
||||
@@ -172,7 +172,7 @@
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><a xlink:href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa" target="_top" xlink:title=" ">
|
||||
<g id="a_node20"><a xlink:href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="217,-417.5 217,-436.5 296,-436.5 296,-417.5 217,-417.5"/>
|
||||
<text text-anchor="middle" x="256.5" y="-424.5" font-family="Helvetica,sans-Serif" font-size="10.00">save_nd_data</text>
|
||||
</a>
|
||||
@@ -187,7 +187,7 @@
|
||||
<!-- Node24 -->
|
||||
<g id="node24" class="node">
|
||||
<title>Node24</title>
|
||||
<g id="a_node24"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#ab47fb569e63648bd76e7edfdacc02dbd" target="_top" xlink:title=" ">
|
||||
<g id="a_node24"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#ae571600aa42a81bc14a4a602ea5ff00d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="225.5,-215.5 225.5,-234.5 287.5,-234.5 287.5,-215.5 225.5,-215.5"/>
|
||||
<text text-anchor="middle" x="256.5" y="-222.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_circle</text>
|
||||
</a>
|
||||
@@ -217,7 +217,7 @@
|
||||
<!-- Node9 -->
|
||||
<g id="node9" class="node">
|
||||
<title>Node9</title>
|
||||
<g id="a_node9"><a xlink:href="../../d8/d77/namespacemachine__learning.html#ac4010fe3a52a74e8b5b1aaadfe38b46f" target="_top" xlink:title=" ">
|
||||
<g id="a_node9"><a xlink:href="../../d8/d77/namespacemachine__learning.html#ae868ad43698a1d69ba46ea3827d7d2c3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="362,-128 362,-158 494,-158 494,-128 362,-128"/>
|
||||
<text text-anchor="start" x="370" y="-146" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::update</text>
|
||||
<text text-anchor="middle" x="428" y="-135" font-family="Helvetica,sans-Serif" font-size="10.00">_weights</text>
|
||||
@@ -248,7 +248,7 @@
|
||||
<!-- Node11 -->
|
||||
<g id="node11" class="node">
|
||||
<title>Node11</title>
|
||||
<g id="a_node11"><a xlink:href="../../d9/d66/group__machine__learning.html#gab53c14440b2b2dd3172c66afc5c2f63f" target="_top" xlink:title=" ">
|
||||
<g id="a_node11"><a xlink:href="../../d9/d66/group__machine__learning.html#ga60f9186ccb682724a8792a2bf81e9b9e" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="555.5,-57.5 555.5,-76.5 624.5,-76.5 624.5,-57.5 555.5,-57.5"/>
|
||||
<text text-anchor="middle" x="590" y="-64.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_min_2d</text>
|
||||
</a>
|
||||
@@ -299,7 +299,7 @@
|
||||
<!-- Node19 -->
|
||||
<g id="node19" class="node">
|
||||
<title>Node19</title>
|
||||
<g id="a_node19"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a5305cc18d11943d3dc0d66e70d7e9c44" target="_top" xlink:title=" ">
|
||||
<g id="a_node19"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a6f1c98c016ad34ff3d9f39372161bd35" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="530,-133.5 530,-152.5 650,-152.5 650,-133.5 530,-133.5"/>
|
||||
<text text-anchor="middle" x="590" y="-140.5" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::sum</text>
|
||||
</a>
|
||||
@@ -449,7 +449,7 @@
|
||||
<!-- Node26 -->
|
||||
<g id="node26" class="node">
|
||||
<title>Node26</title>
|
||||
<g id="a_node26"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#a412b7afa156306b1f8788643c91a1c60" target="_top" xlink:title=" ">
|
||||
<g id="a_node26"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#a53082f2e5bacec40266499da4547309a" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="213.5,-341.5 213.5,-360.5 299.5,-360.5 299.5,-341.5 213.5,-341.5"/>
|
||||
<text text-anchor="middle" x="256.5" y="-348.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_lamniscate</text>
|
||||
</a>
|
||||
@@ -494,7 +494,7 @@
|
||||
<!-- Node28 -->
|
||||
<g id="node28" class="node">
|
||||
<title>Node28</title>
|
||||
<g id="a_node28"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#a9ab8c79ffb674a63f151f282faeb723b" target="_top" xlink:title=" ">
|
||||
<g id="a_node28"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#a7154fe319e6033485a8a6cd6f0d8932d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="212.5,-569.5 212.5,-588.5 300.5,-588.5 300.5,-569.5 212.5,-569.5"/>
|
||||
<text text-anchor="middle" x="256.5" y="-576.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_3d_classes</text>
|
||||
</a>
|
||||
|
||||
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
@@ -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_lamniscate Pages: 1 -->
|
||||
<svg width="277pt" height="28pt"
|
||||
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
@@ -1,17 +1,17 @@
|
||||
<map id="test3" name="test3">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,349,56,376"/>
|
||||
<area shape="rect" id="node2" href="$d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485" title=" " alt="" coords="388,501,463,528"/>
|
||||
<area shape="rect" id="node4" href="$d8/d77/namespacemachine__learning.html#acc6a28f40512dbda75ab1a3969248898" title=" " alt="" coords="104,171,289,213"/>
|
||||
<area shape="rect" id="node4" href="$d8/d77/namespacemachine__learning.html#a042f435bca0839e721fc1574a61e8da3" title=" " alt="" coords="104,171,289,213"/>
|
||||
<area shape="rect" id="node12" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/max.html#" title=" " alt="" coords="605,259,677,285"/>
|
||||
<area shape="rect" id="node16" href="$d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa" title=" " alt="" coords="144,349,249,376"/>
|
||||
<area shape="rect" id="node20" href="$d9/d49/kohonen__som__trace_8cpp.html#a9ab8c79ffb674a63f151f282faeb723b" title=" " alt="" coords="138,451,255,477"/>
|
||||
<area shape="rect" id="node16" href="$d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67" title=" " alt="" coords="144,349,249,376"/>
|
||||
<area shape="rect" id="node20" href="$d9/d49/kohonen__som__trace_8cpp.html#a7154fe319e6033485a8a6cd6f0d8932d" title=" " alt="" coords="138,451,255,477"/>
|
||||
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/random/rand.html#" title=" " alt="" coords="605,476,678,503"/>
|
||||
<area shape="rect" id="node5" href="$d8/d77/namespacemachine__learning.html#ac4010fe3a52a74e8b5b1aaadfe38b46f" title=" " alt="" coords="337,150,513,191"/>
|
||||
<area shape="rect" id="node5" href="$d8/d77/namespacemachine__learning.html#ae868ad43698a1d69ba46ea3827d7d2c3" title=" " alt="" coords="337,150,513,191"/>
|
||||
<area shape="rect" id="node6" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/math/exp.html#" title=" " alt="" coords="607,107,676,133"/>
|
||||
<area shape="rect" id="node7" href="$d9/d66/group__machine__learning.html#gab53c14440b2b2dd3172c66afc5c2f63f" title=" " alt="" coords="595,157,687,184"/>
|
||||
<area shape="rect" id="node7" href="$d9/d66/group__machine__learning.html#ga60f9186ccb682724a8792a2bf81e9b9e" title=" " alt="" coords="595,157,687,184"/>
|
||||
<area shape="rect" id="node13" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/min.html#" title=" " alt="" coords="607,208,676,235"/>
|
||||
<area shape="rect" id="node14" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/math/sqrt.html#" title=" " alt="" coords="607,5,676,32"/>
|
||||
<area shape="rect" id="node15" href="$d8/d77/namespacemachine__learning.html#a5305cc18d11943d3dc0d66e70d7e9c44" title=" " alt="" coords="561,56,721,83"/>
|
||||
<area shape="rect" id="node15" href="$d8/d77/namespacemachine__learning.html#a6f1c98c016ad34ff3d9f39372161bd35" title=" " alt="" coords="561,56,721,83"/>
|
||||
<area shape="rect" id="node8" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/iterator/begin.html#" title=" " alt="" coords="791,81,871,108"/>
|
||||
<area shape="rect" id="node9" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/iterator/distance.html#" title=" " alt="" coords="783,132,880,159"/>
|
||||
<area shape="rect" id="node10" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/iterator/end.html#" title=" " alt="" coords="797,183,866,209"/>
|
||||
|
||||
@@ -1 +1 @@
|
||||
0754e0debc9c80b8ebd762270f0f4017
|
||||
a059599f9238dde0cf68f8dcd7913d9c
|
||||
@@ -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: test3 Pages: 1 -->
|
||||
<!--zoomable 403 -->
|
||||
@@ -82,7 +82,7 @@ var sectionId = 'dynsection-4';
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../d8/d77/namespacemachine__learning.html#acc6a28f40512dbda75ab1a3969248898" target="_top" xlink:title=" ">
|
||||
<g id="a_node4"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a042f435bca0839e721fc1574a61e8da3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-239.97 74,-269.97 213,-269.97 213,-239.97 74,-239.97"/>
|
||||
<text text-anchor="start" x="82" y="-257.97" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::kohonen</text>
|
||||
<text text-anchor="middle" x="143.5" y="-246.97" font-family="Helvetica,sans-Serif" font-size="10.00">_som_tracer</text>
|
||||
@@ -113,7 +113,7 @@ var sectionId = 'dynsection-4';
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a xlink:href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa" target="_top" xlink:title=" ">
|
||||
<g id="a_node16"><a xlink:href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="104,-117.47 104,-136.47 183,-136.47 183,-117.47 104,-117.47"/>
|
||||
<text text-anchor="middle" x="143.5" y="-124.47" font-family="Helvetica,sans-Serif" font-size="10.00">save_nd_data</text>
|
||||
</a>
|
||||
@@ -128,7 +128,7 @@ var sectionId = 'dynsection-4';
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#a9ab8c79ffb674a63f151f282faeb723b" target="_top" xlink:title=" ">
|
||||
<g id="a_node20"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#a7154fe319e6033485a8a6cd6f0d8932d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="99.5,-41.47 99.5,-60.47 187.5,-60.47 187.5,-41.47 99.5,-41.47"/>
|
||||
<text text-anchor="middle" x="143.5" y="-48.47" font-family="Helvetica,sans-Serif" font-size="10.00">test_3d_classes</text>
|
||||
</a>
|
||||
@@ -158,7 +158,7 @@ var sectionId = 'dynsection-4';
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../d8/d77/namespacemachine__learning.html#ac4010fe3a52a74e8b5b1aaadfe38b46f" target="_top" xlink:title=" ">
|
||||
<g id="a_node5"><a xlink:href="../../d8/d77/namespacemachine__learning.html#ae868ad43698a1d69ba46ea3827d7d2c3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="249,-255.97 249,-285.97 381,-285.97 381,-255.97 249,-255.97"/>
|
||||
<text text-anchor="start" x="257" y="-273.97" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::update</text>
|
||||
<text text-anchor="middle" x="315" y="-262.97" font-family="Helvetica,sans-Serif" font-size="10.00">_weights</text>
|
||||
@@ -189,7 +189,7 @@ var sectionId = 'dynsection-4';
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a xlink:href="../../d9/d66/group__machine__learning.html#gab53c14440b2b2dd3172c66afc5c2f63f" target="_top" xlink:title=" ">
|
||||
<g id="a_node7"><a xlink:href="../../d9/d66/group__machine__learning.html#ga60f9186ccb682724a8792a2bf81e9b9e" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="442.5,-261.47 442.5,-280.47 511.5,-280.47 511.5,-261.47 442.5,-261.47"/>
|
||||
<text text-anchor="middle" x="477" y="-268.47" font-family="Helvetica,sans-Serif" font-size="10.00">get_min_2d</text>
|
||||
</a>
|
||||
@@ -240,7 +240,7 @@ var sectionId = 'dynsection-4';
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a5305cc18d11943d3dc0d66e70d7e9c44" target="_top" xlink:title=" ">
|
||||
<g id="a_node15"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a6f1c98c016ad34ff3d9f39372161bd35" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="417,-337.47 417,-356.47 537,-356.47 537,-337.47 417,-337.47"/>
|
||||
<text text-anchor="middle" x="477" y="-344.47" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::sum</text>
|
||||
</a>
|
||||
|
||||
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
@@ -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: test3 Pages: 1 -->
|
||||
<svg width="674pt" height="403pt"
|
||||
@@ -36,7 +36,7 @@
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../d8/d77/namespacemachine__learning.html#acc6a28f40512dbda75ab1a3969248898" target="_top" xlink:title=" ">
|
||||
<g id="a_node4"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a042f435bca0839e721fc1574a61e8da3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-239.97 74,-269.97 213,-269.97 213,-239.97 74,-239.97"/>
|
||||
<text text-anchor="start" x="82" y="-257.97" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::kohonen</text>
|
||||
<text text-anchor="middle" x="143.5" y="-246.97" font-family="Helvetica,sans-Serif" font-size="10.00">_som_tracer</text>
|
||||
@@ -67,7 +67,7 @@
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a xlink:href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa" target="_top" xlink:title=" ">
|
||||
<g id="a_node16"><a xlink:href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="104,-117.47 104,-136.47 183,-136.47 183,-117.47 104,-117.47"/>
|
||||
<text text-anchor="middle" x="143.5" y="-124.47" font-family="Helvetica,sans-Serif" font-size="10.00">save_nd_data</text>
|
||||
</a>
|
||||
@@ -82,7 +82,7 @@
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#a9ab8c79ffb674a63f151f282faeb723b" target="_top" xlink:title=" ">
|
||||
<g id="a_node20"><a xlink:href="../../d9/d49/kohonen__som__trace_8cpp.html#a7154fe319e6033485a8a6cd6f0d8932d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="99.5,-41.47 99.5,-60.47 187.5,-60.47 187.5,-41.47 99.5,-41.47"/>
|
||||
<text text-anchor="middle" x="143.5" y="-48.47" font-family="Helvetica,sans-Serif" font-size="10.00">test_3d_classes</text>
|
||||
</a>
|
||||
@@ -112,7 +112,7 @@
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../d8/d77/namespacemachine__learning.html#ac4010fe3a52a74e8b5b1aaadfe38b46f" target="_top" xlink:title=" ">
|
||||
<g id="a_node5"><a xlink:href="../../d8/d77/namespacemachine__learning.html#ae868ad43698a1d69ba46ea3827d7d2c3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="249,-255.97 249,-285.97 381,-285.97 381,-255.97 249,-255.97"/>
|
||||
<text text-anchor="start" x="257" y="-273.97" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::update</text>
|
||||
<text text-anchor="middle" x="315" y="-262.97" font-family="Helvetica,sans-Serif" font-size="10.00">_weights</text>
|
||||
@@ -143,7 +143,7 @@
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a xlink:href="../../d9/d66/group__machine__learning.html#gab53c14440b2b2dd3172c66afc5c2f63f" target="_top" xlink:title=" ">
|
||||
<g id="a_node7"><a xlink:href="../../d9/d66/group__machine__learning.html#ga60f9186ccb682724a8792a2bf81e9b9e" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="442.5,-261.47 442.5,-280.47 511.5,-280.47 511.5,-261.47 442.5,-261.47"/>
|
||||
<text text-anchor="middle" x="477" y="-268.47" font-family="Helvetica,sans-Serif" font-size="10.00">get_min_2d</text>
|
||||
</a>
|
||||
@@ -194,7 +194,7 @@
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a5305cc18d11943d3dc0d66e70d7e9c44" target="_top" xlink:title=" ">
|
||||
<g id="a_node15"><a xlink:href="../../d8/d77/namespacemachine__learning.html#a6f1c98c016ad34ff3d9f39372161bd35" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="417,-337.47 417,-356.47 537,-356.47 537,-337.47 417,-337.47"/>
|
||||
<text text-anchor="middle" x="477" y="-344.47" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::sum</text>
|
||||
</a>
|
||||
|
||||
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
@@ -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_3d_classes Pages: 1 -->
|
||||
<svg width="279pt" height="47pt"
|
||||
|
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.6 KiB |
@@ -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_circle Pages: 1 -->
|
||||
<svg width="253pt" height="28pt"
|
||||
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
@@ -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++: data_structures::Node 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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d49/structdata__structures_1_1_node.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -94,41 +94,34 @@ $(document).ready(function(){initNavTree('d9/d49/structdata__structures_1_1_node
|
||||
<a href="#pub-methods">Public Member Functions</a> |
|
||||
<a href="#pub-attribs">Public Attributes</a> |
|
||||
<a href="../../dc/d25/structdata__structures_1_1_node-members.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">data_structures::Node Struct Reference</div> </div>
|
||||
<div class="headertitle"><div class="title">data_structures::Node Struct Reference</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="dynheader">
|
||||
Collaboration diagram for data_structures::Node:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d5/dc3/structdata__structures_1_1_node__coll__graph.svg" width="172" height="260"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
<center><span class="legend">[<a target="top" href="../../graph_legend.html">legend</a>]</span></center></div>
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 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:a54a6777e72b639c3ee6446a541db8e78"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d49/structdata__structures_1_1_node.html#a54a6777e72b639c3ee6446a541db8e78">Node</a> (int <a class="el" href="../../d9/d49/structdata__structures_1_1_node.html#ac75aa86a598357c5c882ec6a1174aa68">key</a>, int level, void *<a class="el" href="../../d9/d49/structdata__structures_1_1_node.html#a6b973b0bded99b0c0bd84e887bf8c731">value</a>=nullptr)</td></tr>
|
||||
<tr class="separator:a54a6777e72b639c3ee6446a541db8e78"><td class="memSeparator" colspan="2"> </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:ac75aa86a598357c5c882ec6a1174aa68"><td class="memItemLeft" align="right" valign="top"><a id="ac75aa86a598357c5c882ec6a1174aa68"></a>
|
||||
int </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d49/structdata__structures_1_1_node.html#ac75aa86a598357c5c882ec6a1174aa68">key</a></td></tr>
|
||||
<tr class="memitem:ac75aa86a598357c5c882ec6a1174aa68"><td class="memItemLeft" align="right" valign="top"><a id="ac75aa86a598357c5c882ec6a1174aa68" name="ac75aa86a598357c5c882ec6a1174aa68"></a>
|
||||
int </td><td class="memItemRight" valign="bottom"><b>key</b></td></tr>
|
||||
<tr class="memdesc:ac75aa86a598357c5c882ec6a1174aa68"><td class="mdescLeft"> </td><td class="mdescRight">key integer <br /></td></tr>
|
||||
<tr class="separator:ac75aa86a598357c5c882ec6a1174aa68"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a6b973b0bded99b0c0bd84e887bf8c731"><td class="memItemLeft" align="right" valign="top"><a id="a6b973b0bded99b0c0bd84e887bf8c731"></a>
|
||||
void * </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d49/structdata__structures_1_1_node.html#a6b973b0bded99b0c0bd84e887bf8c731">value</a></td></tr>
|
||||
<tr class="memitem:a6b973b0bded99b0c0bd84e887bf8c731"><td class="memItemLeft" align="right" valign="top"><a id="a6b973b0bded99b0c0bd84e887bf8c731" name="a6b973b0bded99b0c0bd84e887bf8c731"></a>
|
||||
void * </td><td class="memItemRight" valign="bottom"><b>value</b></td></tr>
|
||||
<tr class="memdesc:a6b973b0bded99b0c0bd84e887bf8c731"><td class="mdescLeft"> </td><td class="mdescRight">pointer of value <br /></td></tr>
|
||||
<tr class="separator:a6b973b0bded99b0c0bd84e887bf8c731"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ac916d833aad2b9c41f01a92db2f8c48e"><td class="memItemLeft" align="right" valign="top"><a id="ac916d833aad2b9c41f01a92db2f8c48e"></a>
|
||||
<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>< <a class="el" href="../../d9/d49/structdata__structures_1_1_node.html">Node</a> > > </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d49/structdata__structures_1_1_node.html#ac916d833aad2b9c41f01a92db2f8c48e">forward</a></td></tr>
|
||||
<tr class="memitem:ac916d833aad2b9c41f01a92db2f8c48e"><td class="memItemLeft" align="right" valign="top"><a id="ac916d833aad2b9c41f01a92db2f8c48e" name="ac916d833aad2b9c41f01a92db2f8c48e"></a>
|
||||
<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>< <a class="el" href="../../d9/d49/structdata__structures_1_1_node.html">Node</a> > > </td><td class="memItemRight" valign="bottom"><b>forward</b></td></tr>
|
||||
<tr class="memdesc:ac916d833aad2b9c41f01a92db2f8c48e"><td class="mdescLeft"> </td><td class="mdescRight">nodes of the given one in all levels <br /></td></tr>
|
||||
<tr class="separator:ac916d833aad2b9c41f01a92db2f8c48e"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p><a class="el" href="../../d9/d49/structdata__structures_1_1_node.html">Node</a> structure [Key][Node*, Node*...] </p>
|
||||
<div class="textblock"><p ><a class="el" href="../../d9/d49/structdata__structures_1_1_node.html">Node</a> structure [Key][Node*, Node*...] </p>
|
||||
</div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
||||
<a id="a54a6777e72b639c3ee6446a541db8e78"></a>
|
||||
<a id="a54a6777e72b639c3ee6446a541db8e78" name="a54a6777e72b639c3ee6446a541db8e78"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a54a6777e72b639c3ee6446a541db8e78">◆ </a></span>Node()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -167,30 +160,23 @@ void * </td><td class="memItemRight" valign="bottom"><a class="el" href="..
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Creates node with provided key, level and value </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<p >Creates node with provided key, level and value </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">key</td><td>is number that is used for comparision </td></tr>
|
||||
<tr><td class="paramname">level</td><td>is the maximum level node's going to added </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<div class="fragment"><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  : <a class="code" href="../../d9/d49/structdata__structures_1_1_node.html#ac75aa86a598357c5c882ec6a1174aa68">key</a>(<a class="code" href="../../d9/d49/structdata__structures_1_1_node.html#ac75aa86a598357c5c882ec6a1174aa68">key</a>), <a class="code" href="../../d9/d49/structdata__structures_1_1_node.html#a6b973b0bded99b0c0bd84e887bf8c731">value</a>(<a class="code" href="../../d9/d49/structdata__structures_1_1_node.html#a6b973b0bded99b0c0bd84e887bf8c731">value</a>) {</div>
|
||||
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  <span class="comment">// Initialization of forward vector</span></div>
|
||||
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < (level + 1); i++) {</div>
|
||||
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  <a class="code" href="../../d9/d49/structdata__structures_1_1_node.html#ac916d833aad2b9c41f01a92db2f8c48e">forward</a>.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/push_back.html">push_back</a>(<span class="keyword">nullptr</span>);</div>
|
||||
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  }</div>
|
||||
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  }</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 class="fragment"><div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> : <a class="code hl_variable" href="../../d9/d49/structdata__structures_1_1_node.html#ac75aa86a598357c5c882ec6a1174aa68">key</a>(<a class="code hl_variable" href="../../d9/d49/structdata__structures_1_1_node.html#ac75aa86a598357c5c882ec6a1174aa68">key</a>), <a class="code hl_variable" href="../../d9/d49/structdata__structures_1_1_node.html#a6b973b0bded99b0c0bd84e887bf8c731">value</a>(<a class="code hl_variable" href="../../d9/d49/structdata__structures_1_1_node.html#a6b973b0bded99b0c0bd84e887bf8c731">value</a>) {</div>
|
||||
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <span class="comment">// Initialization of forward vector</span></div>
|
||||
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < (level + 1); i++) {</div>
|
||||
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <a class="code hl_variable" href="../../d9/d49/structdata__structures_1_1_node.html#ac916d833aad2b9c41f01a92db2f8c48e">forward</a>.push_back(<span class="keyword">nullptr</span>);</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> }</div>
|
||||
<div class="ttc" id="astructdata__structures_1_1_node_html_a6b973b0bded99b0c0bd84e887bf8c731"><div class="ttname"><a href="../../d9/d49/structdata__structures_1_1_node.html#a6b973b0bded99b0c0bd84e887bf8c731">data_structures::Node::value</a></div><div class="ttdeci">void * value</div><div class="ttdoc">pointer of value</div><div class="ttdef"><b>Definition:</b> skip_list.cpp:35</div></div>
|
||||
<div class="ttc" id="astructdata__structures_1_1_node_html_ac75aa86a598357c5c882ec6a1174aa68"><div class="ttname"><a href="../../d9/d49/structdata__structures_1_1_node.html#ac75aa86a598357c5c882ec6a1174aa68">data_structures::Node::key</a></div><div class="ttdeci">int key</div><div class="ttdoc">key integer</div><div class="ttdef"><b>Definition:</b> skip_list.cpp:34</div></div>
|
||||
<div class="ttc" id="astructdata__structures_1_1_node_html_ac916d833aad2b9c41f01a92db2f8c48e"><div class="ttname"><a href="../../d9/d49/structdata__structures_1_1_node.html#ac916d833aad2b9c41f01a92db2f8c48e">data_structures::Node::forward</a></div><div class="ttdeci">std::vector< std::shared_ptr< Node > > forward</div><div class="ttdoc">nodes of the given one in all levels</div><div class="ttdef"><b>Definition:</b> skip_list.cpp:37</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="../../d9/d49/structdata__structures_1_1_node_a54a6777e72b639c3ee6446a541db8e78_cgraph.svg" width="368" height="52"><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>
|
||||
<hr/>The documentation for this struct was generated from the following file:<ul>
|
||||
@@ -202,7 +188,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="../../d5/d3c/namespacedata__structures.html">data_structures</a></li><li class="navelem"><a class="el" href="../../d9/d49/structdata__structures_1_1_node.html">Node</a></li>
|
||||
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.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>
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
<map id="data_structures::Node::Node" name="data_structures::Node::Node">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,5,159,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="207,13,363,39"/>
|
||||
</map>
|
||||
@@ -1 +0,0 @@
|
||||
3ef8eafe8b1a7006c5e52d9a953fe424
|
||||
@@ -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: data_structures::Node::Node Pages: 1 -->
|
||||
<svg width="276pt" height="39pt"
|
||||
viewBox="0.00 0.00 276.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>data_structures::Node::Node</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-35 272,-35 272,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 115,-30.5 115,-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::Node</text>
|
||||
<text text-anchor="middle" x="57.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Node</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="151,-6 151,-25 268,-25 268,-6 151,-6"/>
|
||||
<text text-anchor="middle" x="209.5" y="-13" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M115.21,-15.5C123.47,-15.5 132.04,-15.5 140.49,-15.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="140.71,-19 150.71,-15.5 140.71,-12 140.71,-19"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.8 KiB |
@@ -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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -90,38 +90,37 @@ $(document).ready(function(){initNavTree('d1/d51/classrange__queries_1_1heavy__l
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">range_queries::heavy_light_decomposition::Tree< X > Member List</div> </div>
|
||||
<div class="headertitle"><div class="title">range_queries::heavy_light_decomposition::Tree< X > Member List</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>This is the complete list of members for <a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a>, including all inherited members.</p>
|
||||
<table class="directory">
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a79ab4601c4a95c0902ac04e779e5f54d">add_edge</a>(const int u, const int v)</td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ab916d554afa8ca5230b4310c2c69fae0">change_root</a>(int new_root)</td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ab916d554afa8ca5230b4310c2c69fae0">change_root</a>(int new_root)</td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae8de7aefcb6635d3dacdd174cd4890c4">dfs_lca</a>(int u, int p=-1)</td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">private</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa339c31ec74cd86a4842a8b09653d460">dfs_size</a>(int u, int p=-1)</td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">private</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa339c31ec74cd86a4842a8b09653d460">dfs_size</a>(int u, int p=-1)</td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">private</span></td></tr>
|
||||
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>HLD</b> (defined in <a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a>)</td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ad22d760a5a33545a70e7ea5e1786c8dc">init</a>()</td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ad22d760a5a33545a70e7ea5e1786c8dc">init</a>()</td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a8f7bca1746d40f21ad832fcea59aa6c6">kth_ancestor</a>(int p, const int &dist)</td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae2b407e64aaf9878fbee7ee6efe9c7d4">lca</a>(int a, int b)</td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae2b407e64aaf9878fbee7ee6efe9c7d4">lca</a>(int a, int b)</td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ac7761255f2ba06b398b9aae5e4dce5f3">lift</a>(int *const p, int dist)</td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a04cd96efaba147b19d3afc769b90ff70">set_node_val</a>(const std::vector< X > &node_val)</td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a04cd96efaba147b19d3afc769b90ff70">set_node_val</a>(const std::vector< X > &node_val)</td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ab1aeaefa1bd97b867c652ba916fbdb43">t_adj</a></td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a0efd0b9c564092f443ca97030d866ef1">t_depth</a></td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a0efd0b9c564092f443ca97030d866ef1">t_depth</a></td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ab2ab020f798d00be2613ecf63074b7c1">t_maxlift</a></td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae4630fa70a80a1dc65a875488a67178a">t_nodes</a></td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae4630fa70a80a1dc65a875488a67178a">t_nodes</a></td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a350157a5fb79f76fceae33fc84171203">t_par</a></td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa6c37e840355b9fb2105181c578694e8">t_root</a></td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa6c37e840355b9fb2105181c578694e8">t_root</a></td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ada1494fccbc7f1f07b2f9be9f7e07ad5">t_size</a></td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a135b7952593c9b1aae38fcaf1cc1abf7">t_val</a></td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a135b7952593c9b1aae38fcaf1cc1abf7">t_val</a></td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a835fb2bbb27307b8cacad9b287968bc1">Tree</a>(int nodes)</td><td class="entry"><a class="el" href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html">range_queries::heavy_light_decomposition::Tree< X ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</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>
|
||||
|
||||
@@ -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/gnome_sort.cpp Pages: 1 -->
|
||||
<svg width="264pt" height="84pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 3.5 KiB After Width: | Height: | Size: 3.5 KiB |
@@ -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++: sparse_table 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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d55/namespacesparse__table.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -90,23 +90,22 @@ $(document).ready(function(){initNavTree('d9/d55/namespacesparse__table.html','.
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">sparse_table Namespace Reference</div> </div>
|
||||
<div class="headertitle"><div class="title">sparse_table Namespace Reference</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>Functions for Implementation of <a href="https://brilliant.org/wiki/sparse-table/">Sparse Table</a>
|
||||
<p>Functions for Implementation of <a href="https://brilliant.org/wiki/sparse-table/" target="_blank">Sparse Table</a>
|
||||
<a href="../../d9/d55/namespacesparse__table.html#details">More...</a></p>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>Functions for Implementation of <a href="https://brilliant.org/wiki/sparse-table/">Sparse Table</a> </p>
|
||||
<p>Range queries using sparse-tables. </p>
|
||||
<div class="textblock"><p >Functions for Implementation of <a href="https://brilliant.org/wiki/sparse-table/" target="_blank">Sparse Table</a> </p>
|
||||
<p >Range queries using sparse-tables. </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="../../d9/d55/namespacesparse__table.html">sparse_table</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>
|
||||
|
||||
@@ -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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d1/def/classdata__structures_1_1linked__list_1_1list.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -90,29 +90,28 @@ $(document).ready(function(){initNavTree('d1/def/classdata__structures_1_1linked
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">data_structures::linked_list::list Member List</div> </div>
|
||||
<div class="headertitle"><div class="title">data_structures::linked_list::list Member List</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>This is the complete list of members for <a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html">data_structures::linked_list::list</a>, including all inherited members.</p>
|
||||
<table class="directory">
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html#abf7c97616b873ffeebdd0eac2d19d13e">display</a>()</td><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html">data_structures::linked_list::list</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html#a1fb1792ab867dc26639eef368a56989e">erase</a>(int old_elem)</td><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html">data_structures::linked_list::list</a></td><td class="entry"></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html#a1fb1792ab867dc26639eef368a56989e">erase</a>(int old_elem)</td><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html">data_structures::linked_list::list</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html#aa3801cea564a3b3bb7b03abfffdcf1e1">first</a></td><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html">data_structures::linked_list::list</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html#ae8424a4fce3d483f7c85d6f6a5c79a1a">isEmpty</a>()</td><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html">data_structures::linked_list::list</a></td><td class="entry"></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html#ae8424a4fce3d483f7c85d6f6a5c79a1a">isEmpty</a>()</td><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html">data_structures::linked_list::list</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html#ae8a5aa5c6dbbc5b882030b52619dd1a3">last</a></td><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html">data_structures::linked_list::list</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html#a50e209b55b83622254177050945e7826">list</a>()</td><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html">data_structures::linked_list::list</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html#a50e209b55b83622254177050945e7826">list</a>()</td><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html">data_structures::linked_list::list</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html#ad585670a392c7e842c992d088093dff5">push_back</a>(int new_elem)</td><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html">data_structures::linked_list::list</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html#a9c73f393e984f93f33852334d1a04be0">push_front</a>(int new_elem)</td><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html">data_structures::linked_list::list</a></td><td class="entry"></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html#a9c73f393e984f93f33852334d1a04be0">push_front</a>(int new_elem)</td><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html">data_structures::linked_list::list</a></td><td class="entry"></td></tr>
|
||||
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>reverse</b>() (defined in <a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html">data_structures::linked_list::list</a>)</td><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html">data_structures::linked_list::list</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html#a098be172c737f236763afdb8cada4835">search</a>(int find_elem)</td><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html">data_structures::linked_list::list</a></td><td class="entry"></td></tr>
|
||||
<tr class="odd"><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html#a098be172c737f236763afdb8cada4835">search</a>(int find_elem)</td><td class="entry"><a class="el" href="../../d1/def/classdata__structures_1_1linked__list_1_1list.html">data_structures::linked_list::list</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>
|
||||
|
||||
@@ -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++: geometry::jarvis::Point 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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d5a/structgeometry_1_1jarvis_1_1_point.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -93,22 +93,21 @@ $(document).ready(function(){initNavTree('d9/d5a/structgeometry_1_1jarvis_1_1_po
|
||||
<div class="summary">
|
||||
<a href="#pub-attribs">Public Attributes</a> |
|
||||
<a href="../../d2/d36/structgeometry_1_1jarvis_1_1_point-members.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">geometry::jarvis::Point Struct Reference</div> </div>
|
||||
<div class="headertitle"><div class="title">geometry::jarvis::Point 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:af14ad1652ac763c92e5c79a86796d044"><td class="memItemLeft" align="right" valign="top"><a id="af14ad1652ac763c92e5c79a86796d044"></a>
|
||||
<tr class="memitem:af14ad1652ac763c92e5c79a86796d044"><td class="memItemLeft" align="right" valign="top"><a id="af14ad1652ac763c92e5c79a86796d044" name="af14ad1652ac763c92e5c79a86796d044"></a>
|
||||
int </td><td class="memItemRight" valign="bottom"><b>x</b></td></tr>
|
||||
<tr class="separator:af14ad1652ac763c92e5c79a86796d044"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a6c52f5bd4f7360d2d1db0bf6537a10e0"><td class="memItemLeft" align="right" valign="top"><a id="a6c52f5bd4f7360d2d1db0bf6537a10e0"></a>
|
||||
<tr class="memitem:a6c52f5bd4f7360d2d1db0bf6537a10e0"><td class="memItemLeft" align="right" valign="top"><a id="a6c52f5bd4f7360d2d1db0bf6537a10e0" name="a6c52f5bd4f7360d2d1db0bf6537a10e0"></a>
|
||||
int </td><td class="memItemRight" valign="bottom"><b>y</b></td></tr>
|
||||
<tr class="separator:a6c52f5bd4f7360d2d1db0bf6537a10e0"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>Structure defining the x and y co-ordinates of the given point in space </p>
|
||||
<div class="textblock"><p >Structure defining the x and y co-ordinates of the given point in space </p>
|
||||
</div><hr/>The documentation for this struct was generated from the following file:<ul>
|
||||
<li>geometry/<a class="el" href="../../d4/d8d/jarvis__algorithm_8cpp.html">jarvis_algorithm.cpp</a></li>
|
||||
</ul>
|
||||
@@ -118,7 +117,7 @@ int </td><td class="memItemRight" valign="bottom"><b>y</b></td></tr>
|
||||
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="../../d5/d5f/namespacegeometry.html">geometry</a></li><li class="navelem"><b>jarvis</b></li><li class="navelem"><a class="el" href="../../d9/d5a/structgeometry_1_1jarvis_1_1_point.html">Point</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>
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
var structgeometry_1_1jarvis_1_1_point =
|
||||
[
|
||||
[ "x", "d9/d5a/structgeometry_1_1jarvis_1_1_point.html#af14ad1652ac763c92e5c79a86796d044", null ],
|
||||
[ "y", "d9/d5a/structgeometry_1_1jarvis_1_1_point.html#a6c52f5bd4f7360d2d1db0bf6537a10e0", null ]
|
||||
];
|
||||
@@ -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/extended_euclid_algorithm.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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d5d/extended__euclid__algorithm_8cpp.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -92,12 +92,11 @@ $(document).ready(function(){initNavTree('d9/d5d/extended__euclid__algorithm_8cp
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#func-members">Functions</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">extended_euclid_algorithm.cpp File Reference</div> </div>
|
||||
<div class="headertitle"><div class="title">extended_euclid_algorithm.cpp File Reference</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>GCD using <a href="https://en.wikipedia.org/wiki/Extended_Euclidean_algorithm">extended Euclid's algorithm</a>
|
||||
<p>GCD using <a href="https://en.wikipedia.org/wiki/Extended_Euclidean_algorithm" target="_blank">extended Euclid's algorithm</a>
|
||||
<a href="#details">More...</a></p>
|
||||
<div class="textblock"><code>#include <algorithm></code><br />
|
||||
<code>#include <iostream></code><br />
|
||||
@@ -108,7 +107,7 @@ Include dependency graph for extended_euclid_algorithm.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:abe92d63a0ff9bda7e304df510d5dd217"><td class="memTemplParams" colspan="2">template<typename T , typename T2 > </td></tr>
|
||||
<tr class="memitem:abe92d63a0ff9bda7e304df510d5dd217"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#abe92d63a0ff9bda7e304df510d5dd217">update_step</a> (T *r, T *r0, const T2 quotient)</td></tr>
|
||||
@@ -119,19 +118,18 @@ Functions</h2></td></tr>
|
||||
<tr class="memitem:acba15ca55b3e7dcb91f3c65d72ba052d"><td class="memTemplParams" colspan="2">template<typename T , typename T2 > </td></tr>
|
||||
<tr class="memitem:acba15ca55b3e7dcb91f3c65d72ba052d"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#acba15ca55b3e7dcb91f3c65d72ba052d">extendedEuclid</a> (T A, T B, T *GCD, T2 *x, T2 *y)</td></tr>
|
||||
<tr class="separator:acba15ca55b3e7dcb91f3c65d72ba052d"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top"><a id="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
|
||||
int </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
|
||||
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft"> </td><td class="mdescRight">Main function. <br /></td></tr>
|
||||
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
|
||||
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft"> </td><td class="mdescRight">Main function. <a href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">More...</a><br /></td></tr>
|
||||
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>GCD using <a href="https://en.wikipedia.org/wiki/Extended_Euclidean_algorithm">extended Euclid's algorithm</a> </p>
|
||||
<p>Finding coefficients of a and b ie x and y in Bézout's identity </p><p class="formulaDsp">
|
||||
<div class="textblock"><p >GCD using <a href="https://en.wikipedia.org/wiki/Extended_Euclidean_algorithm" target="_blank">extended Euclid's algorithm</a> </p>
|
||||
<p >Finding coefficients of a and b ie x and y in Bézout's identity </p><p class="formulaDsp">
|
||||
\[\text{gcd}(a, b) = a \times x + b \times y \]
|
||||
</p>
|
||||
<p> This is also used in finding Modular multiplicative inverse of a number. (A * B)M == 1 Here B is the MMI of A for given M, so extendedEuclid (A, M) gives B. </p>
|
||||
</div><h2 class="groupheader">Function Documentation</h2>
|
||||
<a id="acba15ca55b3e7dcb91f3c65d72ba052d"></a>
|
||||
<a id="acba15ca55b3e7dcb91f3c65d72ba052d" name="acba15ca55b3e7dcb91f3c65d72ba052d"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#acba15ca55b3e7dcb91f3c65d72ba052d">◆ </a></span>extendedEuclid()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -176,7 +174,7 @@ template<typename T , typename T2 > </div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Implementation using recursive algorithm</p>
|
||||
<p >Implementation using recursive algorithm</p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">A</td><td>unsigned </td></tr>
|
||||
@@ -187,33 +185,33 @@ template<typename T , typename T2 > </div>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<div class="fragment"><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  {</div>
|
||||
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  <span class="keywordflow">if</span> (B > A)</div>
|
||||
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/swap.html">std::swap</a>(A, B); <span class="comment">// Ensure that A >= B</span></div>
|
||||
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  </div>
|
||||
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <span class="keywordflow">if</span> (B == 0) {</div>
|
||||
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  *GCD = A;</div>
|
||||
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  *x = 1;</div>
|
||||
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  *y = 0;</div>
|
||||
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  } <span class="keywordflow">else</span> {</div>
|
||||
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <a class="code" href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#acba15ca55b3e7dcb91f3c65d72ba052d">extendedEuclid</a>(B, A % B, GCD, x, y);</div>
|
||||
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  T2 temp = *x;</div>
|
||||
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  *x = *y;</div>
|
||||
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  *y = temp - (A / B) * (*y);</div>
|
||||
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  }</div>
|
||||
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> }</div>
|
||||
<div class="fragment"><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="keywordflow">if</span> (B > A)</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/algorithm/swap.html">std::swap</a>(A, B); <span class="comment">// Ensure that A >= B</span></div>
|
||||
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> </div>
|
||||
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <span class="keywordflow">if</span> (B == 0) {</div>
|
||||
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> *GCD = A;</div>
|
||||
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> *x = 1;</div>
|
||||
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> *y = 0;</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> <a class="code hl_function" href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#acba15ca55b3e7dcb91f3c65d72ba052d">extendedEuclid</a>(B, A % B, GCD, x, y);</div>
|
||||
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> T2 temp = *x;</div>
|
||||
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> *x = *y;</div>
|
||||
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> *y = temp - (A / B) * (*y);</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="ttc" id="aextended__euclid__algorithm_8cpp_html_acba15ca55b3e7dcb91f3c65d72ba052d"><div class="ttname"><a href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#acba15ca55b3e7dcb91f3c65d72ba052d">extendedEuclid</a></div><div class="ttdeci">void extendedEuclid(T A, T B, T *GCD, T2 *x, T2 *y)</div><div class="ttdef"><b>Definition:</b> extended_euclid_algorithm.cpp:70</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="../../d9/d5d/extended__euclid__algorithm_8cpp_acba15ca55b3e7dcb91f3c65d72ba052d_cgraph.svg" width="251" height="38"><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="../../d9/d5d/extended__euclid__algorithm_8cpp_acba15ca55b3e7dcb91f3c65d72ba052d_cgraph.svg" width="251" height="62"><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="a1792ac7c33aaf26b860ab55f5652ab25"></a>
|
||||
<a id="a1792ac7c33aaf26b860ab55f5652ab25" name="a1792ac7c33aaf26b860ab55f5652ab25"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a1792ac7c33aaf26b860ab55f5652ab25">◆ </a></span>extendedEuclid_1()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -258,7 +256,7 @@ template<typename T1 , typename T2 > </div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Implementation using iterative algorithm from <a href="https://en.wikipedia.org/wiki/Extended_Euclidean_algorithm#Pseudocode">Wikipedia</a></p>
|
||||
<p >Implementation using iterative algorithm from <a href="https://en.wikipedia.org/wiki/Extended_Euclidean_algorithm#Pseudocode" target="_blank">Wikipedia</a></p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">A</td><td>unsigned </td></tr>
|
||||
@@ -269,24 +267,24 @@ template<typename T1 , typename T2 > </div>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<div class="fragment"><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>  {</div>
|
||||
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  <span class="keywordflow">if</span> (B > A)</div>
|
||||
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/swap.html">std::swap</a>(A, B); <span class="comment">// Ensure that A >= B</span></div>
|
||||
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  </div>
|
||||
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  T2 s = 0, s0 = 1;</div>
|
||||
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  T2 t = 1, t0 = 0;</div>
|
||||
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  T1 r = B, r0 = A;</div>
|
||||
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  </div>
|
||||
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  <span class="keywordflow">while</span> (r != 0) {</div>
|
||||
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  T1 quotient = r0 / r;</div>
|
||||
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  <a class="code" href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#abe92d63a0ff9bda7e304df510d5dd217">update_step</a>(&r, &r0, quotient);</div>
|
||||
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  <a class="code" href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#abe92d63a0ff9bda7e304df510d5dd217">update_step</a>(&s, &s0, quotient);</div>
|
||||
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  <a class="code" href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#abe92d63a0ff9bda7e304df510d5dd217">update_step</a>(&t, &t0, quotient);</div>
|
||||
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  }</div>
|
||||
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  *GCD = r0;</div>
|
||||
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  *x = s0;</div>
|
||||
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  *y = t0;</div>
|
||||
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> }</div>
|
||||
<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> <span class="keywordflow">if</span> (B > A)</div>
|
||||
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/swap.html">std::swap</a>(A, B); <span class="comment">// Ensure that A >= B</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> T2 s = 0, s0 = 1;</div>
|
||||
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> T2 t = 1, t0 = 0;</div>
|
||||
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> T1 r = B, r0 = A;</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="keywordflow">while</span> (r != 0) {</div>
|
||||
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> T1 quotient = r0 / r;</div>
|
||||
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <a class="code hl_function" href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#abe92d63a0ff9bda7e304df510d5dd217">update_step</a>(&r, &r0, quotient);</div>
|
||||
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <a class="code hl_function" href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#abe92d63a0ff9bda7e304df510d5dd217">update_step</a>(&s, &s0, quotient);</div>
|
||||
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <a class="code hl_function" href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#abe92d63a0ff9bda7e304df510d5dd217">update_step</a>(&t, &t0, quotient);</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> *GCD = r0;</div>
|
||||
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> *x = s0;</div>
|
||||
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> *y = t0;</div>
|
||||
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span>}</div>
|
||||
<div class="ttc" id="aextended__euclid__algorithm_8cpp_html_abe92d63a0ff9bda7e304df510d5dd217"><div class="ttname"><a href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#abe92d63a0ff9bda7e304df510d5dd217">update_step</a></div><div class="ttdeci">void update_step(T *r, T *r0, const T2 quotient)</div><div class="ttdef"><b>Definition:</b> extended_euclid_algorithm.cpp:24</div></div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
@@ -297,7 +295,48 @@ Here is the call graph for this function:</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="abe92d63a0ff9bda7e304df510d5dd217"></a>
|
||||
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">◆ </a></span>main()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">int main </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">void </td>
|
||||
<td class="paramname"></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Main function. </p>
|
||||
<div class="fragment"><div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> {</div>
|
||||
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> uint32_t a, b, <a class="code hl_function" href="../../d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e">gcd</a>;</div>
|
||||
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> int32_t x, y;</div>
|
||||
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> >> a >> b;</div>
|
||||
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <a class="code hl_function" href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#acba15ca55b3e7dcb91f3c65d72ba052d">extendedEuclid</a>(a, b, &<a class="code hl_function" href="../../d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e">gcd</a>, &x, &y);</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/io/basic_ostream.html">std::cout</a> << <a class="code hl_function" href="../../d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e">gcd</a> << <span class="stringliteral">" "</span> << x << <span class="stringliteral">" "</span> << y << <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="l00093" name="l00093"></a><span class="lineno"> 93</span> <a class="code hl_function" href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#a1792ac7c33aaf26b860ab55f5652ab25">extendedEuclid_1</a>(a, b, &<a class="code hl_function" href="../../d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e">gcd</a>, &x, &y);</div>
|
||||
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <a class="code hl_function" href="../../d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e">gcd</a> << <span class="stringliteral">" "</span> << x << <span class="stringliteral">" "</span> << y << <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="l00095" name="l00095"></a><span class="lineno"> 95</span> <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</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>
|
||||
<div class="ttc" id="aextended__euclid__algorithm_8cpp_html_a1792ac7c33aaf26b860ab55f5652ab25"><div class="ttname"><a href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#a1792ac7c33aaf26b860ab55f5652ab25">extendedEuclid_1</a></div><div class="ttdeci">void extendedEuclid_1(T1 A, T1 B, T1 *GCD, T2 *x, T2 *y)</div><div class="ttdef"><b>Definition:</b> extended_euclid_algorithm.cpp:41</div></div>
|
||||
<div class="ttc" id="agcd__iterative__euclidean_8cpp_html_ae48807fa2b7000afae599e67f327545e"><div class="ttname"><a href="../../d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e">gcd</a></div><div class="ttdeci">int gcd(int num1, int num2)</div><div class="ttdef"><b>Definition:</b> gcd_iterative_euclidean.cpp:15</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="../../d9/d5d/extended__euclid__algorithm_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4_cgraph.svg" width="382" height="214"><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="abe92d63a0ff9bda7e304df510d5dd217" name="abe92d63a0ff9bda7e304df510d5dd217"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#abe92d63a0ff9bda7e304df510d5dd217">◆ </a></span>update_step()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -338,7 +377,7 @@ template<typename T , typename T2 > </div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>function to update the coefficients per iteration </p><p class="formulaDsp">
|
||||
<p >function to update the coefficients per iteration </p><p class="formulaDsp">
|
||||
\[r_0,\,r = r,\, r_0 - \text{quotient}\times r\]
|
||||
</p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
@@ -349,11 +388,11 @@ template<typename T , typename T2 > </div>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<div class="fragment"><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>  {</div>
|
||||
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>  T temp = *r;</div>
|
||||
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>  *r = *r0 - (quotient * temp);</div>
|
||||
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>  *r0 = temp;</div>
|
||||
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> }</div>
|
||||
<div class="fragment"><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> T temp = *r;</div>
|
||||
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> *r = *r0 - (quotient * temp);</div>
|
||||
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> *r0 = temp;</div>
|
||||
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span>}</div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
@@ -363,7 +402,7 @@ template<typename T , typename T2 > </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="../../d9/d5d/extended__euclid__algorithm_8cpp.html">extended_euclid_algorithm.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>
|
||||
|
||||
@@ -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: extendedEuclid_1 Pages: 1 -->
|
||||
<svg width="212pt" height="66pt"
|
||||
|
||||
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.4 KiB |
@@ -1,4 +1,4 @@
|
||||
<map id="extendedEuclid" name="extendedEuclid">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,5,119,32"/>
|
||||
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/swap.html#" title=" " alt="" coords="167,5,245,32"/>
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,29,119,56"/>
|
||||
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/swap.html#" title=" " alt="" coords="167,29,245,56"/>
|
||||
</map>
|
||||
|
||||
@@ -1 +1 @@
|
||||
6a7b6cbcf33f571852ae1e08fc9a0c82
|
||||
878ff88a9777911ebe4bb186ade346c1
|
||||
@@ -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: extendedEuclid Pages: 1 -->
|
||||
<svg width="188pt" height="28pt"
|
||||
viewBox="0.00 0.00 188.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)">
|
||||
<svg width="188pt" height="46pt"
|
||||
viewBox="0.00 0.00 188.00 46.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 42)">
|
||||
<title>extendedEuclid</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-24 184,-24 184,4 -4,4"/>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-42 184,-42 184,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
@@ -18,6 +18,12 @@
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node1 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node1</title>
|
||||
<path fill="none" stroke="midnightblue" d="M25.85,-19.76C17.76,-28.57 23.3,-38 42.5,-38 54.5,-38 61.16,-34.31 62.5,-29.4"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="65.74,-28.05 59.15,-19.76 59.12,-30.35 65.74,-28.05"/>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
@@ -28,7 +34,7 @@
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M85.09,-10C93.49,-10 102.29,-10 110.6,-10"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="110.78,-13.5 120.78,-10 110.78,-6.5 110.78,-13.5"/>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.9 KiB |
@@ -0,0 +1,9 @@
|
||||
<map id="main" name="main">
|
||||
<area shape="rect" id="node1" title="Main function." alt="" coords="5,105,56,132"/>
|
||||
<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="132,5,204,32"/>
|
||||
<area shape="rect" id="node3" href="$d9/d5d/extended__euclid__algorithm_8cpp.html#acba15ca55b3e7dcb91f3c65d72ba052d" title=" " alt="" coords="111,80,225,107"/>
|
||||
<area shape="rect" id="node5" href="$d9/d5d/extended__euclid__algorithm_8cpp.html#a1792ac7c33aaf26b860ab55f5652ab25" title=" " alt="" coords="104,131,232,157"/>
|
||||
<area shape="rect" id="node7" href="$d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e" title=" " alt="" coords="146,181,190,208"/>
|
||||
<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="289,80,367,107"/>
|
||||
<area shape="rect" id="node6" href="$d9/d5d/extended__euclid__algorithm_8cpp.html#abe92d63a0ff9bda7e304df510d5dd217" title=" " alt="" coords="280,131,376,157"/>
|
||||
</map>
|
||||
@@ -0,0 +1 @@
|
||||
bb8fc4b49f6cafee971eed4122d5c348
|
||||
@@ -0,0 +1,124 @@
|
||||
<?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: main Pages: 1 -->
|
||||
<svg width="286pt" height="160pt"
|
||||
viewBox="0.00 0.00 286.00 160.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 156)">
|
||||
<title>main</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-156 282,-156 282,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title="Main function.">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-57.5 0,-76.5 38,-76.5 38,-57.5 0,-57.5"/>
|
||||
<text text-anchor="middle" x="19" y="-64.5" font-family="Helvetica,sans-Serif" font-size="10.00">main</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="95,-132.5 95,-151.5 149,-151.5 149,-132.5 95,-132.5"/>
|
||||
<text text-anchor="middle" x="122" y="-139.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M27.08,-76.51C36.58,-88.7 54.52,-109.85 74,-123 77.53,-125.38 81.4,-127.54 85.36,-129.48"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="84.09,-132.74 94.65,-133.6 86.92,-126.34 84.09,-132.74"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#acba15ca55b3e7dcb91f3c65d72ba052d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="79.5,-76.5 79.5,-95.5 164.5,-95.5 164.5,-76.5 79.5,-76.5"/>
|
||||
<text text-anchor="middle" x="122" y="-83.5" font-family="Helvetica,sans-Serif" font-size="10.00">extendedEuclid</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node1->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M38.06,-70.4C46.92,-72.06 58.1,-74.17 69.35,-76.28"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="68.73,-79.73 79.21,-78.14 70.03,-72.85 68.73,-79.73"/>
|
||||
</g>
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#a1792ac7c33aaf26b860ab55f5652ab25" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-38.5 74,-57.5 170,-57.5 170,-38.5 74,-38.5"/>
|
||||
<text text-anchor="middle" x="122" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">extendedEuclid_1</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node5 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node1->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M38.06,-63.6C45.39,-62.22 54.31,-60.55 63.54,-58.81"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="64.44,-62.2 73.62,-56.91 63.15,-55.32 64.44,-62.2"/>
|
||||
</g>
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a xlink:href="../../d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="105.5,-0.5 105.5,-19.5 138.5,-19.5 138.5,-0.5 105.5,-0.5"/>
|
||||
<text text-anchor="middle" x="122" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">gcd</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node7 -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>Node1->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M31.92,-57.41C42.53,-49.17 58.7,-37.33 74,-29 80.91,-25.24 88.72,-21.79 95.97,-18.89"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="97.26,-22.14 105.35,-15.3 94.76,-15.6 97.26,-22.14"/>
|
||||
</g>
|
||||
<!-- Node3->Node3 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node3->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M106.28,-95.76C98.63,-104.57 103.87,-114 122,-114 133.33,-114 139.63,-110.31 140.89,-105.4"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="144.17,-104.17 137.72,-95.76 137.52,-106.35 144.17,-104.17"/>
|
||||
</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="212.5,-76.5 212.5,-95.5 271.5,-95.5 271.5,-76.5 212.5,-76.5"/>
|
||||
<text text-anchor="middle" x="242" y="-83.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::swap</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node4 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node3->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M164.6,-86C176.82,-86 190.12,-86 202.16,-86"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="202.35,-89.5 212.35,-86 202.35,-82.5 202.35,-89.5"/>
|
||||
</g>
|
||||
<!-- Node5->Node4 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>Node5->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M152.78,-57.59C167.93,-62.47 186.52,-68.46 202.73,-73.67"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="201.86,-77.07 212.45,-76.81 204.01,-70.41 201.86,-77.07"/>
|
||||
</g>
|
||||
<!-- Node6 -->
|
||||
<g id="node6" class="node">
|
||||
<title>Node6</title>
|
||||
<g id="a_node6"><a xlink:href="../../d9/d5d/extended__euclid__algorithm_8cpp.html#abe92d63a0ff9bda7e304df510d5dd217" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="206,-38.5 206,-57.5 278,-57.5 278,-38.5 206,-38.5"/>
|
||||
<text text-anchor="middle" x="242" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">update_step</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node6 -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>Node5->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M170.32,-48C178.61,-48 187.23,-48 195.47,-48"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="195.67,-51.5 205.67,-48 195.67,-44.5 195.67,-51.5"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 6.0 KiB |
@@ -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++: rat_maze 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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d60/namespacerat__maze.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -90,8 +90,7 @@ $(document).ready(function(){initNavTree('d9/d60/namespacerat__maze.html','../..
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">rat_maze Namespace Reference</div> </div>
|
||||
<div class="headertitle"><div class="title">rat_maze Namespace Reference</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
@@ -99,16 +98,16 @@ $(document).ready(function(){initNavTree('d9/d60/namespacerat__maze.html','../..
|
||||
solve-a-rat-in-a-maze-c-java-pytho/".
|
||||
<a href="../../d9/d60/namespacerat__maze.html#details">More...</a></p>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>Functions for <a href="https://www.codesdope.com/blog/article/backtracking-to-
|
||||
<div class="textblock"><p >Functions for <a href="https://www.codesdope.com/blog/article/backtracking-to-
|
||||
solve-a-rat-in-a-maze-c-java-pytho/". </p>
|
||||
<p>>Rat in a Maze algorithm </p>
|
||||
<p >target="_blank" >Rat in a Maze 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="../../d9/d60/namespacerat__maze.html">rat_maze</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>
|
||||
|
||||
@@ -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++: Machine Learning Algorithms</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++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 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&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search','.html');
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&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&dn=gpl-2.0.txt GPL-v2 */
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(document).ready(function(){initNavTree('d9/d66/group__machine__learning.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
@@ -92,45 +92,51 @@ $(document).ready(function(){initNavTree('d9/d66/group__machine__learning.html',
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#files">Files</a> |
|
||||
<a href="#namespaces">Namespaces</a> |
|
||||
<a href="#define-members">Macros</a> |
|
||||
<a href="#func-members">Functions</a> |
|
||||
<a href="#var-members">Variables</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">Machine Learning Algorithms</div> </div>
|
||||
<div class="headertitle"><div class="title">Machine Learning Algorithms</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
|
||||
Files</h2></td></tr>
|
||||
<tr class="memitem:d5/db0/adaline__learning_8cpp"><td class="memItemLeft" align="right" valign="top">file  </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/db0/adaline__learning_8cpp.html">adaline_learning.cpp</a></td></tr>
|
||||
<tr class="memdesc:d5/db0/adaline__learning_8cpp"><td class="mdescLeft"> </td><td class="mdescRight"><a href="https://en.wikipedia.org/wiki/ADALINE">Adaptive Linear Neuron (ADALINE)</a> implementation <br /></td></tr>
|
||||
<tr class="memdesc:d5/db0/adaline__learning_8cpp"><td class="mdescLeft"> </td><td class="mdescRight"><a href="https://en.wikipedia.org/wiki/ADALINE" target="_blank">Adaptive Linear Neuron (ADALINE)</a> implementation <br /></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:d4/def/kohonen__som__topology_8cpp"><td class="memItemLeft" align="right" valign="top">file  </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/def/kohonen__som__topology_8cpp.html">kohonen_som_topology.cpp</a></td></tr>
|
||||
<tr class="memdesc:d4/def/kohonen__som__topology_8cpp"><td class="mdescLeft"> </td><td class="mdescRight"><a href="https://en.wikipedia.org/wiki/Self-organizing_map">Kohonen self organizing map</a> (topological map) <br /></td></tr>
|
||||
<tr class="memdesc:d4/def/kohonen__som__topology_8cpp"><td class="mdescLeft"> </td><td class="mdescRight"><a href="https://en.wikipedia.org/wiki/Self-organizing_map" target="_blank">Kohonen self organizing map</a> (topological map) <br /></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:d9/d49/kohonen__som__trace_8cpp"><td class="memItemLeft" align="right" valign="top">file  </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d49/kohonen__som__trace_8cpp.html">kohonen_som_trace.cpp</a></td></tr>
|
||||
<tr class="memdesc:d9/d49/kohonen__som__trace_8cpp"><td class="mdescLeft"> </td><td class="mdescRight"><a href="https://en.wikipedia.org/wiki/Self-organizing_map">Kohonen self organizing map</a> (data tracing) <br /></td></tr>
|
||||
<tr class="memdesc:d9/d49/kohonen__som__trace_8cpp"><td class="mdescLeft"> </td><td class="mdescRight"><a href="https://en.wikipedia.org/wiki/Self-organizing_map" target="_blank">Kohonen self organizing map</a> (data tracing) <br /></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </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="namespaces" name="namespaces"></a>
|
||||
Namespaces</h2></td></tr>
|
||||
<tr class="memitem:d8/d77/namespacemachine__learning"><td class="memItemLeft" align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d77/namespacemachine__learning.html">machine_learning</a></td></tr>
|
||||
<tr class="memdesc:d8/d77/namespacemachine__learning"><td class="mdescLeft"> </td><td class="mdescRight"><a href="https://en.wikipedia.org/wiki/A*_search_algorithm" target="_blank">A* search algorithm</a> <br /></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
|
||||
Functions</h2></td></tr>
|
||||
<tr class="memitem:gaf5ce14f026d6d231bef29161bac2b485"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a> (double a, double b)</td></tr>
|
||||
<tr class="separator:gaf5ce14f026d6d231bef29161bac2b485"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga6c606bc85a3e9fd9d010f874ad760336"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d66/group__machine__learning.html#ga6c606bc85a3e9fd9d010f874ad760336">save_2d_data</a> (const char *fname, const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double >> &X)</td></tr>
|
||||
<tr class="separator:ga6c606bc85a3e9fd9d010f874ad760336"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gab53c14440b2b2dd3172c66afc5c2f63f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d66/group__machine__learning.html#gab53c14440b2b2dd3172c66afc5c2f63f">get_min_2d</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double >> &X, double *val, int *x_idx, int *y_idx)</td></tr>
|
||||
<tr class="separator:gab53c14440b2b2dd3172c66afc5c2f63f"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga72699c805c19a6cc47a937a6f3378afa"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa">save_nd_data</a> (const char *fname, const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double >> &X)</td></tr>
|
||||
<tr class="separator:ga72699c805c19a6cc47a937a6f3378afa"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gabc90175770bf0d5853c466e14993a08c"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d66/group__machine__learning.html#gabc90175770bf0d5853c466e14993a08c">save_2d_data</a> (const char *fname, const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > > &X)</td></tr>
|
||||
<tr class="separator:gabc90175770bf0d5853c466e14993a08c"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga60f9186ccb682724a8792a2bf81e9b9e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d66/group__machine__learning.html#ga60f9186ccb682724a8792a2bf81e9b9e">get_min_2d</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > > &X, double *val, int *x_idx, int *y_idx)</td></tr>
|
||||
<tr class="separator:ga60f9186ccb682724a8792a2bf81e9b9e"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gae0208548f8b393528e5db01717e88e67"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67">save_nd_data</a> (const char *fname, const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > > &X)</td></tr>
|
||||
<tr class="separator:gae0208548f8b393528e5db01717e88e67"><td class="memSeparator" colspan="2"> </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:ga5118e5cbc4f0886e27b3a7a2544dded1"><td class="memItemLeft" align="right" valign="top">constexpr int </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d66/group__machine__learning.html#ga5118e5cbc4f0886e27b3a7a2544dded1">MAX_ITER</a> = 500</td></tr>
|
||||
<tr class="separator:ga5118e5cbc4f0886e27b3a7a2544dded1"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<h2 class="groupheader">Function Documentation</h2>
|
||||
<a id="gaf5ce14f026d6d231bef29161bac2b485"></a>
|
||||
<a id="gaf5ce14f026d6d231bef29161bac2b485" name="gaf5ce14f026d6d231bef29161bac2b485"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#gaf5ce14f026d6d231bef29161bac2b485">◆ </a></span>_random()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -155,7 +161,7 @@ Variables</h2></td></tr>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Helper function to generate a random number in a given interval. <br />
|
||||
<p >Helper function to generate a random number in a given interval. <br />
|
||||
Steps:</p><ol type="1">
|
||||
<li><code>r1 = rand() % 100</code> gets a random number between 0 and 99</li>
|
||||
<li><code>r2 = r1 / 100</code> converts random number to be between 0 and 0.99</li>
|
||||
@@ -169,9 +175,9 @@ Variables</h2></td></tr>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>random number in the range \([a,b]\) </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  {</div>
|
||||
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  <span class="keywordflow">return</span> ((b - a) * (<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/random/rand.html">std::rand</a>() % 100) / 100.f) + a;</div>
|
||||
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> }</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="keywordflow">return</span> ((b - a) * (<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/random/rand.html">std::rand</a>() % 100) / 100.f) + a;</div>
|
||||
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span>}</div>
|
||||
<div class="ttc" id="arand_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/numeric/random/rand.html">std::rand</a></div><div class="ttdeci">T rand(T... args)</div></div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
@@ -182,8 +188,8 @@ Here is the call graph for this function:</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="gab53c14440b2b2dd3172c66afc5c2f63f"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#gab53c14440b2b2dd3172c66afc5c2f63f">◆ </a></span>get_min_2d()</h2>
|
||||
<a id="ga60f9186ccb682724a8792a2bf81e9b9e" name="ga60f9186ccb682724a8792a2bf81e9b9e"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga60f9186ccb682724a8792a2bf81e9b9e">◆ </a></span>get_min_2d()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
@@ -191,7 +197,7 @@ Here is the call graph for this function:</div>
|
||||
<tr>
|
||||
<td class="memname">void get_min_2d </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>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double >> & </td>
|
||||
<td class="paramtype">const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > > & </td>
|
||||
<td class="paramname"><em>X</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -219,7 +225,7 @@ Here is the call graph for this function:</div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Get minimum value and index of the value in a matrix </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<p >Get minimum value and index of the value in a matrix </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">X</td><td>matrix to search </td></tr>
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">N</td><td>number of points in the vector </td></tr>
|
||||
@@ -229,42 +235,40 @@ Here is the call graph for this function:</div>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<div class="fragment"><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  {</div>
|
||||
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  val[0] = INFINITY; <span class="comment">// initial min value</span></div>
|
||||
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  <span class="keywordtype">size_t</span> <a class="code" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a> = X.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  </div>
|
||||
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < <a class="code" href="../../d6/d42/data__structures_2sparse__table_8cpp.html#a10f3ffb3f6f7e1b83d556b9c8de89a5d">N</a>; i++) { <span class="comment">// traverse each x-index</span></div>
|
||||
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  <span class="keyword">auto</span> <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a> = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/min_element.html">std::min_element</a>(<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(X[i]), <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/end.html">std::end</a>(X[i]));</div>
|
||||
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  <span class="keywordtype">double</span> d_min = *<a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>;</div>
|
||||
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/types/ptrdiff_t.html">std::ptrdiff_t</a> j = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/distance.html">std::distance</a>(<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(X[i]), result);</div>
|
||||
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  </div>
|
||||
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <span class="keywordflow">if</span> (d_min < val[0]) { <span class="comment">// if a lower value is found</span></div>
|
||||
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  <span class="comment">// save the value and its index</span></div>
|
||||
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  x_idx[0] = i;</div>
|
||||
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  y_idx[0] = j;</div>
|
||||
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  val[0] = d_min;</div>
|
||||
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  }</div>
|
||||
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  }</div>
|
||||
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> }</div>
|
||||
<div class="fragment"><div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> {</div>
|
||||
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> val[0] = INFINITY; <span class="comment">// initial min value</span></div>
|
||||
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> <span class="keywordtype">size_t</span> N = X.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> </div>
|
||||
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < N; i++) { <span class="comment">// traverse each x-index</span></div>
|
||||
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> <span class="keyword">auto</span> result = <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/min_element.html">std::min_element</a>(<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(X[i]), <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/end.html">std::end</a>(X[i]));</div>
|
||||
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> <span class="keywordtype">double</span> d_min = *result;</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/types/ptrdiff_t.html">std::ptrdiff_t</a> j = <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/distance.html">std::distance</a>(<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/iterator/begin.html">std::begin</a>(X[i]), result);</div>
|
||||
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> </div>
|
||||
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> <span class="keywordflow">if</span> (d_min < val[0]) { <span class="comment">// if a lower value is found</span></div>
|
||||
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> <span class="comment">// save the value and its index</span></div>
|
||||
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> x_idx[0] = i;</div>
|
||||
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> y_idx[0] = j;</div>
|
||||
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> val[0] = d_min;</div>
|
||||
<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> }</div>
|
||||
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span>}</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="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="adistance_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/iterator/distance.html">std::distance</a></div><div class="ttdeci">T distance(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="afibonacci__sum_8cpp_html_aadb40ac4c74a7efc0680b83eeee138aa"><div class="ttname"><a href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">math::fibonacci_sum::result</a></div><div class="ttdeci">uint64_t result(uint64_t n)</div><div class="ttdef"><b>Definition:</b> fibonacci_sum.cpp:76</div></div>
|
||||
<div class="ttc" id="amin_element_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/algorithm/min_element.html">std::min_element</a></div><div class="ttdeci">T min_element(T... args)</div></div>
|
||||
<div class="ttc" id="aptrdiff_t_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/types/ptrdiff_t.html">std::ptrdiff_t</a></div></div>
|
||||
<div class="ttc" id="asize_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector/size.html">std::vector::size</a></div><div class="ttdeci">T size(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="../../d9/d66/group__machine__learning_gab53c14440b2b2dd3172c66afc5c2f63f_cgraph.svg" width="275" 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="../../d9/d66/group__machine__learning_ga60f9186ccb682724a8792a2bf81e9b9e_cgraph.svg" width="275" height="190"><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="ga6c606bc85a3e9fd9d010f874ad760336"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga6c606bc85a3e9fd9d010f874ad760336">◆ </a></span>save_2d_data()</h2>
|
||||
<a id="gabc90175770bf0d5853c466e14993a08c" name="gabc90175770bf0d5853c466e14993a08c"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#gabc90175770bf0d5853c466e14993a08c">◆ </a></span>save_2d_data()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
@@ -278,7 +282,7 @@ Here is the call graph for this function:</div>
|
||||
<tr>
|
||||
<td class="paramkey"></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>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double >> & </td>
|
||||
<td class="paramtype">const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > > & </td>
|
||||
<td class="paramname"><em>X</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -288,7 +292,7 @@ Here is the call graph for this function:</div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Save a given n-dimensional data martix to file.</p>
|
||||
<p >Save a given n-dimensional data martix to file.</p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">fname</td><td>filename to save in (gets overwriten without confirmation) </td></tr>
|
||||
@@ -299,36 +303,36 @@ Here is the call graph for this function:</div>
|
||||
<dl class="section return"><dt>Returns</dt><dd>0 if all ok </dd>
|
||||
<dd>
|
||||
-1 if file creation failed </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  {</div>
|
||||
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  <span class="keywordtype">size_t</span> num_points = X.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); <span class="comment">// number of rows</span></div>
|
||||
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  <span class="keywordtype">size_t</span> num_features = X[0].<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); <span class="comment">// number of columns</span></div>
|
||||
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  </div>
|
||||
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ofstream.html">std::ofstream</a> fp;</div>
|
||||
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  fp.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ofstream/open.html">open</a>(fname);</div>
|
||||
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <span class="keywordflow">if</span> (!fp.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ofstream/is_open.html">is_open</a>()) {</div>
|
||||
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <span class="comment">// error with opening file to write</span></div>
|
||||
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> << <span class="stringliteral">"Error opening file "</span> << fname << <span class="stringliteral">": "</span></div>
|
||||
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/byte/strerror.html">std::strerror</a>(errno) << <span class="stringliteral">"\n"</span>;</div>
|
||||
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  <span class="keywordflow">return</span> -1;</div>
|
||||
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  }</div>
|
||||
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  </div>
|
||||
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <span class="comment">// for each point in the array</span></div>
|
||||
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < num_points; i++) {</div>
|
||||
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <span class="comment">// for each feature in the array</span></div>
|
||||
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j < num_features; j++) {</div>
|
||||
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  fp << X[i][j]; <span class="comment">// print the feature value</span></div>
|
||||
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <span class="keywordflow">if</span> (j < num_features - 1) { <span class="comment">// if not the last feature</span></div>
|
||||
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  fp << <span class="stringliteral">","</span>; <span class="comment">// suffix comma</span></div>
|
||||
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  }</div>
|
||||
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  }</div>
|
||||
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <span class="keywordflow">if</span> (i < num_points - 1) { <span class="comment">// if not the last row</span></div>
|
||||
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  fp << <span class="stringliteral">"\n"</span>; <span class="comment">// start a new line</span></div>
|
||||
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  }</div>
|
||||
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  }</div>
|
||||
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  </div>
|
||||
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  fp.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ofstream/close.html">close</a>();</div>
|
||||
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> }</div>
|
||||
<div class="fragment"><div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> {</div>
|
||||
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keywordtype">size_t</span> num_points = X.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); <span class="comment">// number of rows</span></div>
|
||||
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <span class="keywordtype">size_t</span> num_features = X[0].<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); <span class="comment">// number of columns</span></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_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ofstream.html">std::ofstream</a> fp;</div>
|
||||
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> fp.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ofstream/open.html">open</a>(fname);</div>
|
||||
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <span class="keywordflow">if</span> (!fp.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ofstream/is_open.html">is_open</a>()) {</div>
|
||||
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="comment">// error with opening file to write</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::cerr</a> << <span class="stringliteral">"Error opening file "</span> << fname << <span class="stringliteral">": "</span></div>
|
||||
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> << <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/string/byte/strerror.html">std::strerror</a>(errno) << <span class="stringliteral">"\n"</span>;</div>
|
||||
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">return</span> -1;</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="comment">// for each point in the array</span></div>
|
||||
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < num_points; i++) {</div>
|
||||
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> <span class="comment">// for each feature in the array</span></div>
|
||||
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j < num_features; j++) {</div>
|
||||
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> fp << X[i][j]; <span class="comment">// print the feature value</span></div>
|
||||
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">if</span> (j < num_features - 1) { <span class="comment">// if not the last feature</span></div>
|
||||
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> fp << <span class="stringliteral">","</span>; <span class="comment">// suffix comma</span></div>
|
||||
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> }</div>
|
||||
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> }</div>
|
||||
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> <span class="keywordflow">if</span> (i < num_points - 1) { <span class="comment">// if not the last row</span></div>
|
||||
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> fp << <span class="stringliteral">"\n"</span>; <span class="comment">// start a new line</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> }</div>
|
||||
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> </div>
|
||||
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> fp.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ofstream/close.html">close</a>();</div>
|
||||
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span>}</div>
|
||||
<div class="ttc" id="abasic_ofstream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ofstream.html">std::ofstream</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::cerr</a></div></div>
|
||||
<div class="ttc" id="aclose_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ofstream/close.html">std::ofstream::close</a></div><div class="ttdeci">T close(T... args)</div></div>
|
||||
@@ -338,14 +342,14 @@ Here is the call graph for this function:</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="../../d9/d66/group__machine__learning_ga6c606bc85a3e9fd9d010f874ad760336_cgraph.svg" width="318" 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="../../d9/d66/group__machine__learning_gabc90175770bf0d5853c466e14993a08c_cgraph.svg" width="318" height="190"><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="ga72699c805c19a6cc47a937a6f3378afa"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga72699c805c19a6cc47a937a6f3378afa">◆ </a></span>save_nd_data()</h2>
|
||||
<a id="gae0208548f8b393528e5db01717e88e67" name="gae0208548f8b393528e5db01717e88e67"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#gae0208548f8b393528e5db01717e88e67">◆ </a></span>save_nd_data()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
@@ -359,7 +363,7 @@ Here is the call graph for this function:</div>
|
||||
<tr>
|
||||
<td class="paramkey"></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>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double >> & </td>
|
||||
<td class="paramtype">const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/valarray.html">std::valarray</a>< double > > & </td>
|
||||
<td class="paramname"><em>X</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -369,7 +373,7 @@ Here is the call graph for this function:</div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Save a given n-dimensional data martix to file.</p>
|
||||
<p >Save a given n-dimensional data martix to file.</p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramdir">[in]</td><td class="paramname">fname</td><td>filename to save in (gets overwriten without confirmation) </td></tr>
|
||||
@@ -380,46 +384,46 @@ Here is the call graph for this function:</div>
|
||||
<dl class="section return"><dt>Returns</dt><dd>0 if all ok </dd>
|
||||
<dd>
|
||||
-1 if file creation failed </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  {</div>
|
||||
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="keywordtype">size_t</span> num_points = X.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); <span class="comment">// number of rows</span></div>
|
||||
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  <span class="keywordtype">size_t</span> num_features = X[0].<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); <span class="comment">// number of columns</span></div>
|
||||
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  </div>
|
||||
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ofstream.html">std::ofstream</a> fp;</div>
|
||||
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  fp.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ofstream/open.html">open</a>(fname);</div>
|
||||
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  <span class="keywordflow">if</span> (!fp.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ofstream/is_open.html">is_open</a>()) {</div>
|
||||
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  <span class="comment">// error with opening file to write</span></div>
|
||||
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> << <span class="stringliteral">"Error opening file "</span> << fname << <span class="stringliteral">"\n"</span>;</div>
|
||||
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  <span class="keywordflow">return</span> -1;</div>
|
||||
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  }</div>
|
||||
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  </div>
|
||||
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  <span class="comment">// for each point in the array</span></div>
|
||||
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < num_points; i++) {</div>
|
||||
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <span class="comment">// for each feature in the array</span></div>
|
||||
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j < num_features; j++) {</div>
|
||||
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  fp << X[i][j]; <span class="comment">// print the feature value</span></div>
|
||||
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  <span class="keywordflow">if</span> (j < num_features - 1) { <span class="comment">// if not the last feature</span></div>
|
||||
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  fp << <span class="stringliteral">","</span>; <span class="comment">// suffix comma</span></div>
|
||||
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  }</div>
|
||||
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  }</div>
|
||||
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <span class="keywordflow">if</span> (i < num_points - 1) { <span class="comment">// if not the last row</span></div>
|
||||
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  fp << <span class="stringliteral">"\n"</span>; <span class="comment">// start a new line</span></div>
|
||||
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  }</div>
|
||||
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  }</div>
|
||||
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  </div>
|
||||
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  fp.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ofstream/close.html">close</a>();</div>
|
||||
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> }</div>
|
||||
<div class="fragment"><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="keywordtype">size_t</span> num_points = X.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); <span class="comment">// number of rows</span></div>
|
||||
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> <span class="keywordtype">size_t</span> num_features = X[0].<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); <span class="comment">// number of columns</span></div>
|
||||
<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> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ofstream.html">std::ofstream</a> fp;</div>
|
||||
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> fp.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ofstream/open.html">open</a>(fname);</div>
|
||||
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">if</span> (!fp.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ofstream/is_open.html">is_open</a>()) {</div>
|
||||
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="comment">// error with opening file to write</span></div>
|
||||
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> << <span class="stringliteral">"Error opening file "</span> << fname << <span class="stringliteral">"\n"</span>;</div>
|
||||
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">return</span> -1;</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> </div>
|
||||
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="comment">// for each point in the array</span></div>
|
||||
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < num_points; i++) {</div>
|
||||
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="comment">// for each feature in the array</span></div>
|
||||
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j < num_features; j++) {</div>
|
||||
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> fp << X[i][j]; <span class="comment">// print the feature value</span></div>
|
||||
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">if</span> (j < num_features - 1) { <span class="comment">// if not the last feature</span></div>
|
||||
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> fp << <span class="stringliteral">","</span>; <span class="comment">// suffix comma</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> }</div>
|
||||
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">if</span> (i < num_points - 1) { <span class="comment">// if not the last row</span></div>
|
||||
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> fp << <span class="stringliteral">"\n"</span>; <span class="comment">// start a new line</span></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> fp.<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ofstream/close.html">close</a>();</div>
|
||||
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span>}</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="../../d9/d66/group__machine__learning_ga72699c805c19a6cc47a937a6f3378afa_cgraph.svg" width="318" 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="../../d9/d66/group__machine__learning_gae0208548f8b393528e5db01717e88e67_cgraph.svg" width="318" 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>
|
||||
<h2 class="groupheader">Variable Documentation</h2>
|
||||
<a id="ga5118e5cbc4f0886e27b3a7a2544dded1"></a>
|
||||
<a id="ga5118e5cbc4f0886e27b3a7a2544dded1" name="ga5118e5cbc4f0886e27b3a7a2544dded1"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga5118e5cbc4f0886e27b3a7a2544dded1">◆ </a></span>MAX_ITER</h2>
|
||||
|
||||
<div class="memitem">
|
||||
@@ -438,7 +442,7 @@ Here is the call graph for this function:</div>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Maximum number of iterations to learn </p>
|
||||
<p >Maximum number of iterations to learn </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -447,7 +451,7 @@ Here is the call graph for this function:</div>
|
||||
<!-- 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>
|
||||
|
||||
@@ -3,9 +3,10 @@ var group__machine__learning =
|
||||
[ "adaline_learning.cpp", "d5/db0/adaline__learning_8cpp.html", null ],
|
||||
[ "kohonen_som_topology.cpp", "d4/def/kohonen__som__topology_8cpp.html", null ],
|
||||
[ "kohonen_som_trace.cpp", "d9/d49/kohonen__som__trace_8cpp.html", null ],
|
||||
[ "machine_learning", "d8/d77/namespacemachine__learning.html", null ],
|
||||
[ "_random", "d9/d66/group__machine__learning.html#gaf5ce14f026d6d231bef29161bac2b485", null ],
|
||||
[ "get_min_2d", "d9/d66/group__machine__learning.html#gab53c14440b2b2dd3172c66afc5c2f63f", null ],
|
||||
[ "save_2d_data", "d9/d66/group__machine__learning.html#ga6c606bc85a3e9fd9d010f874ad760336", null ],
|
||||
[ "save_nd_data", "d9/d66/group__machine__learning.html#ga72699c805c19a6cc47a937a6f3378afa", null ],
|
||||
[ "get_min_2d", "d9/d66/group__machine__learning.html#ga60f9186ccb682724a8792a2bf81e9b9e", null ],
|
||||
[ "save_2d_data", "d9/d66/group__machine__learning.html#gabc90175770bf0d5853c466e14993a08c", null ],
|
||||
[ "save_nd_data", "d9/d66/group__machine__learning.html#gae0208548f8b393528e5db01717e88e67", null ],
|
||||
[ "MAX_ITER", "d9/d66/group__machine__learning.html#ga5118e5cbc4f0886e27b3a7a2544dded1", null ]
|
||||
];
|
||||