Documentation for 60a0c5947d

This commit is contained in:
github-actions 2023-01-20 04:47:59 +00:00
parent 2c81003e46
commit 0e652822ed
857 changed files with 2815 additions and 2842 deletions

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: Data Structures</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
@ -156,7 +156,7 @@ $(document).ready(function(){initNavTree('annotated.html',''); initResizable();
<!-- 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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: Data Structure Index</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
@ -165,7 +165,7 @@ $(document).ready(function(){initNavTree('classes.html',''); initResizable(); })
<!-- 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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: numerical_methods/qr_decompose.h Pages: 1 -->
<svg width="186pt" height="93pt"

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: QueueRep Struct Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -130,7 +130,7 @@ int&#160;</td><td class="memItemRight" valign="bottom"><b>length</b></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d0/d10/struct_queue_rep.html">QueueRep</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: node Pages: 1 -->
<svg width="107pt" height="96pt"

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: sorting/insertion_sort.c Pages: 1 -->
<svg width="252pt" height="82pt"

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: project_euler/problem_8/sol2.c Pages: 1 -->
<svg width="188pt" height="93pt"

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: pid Struct Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -125,18 +125,18 @@ float&#160;</td><td class="memItemRight" valign="bottom"><b>integral</b></td></t
<tr class="separator:a3c54185f7b4867281786eff640443a00"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>PID Controller. </p>
<p>The PID controller is a linear control algorithm that has three terms:</p><ul>
<div class="textblock"><p >PID Controller. </p>
<p >The PID controller is a linear control algorithm that has three terms:</p><ul>
<li>Proportional: A simple scaling of the error value by a gain kP</li>
<li>Integral: Integration of the error value over time, then multipled by gain kI</li>
<li>Derivative: Rate of change of the error value over time, multiplied by gain kD</li>
</ul>
<p>Terms of the controller can be removed by setting their gain to 0, creating a PI (kD = 0) or PD (kI = 0) controller. Depending on the control problem at hand, some terms may not increase the performance of the system, or may have a negative effect.</p>
<p>For a more mathematical expanation of the PID Controller, see <a href="https://en.wikipedia.org/wiki/PID_controller">https://en.wikipedia.org/wiki/PID_controller</a></p>
<p>Limitations of this implementation:</p><ul>
<p >Terms of the controller can be removed by setting their gain to 0, creating a PI (kD = 0) or PD (kI = 0) controller. Depending on the control problem at hand, some terms may not increase the performance of the system, or may have a negative effect.</p>
<p >For a more mathematical expanation of the PID Controller, see <a href="https://en.wikipedia.org/wiki/PID_controller">https://en.wikipedia.org/wiki/PID_controller</a></p>
<p >Limitations of this implementation:</p><ul>
<li>Since this implementation is just for demonstration, the pid_step function takes the dt as a parameter, and it can be provided by the user in <a class="el" href="../../dd/d93/client_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4" title="Driver code.">main()</a>. This allows deterministic experimentation with the algorithm, rather than using time(NULL) which would make the function non-deterministic.</li>
</ul>
<p>Inputs: e(t) - Current error at time t. For example, how far a servo is off the desired angle Output: u(t) - Controller output at time t. </p>
<p >Inputs: e(t) - Current error at time t. For example, how far a servo is off the desired angle Output: u(t) - Controller output at time t. </p>
</div><hr/>The documentation for this struct was generated from the following file:<ul>
<li>misc/pid.c</li>
</ul>
@ -146,7 +146,7 @@ float&#160;</td><td class="memItemRight" valign="bottom"><b>integral</b></td></t
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d0/d43/structpid.html">pid</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: machine_learning/kohonen_som_trace.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -135,48 +135,48 @@ Macros</h2></td></tr>
<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&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/group__kohonen__1d.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a> (double a, double b)</td></tr>
<tr class="memdesc:gaf5ce14f026d6d231bef29161bac2b485"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to generate a random number in a given interval. <br /></td></tr>
<tr class="memdesc:gaf5ce14f026d6d231bef29161bac2b485"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to generate a random number in a given interval. <a href="../../d0/dcb/group__kohonen__1d.html#gaf5ce14f026d6d231bef29161bac2b485">More...</a><br /></td></tr>
<tr class="separator:gaf5ce14f026d6d231bef29161bac2b485"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7b84b14e60f47812b581d1f93057c85a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/group__kohonen__1d.html#ga7b84b14e60f47812b581d1f93057c85a">save_nd_data</a> (const char *fname, double **X, int num_points, int num_features)</td></tr>
<tr class="memdesc:ga7b84b14e60f47812b581d1f93057c85a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Save a given n-dimensional data martix to file. <br /></td></tr>
<tr class="memdesc:ga7b84b14e60f47812b581d1f93057c85a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Save a given n-dimensional data martix to file. <a href="../../d0/dcb/group__kohonen__1d.html#ga7b84b14e60f47812b581d1f93057c85a">More...</a><br /></td></tr>
<tr class="separator:ga7b84b14e60f47812b581d1f93057c85a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4a57a413a3cef286a7da6d4666575586"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/group__kohonen__1d.html#ga4a57a413a3cef286a7da6d4666575586">kohonen_get_min_1d</a> (double const *X, int N, double *val, int *idx)</td></tr>
<tr class="memdesc:ga4a57a413a3cef286a7da6d4666575586"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get minimum value and index of the value in a vector. <br /></td></tr>
<tr class="memdesc:ga4a57a413a3cef286a7da6d4666575586"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get minimum value and index of the value in a vector. <a href="../../d0/dcb/group__kohonen__1d.html#ga4a57a413a3cef286a7da6d4666575586">More...</a><br /></td></tr>
<tr class="separator:ga4a57a413a3cef286a7da6d4666575586"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae334493a0917a24736fe5ba82aa6f81f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/group__kohonen__1d.html#gae334493a0917a24736fe5ba82aa6f81f">kohonen_update_weights</a> (double const *x, double *const *W, double *D, int num_out, int num_features, double alpha, int R)</td></tr>
<tr class="memdesc:gae334493a0917a24736fe5ba82aa6f81f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update weights of the SOM using Kohonen algorithm. <br /></td></tr>
<tr class="memdesc:gae334493a0917a24736fe5ba82aa6f81f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update weights of the SOM using Kohonen algorithm. <a href="../../d0/dcb/group__kohonen__1d.html#gae334493a0917a24736fe5ba82aa6f81f">More...</a><br /></td></tr>
<tr class="separator:gae334493a0917a24736fe5ba82aa6f81f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaeaeffbff2be4d5d15b0d4f10f846abde"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/group__kohonen__1d.html#gaeaeffbff2be4d5d15b0d4f10f846abde">kohonen_som_tracer</a> (double **X, double *const *W, int num_samples, int num_features, int num_out, double alpha_min)</td></tr>
<tr class="memdesc:gaeaeffbff2be4d5d15b0d4f10f846abde"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply incremental algorithm with updating neighborhood and learning rates on all samples in the given datset. <br /></td></tr>
<tr class="memdesc:gaeaeffbff2be4d5d15b0d4f10f846abde"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply incremental algorithm with updating neighborhood and learning rates on all samples in the given datset. <a href="../../d0/dcb/group__kohonen__1d.html#gaeaeffbff2be4d5d15b0d4f10f846abde">More...</a><br /></td></tr>
<tr class="separator:gaeaeffbff2be4d5d15b0d4f10f846abde"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a107f00650b8041f77767927073ddddb8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d46/kohonen__som__trace_8c.html#a107f00650b8041f77767927073ddddb8">test_circle</a> (double *const *<a class="el" href="../../df/dea/structdata.html">data</a>, int N)</td></tr>
<tr class="memdesc:a107f00650b8041f77767927073ddddb8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a random set of points distributed <em>near</em> the circumference of a circle and trains an SOM that finds that circular pattern. <br /></td></tr>
<tr class="memdesc:a107f00650b8041f77767927073ddddb8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a random set of points distributed <em>near</em> the circumference of a circle and trains an SOM that finds that circular pattern. <a href="../../d0/d46/kohonen__som__trace_8c.html#a107f00650b8041f77767927073ddddb8">More...</a><br /></td></tr>
<tr class="separator:a107f00650b8041f77767927073ddddb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1440a7779ac56f47a3f355ce4a8c7da0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d46/kohonen__som__trace_8c.html#a1440a7779ac56f47a3f355ce4a8c7da0">test1</a> ()</td></tr>
<tr class="memdesc:a1440a7779ac56f47a3f355ce4a8c7da0"><td class="mdescLeft">&#160;</td><td class="mdescRight">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. <br /></td></tr>
<tr class="memdesc:a1440a7779ac56f47a3f355ce4a8c7da0"><td class="mdescLeft">&#160;</td><td class="mdescRight">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. <a href="../../d0/d46/kohonen__som__trace_8c.html#a1440a7779ac56f47a3f355ce4a8c7da0">More...</a><br /></td></tr>
<tr class="separator:a1440a7779ac56f47a3f355ce4a8c7da0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2246f940155472084ee461f3685d614"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d46/kohonen__som__trace_8c.html#aa2246f940155472084ee461f3685d614">test_lamniscate</a> (double *const *<a class="el" href="../../df/dea/structdata.html">data</a>, int N)</td></tr>
<tr class="memdesc:aa2246f940155472084ee461f3685d614"><td class="mdescLeft">&#160;</td><td class="mdescRight">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>. <br /></td></tr>
<tr class="memdesc:aa2246f940155472084ee461f3685d614"><td class="mdescLeft">&#160;</td><td class="mdescRight">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>. <a href="../../d0/d46/kohonen__som__trace_8c.html#aa2246f940155472084ee461f3685d614">More...</a><br /></td></tr>
<tr class="separator:aa2246f940155472084ee461f3685d614"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0283886819c7c140a023582b7269e2d0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d46/kohonen__som__trace_8c.html#a0283886819c7c140a023582b7269e2d0">test2</a> ()</td></tr>
<tr class="memdesc:a0283886819c7c140a023582b7269e2d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">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. <br /></td></tr>
<tr class="memdesc:a0283886819c7c140a023582b7269e2d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">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. <a href="../../d0/d46/kohonen__som__trace_8c.html#a0283886819c7c140a023582b7269e2d0">More...</a><br /></td></tr>
<tr class="separator:a0283886819c7c140a023582b7269e2d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41ae16442e3e5b891a58d2e5932a2cd0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d46/kohonen__som__trace_8c.html#a41ae16442e3e5b891a58d2e5932a2cd0">test_3d_classes</a> (double *const *<a class="el" href="../../df/dea/structdata.html">data</a>, int N)</td></tr>
<tr class="memdesc:a41ae16442e3e5b891a58d2e5932a2cd0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a random set of points distributed in four clusters in 3D space with centroids at the points. <br /></td></tr>
<tr class="memdesc:a41ae16442e3e5b891a58d2e5932a2cd0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a random set of points distributed in four clusters in 3D space with centroids at the points. <a href="../../d0/d46/kohonen__som__trace_8c.html#a41ae16442e3e5b891a58d2e5932a2cd0">More...</a><br /></td></tr>
<tr class="separator:a41ae16442e3e5b891a58d2e5932a2cd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d0455dd5c30adda100e95f0423c786e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d46/kohonen__som__trace_8c.html#a6d0455dd5c30adda100e95f0423c786e">test3</a> ()</td></tr>
<tr class="memdesc:a6d0455dd5c30adda100e95f0423c786e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test that creates a random set of points distributed in six clusters in 3D space. <br /></td></tr>
<tr class="memdesc:a6d0455dd5c30adda100e95f0423c786e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test that creates a random set of points distributed in six clusters in 3D space. <a href="../../d0/d46/kohonen__som__trace_8c.html#a6d0455dd5c30adda100e95f0423c786e">More...</a><br /></td></tr>
<tr class="separator:a6d0455dd5c30adda100e95f0423c786e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2256c10b16edba377b64a44b6c656908"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d46/kohonen__som__trace_8c.html#a2256c10b16edba377b64a44b6c656908">get_clock_diff</a> (clock_t start_t, clock_t end_t)</td></tr>
<tr class="memdesc:a2256c10b16edba377b64a44b6c656908"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert clock cycle difference to time in seconds. <br /></td></tr>
<tr class="memdesc:a2256c10b16edba377b64a44b6c656908"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert clock cycle difference to time in seconds. <a href="../../d0/d46/kohonen__som__trace_8c.html#a2256c10b16edba377b64a44b6c656908">More...</a><br /></td></tr>
<tr class="separator:a2256c10b16edba377b64a44b6c656908"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d46/kohonen__som__trace_8c.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
<tr class="memdesc:a3c04138a5bfe5d72780bb7e82a18e627"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <br /></td></tr>
<tr class="memdesc:a3c04138a5bfe5d72780bb7e82a18e627"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <a href="../../d0/d46/kohonen__som__trace_8c.html#a3c04138a5bfe5d72780bb7e82a18e627">More...</a><br /></td></tr>
<tr class="separator:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a 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 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>
<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 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 see"><dt>See also</dt><dd><a class="el" href="../../d2/df6/kohonen__som__topology_8c.html" title="Kohonen self organizing map (topological map)">kohonen_som_topology.c</a> </dd></dl>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="a2256c10b16edba377b64a44b6c656908" name="a2256c10b16edba377b64a44b6c656908"></a>
@ -302,12 +302,12 @@ Here is the call graph for this function:</div>
</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. </p>
<p>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>
<p >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" target="_blank">gnuplot</a> using the following snippet </p><div class="fragment"><div class="line">set datafile separator &#39;,&#39;</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 &#39;,&#39;</div>
<div class="line">plot &quot;test1.csv&quot; title &quot;original&quot;, \</div>
<div class="line"> &quot;w11.csv&quot; title &quot;w1&quot;, \</div>
<div class="line"> &quot;w12.csv&quot; title &quot;w2&quot;</div>
@ -387,12 +387,12 @@ Here is the call graph for this function:</div>
</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" target="_blank">Lamniscate of Gerono</a> and trains an SOM that finds that circular pattern. </p>
<p>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>
<p >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" target="_blank">gnuplot</a> using the following snippet </p><div class="fragment"><div class="line">set datafile separator &#39;,&#39;</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 &#39;,&#39;</div>
<div class="line">plot &quot;test2.csv&quot; title &quot;original&quot;, \</div>
<div class="line"> &quot;w21.csv&quot; title &quot;w1&quot;, \</div>
<div class="line"> &quot;w22.csv&quot; title &quot;w2&quot;</div>
@ -464,12 +464,12 @@ Here is the call graph for this function:</div>
</div><div class="memdoc">
<p>Test that creates a random set of points distributed in six clusters in 3D space. </p>
<p>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>
<p >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" target="_blank">gnuplot</a> using the following snippet </p><div class="fragment"><div class="line">set datafile separator &#39;,&#39;</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 &#39;,&#39;</div>
<div class="line">plot &quot;test3.csv&quot; title &quot;original&quot;, \</div>
<div class="line"> &quot;w31.csv&quot; title &quot;w1&quot;, \</div>
<div class="line"> &quot;w32.csv&quot; title &quot;w2&quot;</div>
@ -633,7 +633,7 @@ Here is the call graph for this function:</div>
</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. </p>
<p>The generating function is </p><p class="formulaDsp">
<p >The generating function is </p><p class="formulaDsp">
\begin{eqnarray*}
r &amp;\in&amp; [1-\delta r, 1+\delta r)\\
\theta &amp;\in&amp; [0, 2\pi)\\
@ -749,7 +749,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="../../d0/d46/kohonen__som__trace_8c.html">kohonen_som_trace.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: test2 Pages: 1 -->
<svg width="497pt" height="140pt"

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: test_circle Pages: 1 -->
<svg width="160pt" height="27pt"

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: test1 Pages: 1 -->
<svg width="497pt" height="140pt"

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<!--zoomable 278 -->

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 19 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<svg width="610pt" height="278pt"

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: test_3d_classes Pages: 1 -->
<svg width="186pt" height="27pt"

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: test3 Pages: 1 -->
<svg width="497pt" height="140pt"

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: test_lamniscate Pages: 1 -->
<svg width="184pt" height="27pt"

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: project_euler/problem_5/sol1.c Pages: 1 -->
<svg width="120pt" height="93pt"

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: conversions/celsius_to_fahrenheit.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -117,17 +117,17 @@ Include dependency graph for celsius_to_fahrenheit.c:</div>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:aff11c1dfc058bd545a6af4312dfb45c5"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d51/celsius__to__fahrenheit_8c.html#aff11c1dfc058bd545a6af4312dfb45c5">celcius_to_fahrenheit</a> (double celsius)</td></tr>
<tr class="memdesc:aff11c1dfc058bd545a6af4312dfb45c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">for assert <br /></td></tr>
<tr class="memdesc:aff11c1dfc058bd545a6af4312dfb45c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">for assert <a href="../../d0/d51/celsius__to__fahrenheit_8c.html#aff11c1dfc058bd545a6af4312dfb45c5">More...</a><br /></td></tr>
<tr class="separator:aff11c1dfc058bd545a6af4312dfb45c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8dca7b867074164d5f45b0f3851269d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d51/celsius__to__fahrenheit_8c.html#aa8dca7b867074164d5f45b0f3851269d">test</a> ()</td></tr>
<tr class="memdesc:aa8dca7b867074164d5f45b0f3851269d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self-test implementations. <br /></td></tr>
<tr class="memdesc:aa8dca7b867074164d5f45b0f3851269d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self-test implementations. <a href="../../d0/d51/celsius__to__fahrenheit_8c.html#aa8dca7b867074164d5f45b0f3851269d">More...</a><br /></td></tr>
<tr class="separator:aa8dca7b867074164d5f45b0f3851269d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d51/celsius__to__fahrenheit_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <br /></td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <a href="../../d0/d51/celsius__to__fahrenheit_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">More...</a><br /></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Conversion of temperature in degrees from <a href="https://en.wikipedia.org/wiki/Celsius" target="_blank">Celsius</a> to <a href="https://en.wikipedia.org/wiki/Fahrenheit" target="_blank">Fahrenheit</a>. </p>
<div class="textblock"><p >Conversion of temperature in degrees from <a href="https://en.wikipedia.org/wiki/Celsius" target="_blank">Celsius</a> to <a href="https://en.wikipedia.org/wiki/Fahrenheit" target="_blank">Fahrenheit</a>. </p>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/Focusucof" target="_blank">Focusucof</a> </dd></dl>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="aff11c1dfc058bd545a6af4312dfb45c5" name="aff11c1dfc058bd545a6af4312dfb45c5"></a>
@ -147,8 +147,8 @@ Functions</h2></td></tr>
</div><div class="memdoc">
<p>for assert </p>
<p>for IO operations</p>
<p>Convert celsius to Fahrenheit </p><dl class="params"><dt>Parameters</dt><dd>
<p >for IO operations</p>
<p >Convert celsius to Fahrenheit </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">celsius</td><td>Temperature in degrees celsius double </td></tr>
</table>
@ -276,7 +276,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_9babc524d57e25f3d9f4179cabc3599e.html">conversions</a></li><li class="navelem"><a class="el" href="../../d0/d51/celsius__to__fahrenheit_8c.html">celsius_to_fahrenheit.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: test Pages: 1 -->
<svg width="186pt" height="27pt"

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<svg width="260pt" height="27pt"

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: hash/hash_xor8.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -118,17 +118,17 @@ Include dependency graph for hash_xor8.c:</div>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gae4836b42b998b336298f3b19dcc9cdeb"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/d3b/group__hash.html#gae4836b42b998b336298f3b19dcc9cdeb">xor8</a> (const char *s)</td></tr>
<tr class="memdesc:gae4836b42b998b336298f3b19dcc9cdeb"><td class="mdescLeft">&#160;</td><td class="mdescRight">8-bit XOR algorithm implementation <br /></td></tr>
<tr class="memdesc:gae4836b42b998b336298f3b19dcc9cdeb"><td class="mdescLeft">&#160;</td><td class="mdescRight">8-bit XOR algorithm implementation <a href="../../d7/d3b/group__hash.html#gae4836b42b998b336298f3b19dcc9cdeb">More...</a><br /></td></tr>
<tr class="separator:gae4836b42b998b336298f3b19dcc9cdeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga39d4c16427acbf8bbe744f6d8ed61dc0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/d3b/group__hash.html#ga39d4c16427acbf8bbe744f6d8ed61dc0">test_xor8</a> ()</td></tr>
<tr class="memdesc:ga39d4c16427acbf8bbe744f6d8ed61dc0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test function for <a class="el" href="../../d7/d3b/group__hash.html#gae4836b42b998b336298f3b19dcc9cdeb" title="8-bit XOR algorithm implementation">xor8</a>. <br /></td></tr>
<tr class="memdesc:ga39d4c16427acbf8bbe744f6d8ed61dc0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test function for <a class="el" href="../../d7/d3b/group__hash.html#gae4836b42b998b336298f3b19dcc9cdeb" title="8-bit XOR algorithm implementation">xor8</a>. <a href="../../d7/d3b/group__hash.html#ga39d4c16427acbf8bbe744f6d8ed61dc0">More...</a><br /></td></tr>
<tr class="separator:ga39d4c16427acbf8bbe744f6d8ed61dc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d57/hash__xor8_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <br /></td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <a href="../../d0/d57/hash__xor8_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">More...</a><br /></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>8-bit <a href="https://en.wikipedia.org/wiki/XOR_cipher" target="_blank">XOR hash</a> algorithm for ASCII characters </p>
<div class="textblock"><p >8-bit <a href="https://en.wikipedia.org/wiki/XOR_cipher" target="_blank">XOR hash</a> algorithm for ASCII characters </p>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/christianbender" target="_blank">Christian Bender</a> </dd></dl>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
@ -168,7 +168,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_72aaf47615111200018c039a56ef48be.html">hash</a></li><li class="navelem"><a class="el" href="../../d0/d57/hash__xor8_8c.html">hash_xor8.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<svg width="210pt" height="27pt"

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: project_euler/problem_9/sol2.c Pages: 1 -->
<svg width="120pt" height="93pt"

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: elem Struct Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -127,7 +127,7 @@ struct <a class="el" href="../../d0/d6b/structelem.html">elem</a> *&#160;</td><t
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d0/d6b/structelem.html">elem</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: project_euler/problem_4/sol.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -116,14 +116,14 @@ Include dependency graph for sol.c:</div>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:adf9bea8d35848959bde5b3f277edf0c4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d6c/problem__4_2sol_8c.html#adf9bea8d35848959bde5b3f277edf0c4">is_palindromic</a> (unsigned int n)</td></tr>
<tr class="memdesc:adf9bea8d35848959bde5b3f277edf0c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if number is palindromic. <br /></td></tr>
<tr class="memdesc:adf9bea8d35848959bde5b3f277edf0c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if number is palindromic. <a href="../../d0/d6c/problem__4_2sol_8c.html#adf9bea8d35848959bde5b3f277edf0c4">More...</a><br /></td></tr>
<tr class="separator:adf9bea8d35848959bde5b3f277edf0c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a840291bc02cba5474a4cb46a9b9566fe"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d6c/problem__4_2sol_8c.html#a840291bc02cba5474a4cb46a9b9566fe">main</a> (void)</td></tr>
<tr class="memdesc:a840291bc02cba5474a4cb46a9b9566fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <br /></td></tr>
<tr class="memdesc:a840291bc02cba5474a4cb46a9b9566fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <a href="../../d0/d6c/problem__4_2sol_8c.html#a840291bc02cba5474a4cb46a9b9566fe">More...</a><br /></td></tr>
<tr class="separator:a840291bc02cba5474a4cb46a9b9566fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a href="https://projecteuler.net/problem=4" target="_blank">Problem 4</a> solution </p>
<div class="textblock"><p ><a href="https://projecteuler.net/problem=4" target="_blank">Problem 4</a> solution </p>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="adf9bea8d35848959bde5b3f277edf0c4" name="adf9bea8d35848959bde5b3f277edf0c4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adf9bea8d35848959bde5b3f277edf0c4">&#9670;&#160;</a></span>is_palindromic()</h2>
@ -213,7 +213,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_b3d331eabd4234f247030c297aaf021c.html">project_euler</a></li><li class="navelem"><a class="el" href="../../dir_1833eb69ceee7a265ffba4c38c8243d2.html">problem_4</a></li><li class="navelem"><a class="el" href="../../d0/d6c/problem__4_2sol_8c.html">sol.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<svg width="161pt" height="27pt"

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: project_euler/problem_10/sol1.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -118,17 +118,17 @@ Include dependency graph for sol1.c:</div>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:acc871ab6bfead702e983a7f9c412915f"><td class="memItemLeft" align="right" valign="top">char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d6d/problem__10_2sol1_8c.html#acc871ab6bfead702e983a7f9c412915f">is_prime</a> (unsigned long n)</td></tr>
<tr class="memdesc:acc871ab6bfead702e983a7f9c412915f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function to check if a number is prime. <br /></td></tr>
<tr class="memdesc:acc871ab6bfead702e983a7f9c412915f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function to check if a number is prime. <a href="../../d0/d6d/problem__10_2sol1_8c.html#acc871ab6bfead702e983a7f9c412915f">More...</a><br /></td></tr>
<tr class="separator:acc871ab6bfead702e983a7f9c412915f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3d987cb2ad0ddb0c3caa4c2506a20e5"><td class="memItemLeft" align="right" valign="top">unsigned long long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d6d/problem__10_2sol1_8c.html#ae3d987cb2ad0ddb0c3caa4c2506a20e5">sum_of_primes</a> (unsigned long N)</td></tr>
<tr class="memdesc:ae3d987cb2ad0ddb0c3caa4c2506a20e5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes sum of prime numbers less than N. <br /></td></tr>
<tr class="memdesc:ae3d987cb2ad0ddb0c3caa4c2506a20e5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes sum of prime numbers less than N. <a href="../../d0/d6d/problem__10_2sol1_8c.html#ae3d987cb2ad0ddb0c3caa4c2506a20e5">More...</a><br /></td></tr>
<tr class="separator:ae3d987cb2ad0ddb0c3caa4c2506a20e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ddf1224851353fc92bfbff6f499fa97"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d6d/problem__10_2sol1_8c.html#a0ddf1224851353fc92bfbff6f499fa97">main</a> (int argc, char *argv[])</td></tr>
<tr class="memdesc:a0ddf1224851353fc92bfbff6f499fa97"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <br /></td></tr>
<tr class="memdesc:a0ddf1224851353fc92bfbff6f499fa97"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <a href="../../d0/d6d/problem__10_2sol1_8c.html#a0ddf1224851353fc92bfbff6f499fa97">More...</a><br /></td></tr>
<tr class="separator:a0ddf1224851353fc92bfbff6f499fa97"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a href="https://projecteuler.net/problem=10" target="_blank">Problem 10</a> solution </p>
<div class="textblock"><p ><a href="https://projecteuler.net/problem=10" target="_blank">Problem 10</a> solution </p>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/kvedala" target="_blank">Krishna Vedala</a> </dd></dl>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="acc871ab6bfead702e983a7f9c412915f" name="acc871ab6bfead702e983a7f9c412915f"></a>
@ -247,7 +247,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_b3d331eabd4234f247030c297aaf021c.html">project_euler</a></li><li class="navelem"><a class="el" href="../../dir_16b947d8e9a05fe119d0675493324331.html">problem_10</a></li><li class="navelem"><a class="el" href="../../d0/d6d/problem__10_2sol1_8c.html">sol1.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<svg width="254pt" height="27pt"

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: sum_of_primes Pages: 1 -->
<svg width="180pt" height="27pt"

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: project_euler/problem_2/so1.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -116,13 +116,13 @@ Include dependency graph for so1.c:</div>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d7f/so1_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <br /></td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <a href="../../d0/d7f/so1_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">More...</a><br /></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a href="https://projecteuler.net/problem=2" target="_blank">Problem 2</a> solution </p>
<p>Problem:</p>
<p>Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be: <code>1,2,3,5,8,13,21,34,55,89,..</code> By considering the terms in the Fibonacci sequence whose values do not exceed n, find the sum of the even-valued terms. e.g. for n=10, we have {2,8}, sum is 10. </p>
<div class="textblock"><p ><a href="https://projecteuler.net/problem=2" target="_blank">Problem 2</a> solution </p>
<p >Problem:</p>
<p >Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be: <code>1,2,3,5,8,13,21,34,55,89,..</code> By considering the terms in the Fibonacci sequence whose values do not exceed n, find the sum of the even-valued terms. e.g. for n=10, we have {2,8}, sum is 10. </p>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">&#9670;&#160;</a></span>main()</h2>
@ -170,7 +170,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_b3d331eabd4234f247030c297aaf021c.html">project_euler</a></li><li class="navelem"><a class="el" href="../../dir_eeeea13e3a5e5edad3499183767ce312.html">problem_2</a></li><li class="navelem"><a class="el" href="../../d0/d7f/so1_8c.html">so1.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: conversions/octal_to_hexadecimal.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -120,21 +120,21 @@ Include dependency graph for octal_to_hexadecimal.c:</div>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a86a4edb605c2a03d9175c59de679347d"><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d8a/octal__to__hexadecimal_8c.html#a86a4edb605c2a03d9175c59de679347d">octalToDecimal</a> (long octalValue)</td></tr>
<tr class="memdesc:a86a4edb605c2a03d9175c59de679347d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert octal number to decimal number. <br /></td></tr>
<tr class="memdesc:a86a4edb605c2a03d9175c59de679347d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert octal number to decimal number. <a href="../../d0/d8a/octal__to__hexadecimal_8c.html#a86a4edb605c2a03d9175c59de679347d">More...</a><br /></td></tr>
<tr class="separator:a86a4edb605c2a03d9175c59de679347d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a823ef5170955cfef40e07d9a4d2e87e2"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d8a/octal__to__hexadecimal_8c.html#a823ef5170955cfef40e07d9a4d2e87e2">octalToHexadecimal</a> (long octalValue)</td></tr>
<tr class="memdesc:a823ef5170955cfef40e07d9a4d2e87e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert octal number to hexadecimal number dynamically allocated memory needs to be freed by the calling the function free. <br /></td></tr>
<tr class="memdesc:a823ef5170955cfef40e07d9a4d2e87e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert octal number to hexadecimal number dynamically allocated memory needs to be freed by the calling the function free. <a href="../../d0/d8a/octal__to__hexadecimal_8c.html#a823ef5170955cfef40e07d9a4d2e87e2">More...</a><br /></td></tr>
<tr class="separator:a823ef5170955cfef40e07d9a4d2e87e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8dca7b867074164d5f45b0f3851269d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d8a/octal__to__hexadecimal_8c.html#aa8dca7b867074164d5f45b0f3851269d">test</a> ()</td></tr>
<tr class="memdesc:aa8dca7b867074164d5f45b0f3851269d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test function. <br /></td></tr>
<tr class="memdesc:aa8dca7b867074164d5f45b0f3851269d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test function. <a href="../../d0/d8a/octal__to__hexadecimal_8c.html#aa8dca7b867074164d5f45b0f3851269d">More...</a><br /></td></tr>
<tr class="separator:aa8dca7b867074164d5f45b0f3851269d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d8a/octal__to__hexadecimal_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <br /></td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <a href="../../d0/d8a/octal__to__hexadecimal_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">More...</a><br /></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Octal to hexadecimal conversion by scanning user input. </p>
<p>The octalToHexadecimal function take the octal number as long return a string hexadecimal value after conversion </p><dl class="section author"><dt>Author</dt><dd><a href="https://github.com/rachitbhalla" target="_blank">Rachit Bhalla</a> </dd></dl>
<div class="textblock"><p >Octal to hexadecimal conversion by scanning user input. </p>
<p >The octalToHexadecimal function take the octal number as long return a string hexadecimal value after conversion </p><dl class="section author"><dt>Author</dt><dd><a href="https://github.com/rachitbhalla" target="_blank">Rachit Bhalla</a> </dd></dl>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">&#9670;&#160;</a></span>main()</h2>
@ -311,7 +311,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_9babc524d57e25f3d9f4179cabc3599e.html">conversions</a></li><li class="navelem"><a class="el" href="../../d0/d8a/octal__to__hexadecimal_8c.html">octal_to_hexadecimal.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: octalToHexadecimal Pages: 1 -->
<svg width="233pt" height="27pt"

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: test Pages: 1 -->
<svg width="302pt" height="27pt"

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<svg width="376pt" height="46pt"

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: max_heap Struct Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -119,8 +119,8 @@ int&#160;</td><td class="memItemRight" valign="bottom"><b>count</b></td></tr>
<tr class="separator:a917b63797e1857ce994dd5e6cfcebf1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>for INT_MIN </p>
<p>for IO operations for dynamic memory allocation </p>
<div class="textblock"><p >for INT_MIN </p>
<p >for IO operations for dynamic memory allocation </p>
</div><hr/>The documentation for this struct was generated from the following file:<ul>
<li>data_structures/heap/max_heap.c</li>
</ul>
@ -130,7 +130,7 @@ int&#160;</td><td class="memItemRight" valign="bottom"><b>count</b></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d0/d8a/structmax__heap.html">max_heap</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: searching/binary_search.c Pages: 1 -->
<svg width="139pt" height="82pt"

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: conversions/c_atoi_str_to_integer.c Pages: 1 -->
<svg width="258pt" height="93pt"

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: math/collatz.c Pages: 1 -->
<svg width="120pt" height="82pt"

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: geometry/geometry_datatypes.h File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -137,7 +137,7 @@ Data Structures</h2></td></tr>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ga002b2f4894492820fe708b1b7e7c5e70"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../de/d5a/group__quaternions.html#ga002b2f4894492820fe708b1b7e7c5e70">EPSILON</a>&#160;&#160;&#160;1e-9</td></tr>
<tr class="memdesc:ga002b2f4894492820fe708b1b7e7c5e70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Minimum recognizable value. <br /></td></tr>
<tr class="memdesc:ga002b2f4894492820fe708b1b7e7c5e70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Minimum recognizable value. <a href="../../de/d5a/group__quaternions.html#ga002b2f4894492820fe708b1b7e7c5e70">More...</a><br /></td></tr>
<tr class="separator:ga002b2f4894492820fe708b1b7e7c5e70"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
@ -164,7 +164,7 @@ typedef struct <a class="el" href="../../d7/dfd/structdual__quat__.html">dual_qu
<tr class="separator:ga27005601c47e5bb7aafe77659e76c88f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Generic header that provides data types for 3D vectors and quaternions. </p>
<div class="textblock"><p >Generic header that provides data types for 3D vectors and quaternions. </p>
<dl class="section author"><dt>Author</dt><dd>Krishna Vedala </dd></dl>
</div></div><!-- contents -->
</div><!-- doc-content -->
@ -172,7 +172,7 @@ typedef struct <a class="el" href="../../d7/dfd/structdual__quat__.html">dual_qu
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_e3380d2178455503f266746fb14246a5.html">geometry</a></li><li class="navelem"><a class="el" href="../../d0/dc7/geometry__datatypes_8h.html">geometry_datatypes.h</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: geometry/geometry_datatypes.h Source File</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -248,7 +248,7 @@ $(document).ready(function(){initNavTree('d0/dc7/geometry__datatypes_8h_source.h
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_e3380d2178455503f266746fb14246a5.html">geometry</a></li><li class="navelem"><a class="el" href="../../d0/dc7/geometry__datatypes_8h.html">geometry_datatypes.h</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: Kohonen SOM trace/chain algorithm</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -124,19 +124,19 @@ Macros</h2></td></tr>
<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&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/group__kohonen__1d.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a> (double a, double b)</td></tr>
<tr class="memdesc:gaf5ce14f026d6d231bef29161bac2b485"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to generate a random number in a given interval. <br /></td></tr>
<tr class="memdesc:gaf5ce14f026d6d231bef29161bac2b485"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to generate a random number in a given interval. <a href="../../d0/dcb/group__kohonen__1d.html#gaf5ce14f026d6d231bef29161bac2b485">More...</a><br /></td></tr>
<tr class="separator:gaf5ce14f026d6d231bef29161bac2b485"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7b84b14e60f47812b581d1f93057c85a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/group__kohonen__1d.html#ga7b84b14e60f47812b581d1f93057c85a">save_nd_data</a> (const char *fname, double **X, int num_points, int num_features)</td></tr>
<tr class="memdesc:ga7b84b14e60f47812b581d1f93057c85a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Save a given n-dimensional data martix to file. <br /></td></tr>
<tr class="memdesc:ga7b84b14e60f47812b581d1f93057c85a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Save a given n-dimensional data martix to file. <a href="../../d0/dcb/group__kohonen__1d.html#ga7b84b14e60f47812b581d1f93057c85a">More...</a><br /></td></tr>
<tr class="separator:ga7b84b14e60f47812b581d1f93057c85a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4a57a413a3cef286a7da6d4666575586"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/group__kohonen__1d.html#ga4a57a413a3cef286a7da6d4666575586">kohonen_get_min_1d</a> (double const *X, int N, double *val, int *idx)</td></tr>
<tr class="memdesc:ga4a57a413a3cef286a7da6d4666575586"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get minimum value and index of the value in a vector. <br /></td></tr>
<tr class="memdesc:ga4a57a413a3cef286a7da6d4666575586"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get minimum value and index of the value in a vector. <a href="../../d0/dcb/group__kohonen__1d.html#ga4a57a413a3cef286a7da6d4666575586">More...</a><br /></td></tr>
<tr class="separator:ga4a57a413a3cef286a7da6d4666575586"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae334493a0917a24736fe5ba82aa6f81f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/group__kohonen__1d.html#gae334493a0917a24736fe5ba82aa6f81f">kohonen_update_weights</a> (double const *x, double *const *W, double *D, int num_out, int num_features, double alpha, int R)</td></tr>
<tr class="memdesc:gae334493a0917a24736fe5ba82aa6f81f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update weights of the SOM using Kohonen algorithm. <br /></td></tr>
<tr class="memdesc:gae334493a0917a24736fe5ba82aa6f81f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update weights of the SOM using Kohonen algorithm. <a href="../../d0/dcb/group__kohonen__1d.html#gae334493a0917a24736fe5ba82aa6f81f">More...</a><br /></td></tr>
<tr class="separator:gae334493a0917a24736fe5ba82aa6f81f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaeaeffbff2be4d5d15b0d4f10f846abde"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/group__kohonen__1d.html#gaeaeffbff2be4d5d15b0d4f10f846abde">kohonen_som_tracer</a> (double **X, double *const *W, int num_samples, int num_features, int num_out, double alpha_min)</td></tr>
<tr class="memdesc:gaeaeffbff2be4d5d15b0d4f10f846abde"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply incremental algorithm with updating neighborhood and learning rates on all samples in the given datset. <br /></td></tr>
<tr class="memdesc:gaeaeffbff2be4d5d15b0d4f10f846abde"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply incremental algorithm with updating neighborhood and learning rates on all samples in the given datset. <a href="../../d0/dcb/group__kohonen__1d.html#gaeaeffbff2be4d5d15b0d4f10f846abde">More...</a><br /></td></tr>
<tr class="separator:gaeaeffbff2be4d5d15b0d4f10f846abde"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
@ -168,7 +168,7 @@ Functions</h2></td></tr>
</div><div class="memdoc">
<p>Helper function to generate a random number in a given interval. </p>
<p><br />
<p ><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>
@ -554,7 +554,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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: Kohonen SOM trace/chain algorithm Pages: 1 -->
<svg width="313pt" height="38pt"

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: kohonen_update_weights Pages: 1 -->
<svg width="280pt" height="27pt"

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: kohonen_som_tracer Pages: 1 -->
<svg width="423pt" height="27pt"

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: misc/poly_add.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -124,32 +124,32 @@ Data Structures</h2></td></tr>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a5a103fff33166d6e4d975b8b63c6e895"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/poly__add_8c.html#a5a103fff33166d6e4d975b8b63c6e895">free_poly</a> (struct <a class="el" href="../../df/d86/structterm.html">term</a> *poly)</td></tr>
<tr class="memdesc:a5a103fff33166d6e4d975b8b63c6e895"><td class="mdescLeft">&#160;</td><td class="mdescRight">Frees memory space. <br /></td></tr>
<tr class="memdesc:a5a103fff33166d6e4d975b8b63c6e895"><td class="mdescLeft">&#160;</td><td class="mdescRight">Frees memory space. <a href="../../d0/dcb/poly__add_8c.html#a5a103fff33166d6e4d975b8b63c6e895">More...</a><br /></td></tr>
<tr class="separator:a5a103fff33166d6e4d975b8b63c6e895"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29eace09ec1373a92003075f1c2f6d9d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/poly__add_8c.html#a29eace09ec1373a92003075f1c2f6d9d">create_polynomial</a> (struct <a class="el" href="../../df/d86/structterm.html">term</a> **poly, int coef, int pow)</td></tr>
<tr class="memdesc:a29eace09ec1373a92003075f1c2f6d9d"><td class="mdescLeft">&#160;</td><td class="mdescRight">The function will create a polynomial. <br /></td></tr>
<tr class="memdesc:a29eace09ec1373a92003075f1c2f6d9d"><td class="mdescLeft">&#160;</td><td class="mdescRight">The function will create a polynomial. <a href="../../d0/dcb/poly__add_8c.html#a29eace09ec1373a92003075f1c2f6d9d">More...</a><br /></td></tr>
<tr class="separator:a29eace09ec1373a92003075f1c2f6d9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ff38afe4720527c9513139cbab460af"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/poly__add_8c.html#a6ff38afe4720527c9513139cbab460af">poly_add</a> (struct <a class="el" href="../../df/d86/structterm.html">term</a> **pol, struct <a class="el" href="../../df/d86/structterm.html">term</a> *poly1, struct <a class="el" href="../../df/d86/structterm.html">term</a> *poly2)</td></tr>
<tr class="memdesc:a6ff38afe4720527c9513139cbab460af"><td class="mdescLeft">&#160;</td><td class="mdescRight">The function will add 2 polynomials. <br /></td></tr>
<tr class="memdesc:a6ff38afe4720527c9513139cbab460af"><td class="mdescLeft">&#160;</td><td class="mdescRight">The function will add 2 polynomials. <a href="../../d0/dcb/poly__add_8c.html#a6ff38afe4720527c9513139cbab460af">More...</a><br /></td></tr>
<tr class="separator:a6ff38afe4720527c9513139cbab460af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab9b9bedcb99f279d491d1b856791a36d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/poly__add_8c.html#ab9b9bedcb99f279d491d1b856791a36d">display_polynomial</a> (struct <a class="el" href="../../df/d86/structterm.html">term</a> *poly)</td></tr>
<tr class="memdesc:ab9b9bedcb99f279d491d1b856791a36d"><td class="mdescLeft">&#160;</td><td class="mdescRight">The function will display the polynomial. <br /></td></tr>
<tr class="memdesc:ab9b9bedcb99f279d491d1b856791a36d"><td class="mdescLeft">&#160;</td><td class="mdescRight">The function will display the polynomial. <a href="../../d0/dcb/poly__add_8c.html#ab9b9bedcb99f279d491d1b856791a36d">More...</a><br /></td></tr>
<tr class="separator:ab9b9bedcb99f279d491d1b856791a36d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab215107dbb50c7efa811a687ce9b95af"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/poly__add_8c.html#ab215107dbb50c7efa811a687ce9b95af">test1</a> (struct <a class="el" href="../../df/d86/structterm.html">term</a> *poly1, struct <a class="el" href="../../df/d86/structterm.html">term</a> *poly2, struct <a class="el" href="../../df/d86/structterm.html">term</a> *poly3)</td></tr>
<tr class="memdesc:ab215107dbb50c7efa811a687ce9b95af"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test function 1. <br /></td></tr>
<tr class="memdesc:ab215107dbb50c7efa811a687ce9b95af"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test function 1. <a href="../../d0/dcb/poly__add_8c.html#ab215107dbb50c7efa811a687ce9b95af">More...</a><br /></td></tr>
<tr class="separator:ab215107dbb50c7efa811a687ce9b95af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0c5173884bd798a6ca6f437b9b932409"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/poly__add_8c.html#a0c5173884bd798a6ca6f437b9b932409">test2</a> (struct <a class="el" href="../../df/d86/structterm.html">term</a> *poly1, struct <a class="el" href="../../df/d86/structterm.html">term</a> *poly2, struct <a class="el" href="../../df/d86/structterm.html">term</a> *poly3)</td></tr>
<tr class="memdesc:a0c5173884bd798a6ca6f437b9b932409"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test function 2. <br /></td></tr>
<tr class="memdesc:a0c5173884bd798a6ca6f437b9b932409"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test function 2. <a href="../../d0/dcb/poly__add_8c.html#a0c5173884bd798a6ca6f437b9b932409">More...</a><br /></td></tr>
<tr class="separator:a0c5173884bd798a6ca6f437b9b932409"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab138609c765e2fd8b89e9c107cd40d57"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/poly__add_8c.html#ab138609c765e2fd8b89e9c107cd40d57">test3</a> (struct <a class="el" href="../../df/d86/structterm.html">term</a> *poly1, struct <a class="el" href="../../df/d86/structterm.html">term</a> *poly2, struct <a class="el" href="../../df/d86/structterm.html">term</a> *poly3)</td></tr>
<tr class="memdesc:ab138609c765e2fd8b89e9c107cd40d57"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test function 3. <br /></td></tr>
<tr class="memdesc:ab138609c765e2fd8b89e9c107cd40d57"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test function 3. <a href="../../d0/dcb/poly__add_8c.html#ab138609c765e2fd8b89e9c107cd40d57">More...</a><br /></td></tr>
<tr class="separator:ab138609c765e2fd8b89e9c107cd40d57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a840291bc02cba5474a4cb46a9b9566fe"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dcb/poly__add_8c.html#a840291bc02cba5474a4cb46a9b9566fe">main</a> (void)</td></tr>
<tr class="memdesc:a840291bc02cba5474a4cb46a9b9566fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <br /></td></tr>
<tr class="memdesc:a840291bc02cba5474a4cb46a9b9566fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <a href="../../d0/dcb/poly__add_8c.html#a840291bc02cba5474a4cb46a9b9566fe">More...</a><br /></td></tr>
<tr class="separator:a840291bc02cba5474a4cb46a9b9566fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Implementation of [Addition of two polynomials] (<a href="https://en.wikipedia.org/wiki/Polynomial#Addition">https://en.wikipedia.org/wiki/Polynomial#Addition</a>) </p>
<div class="textblock"><p >Implementation of [Addition of two polynomials] (<a href="https://en.wikipedia.org/wiki/Polynomial#Addition">https://en.wikipedia.org/wiki/Polynomial#Addition</a>) </p>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/Ankita19ms0010" target="_blank">Ankita Roy Chowdhury</a></dd></dl>
<p>This code takes two polynomials as input and prints their sum using linked list. The polynomials must be in increasing or decreasing order of degree. Degree must be positive. </p>
</div><h2 class="groupheader">Function Documentation</h2>
@ -519,7 +519,7 @@ Here is the call graph for this function:</div>
</div><div class="memdoc">
<p>Test function 1. </p>
<p>Polynomial 1 is 5 x^2 + 3 x^1 + 2 x^0 Polynomial 2 is 7 x^3 + 9 x^1 + 10 x^0 Resultant polynomial is 7 x^3 + 5 x^2 + 12 x^1 + 12 x^0 </p><dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
<p >Polynomial 1 is 5 x^2 + 3 x^1 + 2 x^0 Polynomial 2 is 7 x^3 + 9 x^1 + 10 x^0 Resultant polynomial is 7 x^3 + 5 x^2 + 12 x^1 + 12 x^0 </p><dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
<div class="fragment"><div class="line"><span class="lineno"> 205</span>{</div>
<div class="line"><span class="lineno"> 206</span> printf(<span class="stringliteral">&quot;\n----Test 1----\n&quot;</span>);</div>
<div class="line"><span class="lineno"> 207</span> printf(<span class="stringliteral">&quot;\nFirst Polynomial:\n&quot;</span>); <span class="comment">// Defining the 1st polynomial</span></div>
@ -598,7 +598,7 @@ Here is the call graph for this function:</div>
</div><div class="memdoc">
<p>Test function 2. </p>
<p>Polynomial 1 is 3 x^5 + 1 x^4 + 2 x^3 + -2 x^1 + 5 x^0 Polynomial 2 is 2 x^5 + 3 x^3 + 7 x^1 + 2 x^0 Resultant polynomial is 5 x^5 + 1 x^4 + 5 x^3 + 5 x^1 + 7 x^0 </p><dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
<p >Polynomial 1 is 3 x^5 + 1 x^4 + 2 x^3 + -2 x^1 + 5 x^0 Polynomial 2 is 2 x^5 + 3 x^3 + 7 x^1 + 2 x^0 Resultant polynomial is 5 x^5 + 1 x^4 + 5 x^3 + 5 x^1 + 7 x^0 </p><dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
<div class="fragment"><div class="line"><span class="lineno"> 240</span>{</div>
<div class="line"><span class="lineno"> 241</span> printf(<span class="stringliteral">&quot;\n----Test 2----\n&quot;</span>);</div>
<div class="line"><span class="lineno"> 242</span> printf(<span class="stringliteral">&quot;\nFirst Polynomial:\n&quot;</span>); <span class="comment">// Defining the 1st polynomial</span></div>
@ -678,7 +678,7 @@ Here is the call graph for this function:</div>
</div><div class="memdoc">
<p>Test function 3. </p>
<p>Polynomial 1 is -12 x^0 + 8 x^1 + 4 x^3 Polynomial 2 is 5 x^0 + -13 x^1 + 3 x^3 Resultant polynomial is -7 x^0 + -5 x^1 + 7 x^3 </p><dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
<p >Polynomial 1 is -12 x^0 + 8 x^1 + 4 x^3 Polynomial 2 is 5 x^0 + -13 x^1 + 3 x^3 Resultant polynomial is -7 x^0 + -5 x^1 + 7 x^3 </p><dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
<div class="fragment"><div class="line"><span class="lineno"> 280</span>{</div>
<div class="line"><span class="lineno"> 281</span> printf(<span class="stringliteral">&quot;\n----Test 3----\n&quot;</span>);</div>
<div class="line"><span class="lineno"> 282</span> printf(<span class="stringliteral">&quot;\nFirst Polynomial:\n&quot;</span>); <span class="comment">// Defining the 1st polynomial</span></div>
@ -720,7 +720,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_a52f4d3d586a58b02f3a4ddf0a992157.html">misc</a></li><li class="navelem"><a class="el" href="../../d0/dcb/poly__add_8c.html">poly_add.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: test2 Pages: 1 -->
<svg width="181pt" height="138pt"

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<!--zoomable 406 -->

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<svg width="541pt" height="406pt"

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: test3 Pages: 1 -->
<svg width="181pt" height="138pt"

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: test1 Pages: 1 -->
<svg width="181pt" height="138pt"

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: conversions/hexadecimal_to_octal2.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -127,17 +127,17 @@ Macros</h2></td></tr>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ab83549c0d43c88544be47fa6c4885ae4"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dd9/hexadecimal__to__octal2_8c.html#ab83549c0d43c88544be47fa6c4885ae4">hex_to_oct</a> (const char *hex)</td></tr>
<tr class="memdesc:ab83549c0d43c88544be47fa6c4885ae4"><td class="mdescLeft">&#160;</td><td class="mdescRight">for printf() and fgets() <br /></td></tr>
<tr class="memdesc:ab83549c0d43c88544be47fa6c4885ae4"><td class="mdescLeft">&#160;</td><td class="mdescRight">for printf() and fgets() <a href="../../d0/dd9/hexadecimal__to__octal2_8c.html#ab83549c0d43c88544be47fa6c4885ae4">More...</a><br /></td></tr>
<tr class="separator:ab83549c0d43c88544be47fa6c4885ae4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/dd9/hexadecimal__to__octal2_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <br /></td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <a href="../../d0/dd9/hexadecimal__to__octal2_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">More...</a><br /></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Convert hexadecimal number to octal number (with decimal intermediary) </p>
<p>The input is valid from 0 to 0xFFFF_FFFF_FFFF_FFFF.</p>
<p>At first, this program converts a hex string to an unsigned long long decimal, and then to an octal string.</p>
<p>When there is an invalid character in input string, this program stops parsing and converts the string until that character.</p>
<div class="textblock"><p >Convert hexadecimal number to octal number (with decimal intermediary) </p>
<p >The input is valid from 0 to 0xFFFF_FFFF_FFFF_FFFF.</p>
<p >At first, this program converts a hex string to an unsigned long long decimal, and then to an octal string.</p>
<p >When there is an invalid character in input string, this program stops parsing and converts the string until that character.</p>
<dl class="section see"><dt>See also</dt><dd>hexadecimal_to_octal.c </dd></dl>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="ab83549c0d43c88544be47fa6c4885ae4" name="ab83549c0d43c88544be47fa6c4885ae4"></a>
@ -157,8 +157,8 @@ Functions</h2></td></tr>
</div><div class="memdoc">
<p>for printf() and fgets() </p>
<p>for memset()</p>
<p>Convert a hexadecimal number to octal number. </p><dl class="params"><dt>Parameters</dt><dd>
<p >for memset()</p>
<p >Convert a hexadecimal number to octal number. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">hex</td><td>Hexadecimal number to convert. </td></tr>
</table>
@ -291,7 +291,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_9babc524d57e25f3d9f4179cabc3599e.html">conversions</a></li><li class="navelem"><a class="el" href="../../d0/dd9/hexadecimal__to__octal2_8c.html">hexadecimal_to_octal2.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<svg width="147pt" height="27pt"

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: hash_set_t Struct Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -127,7 +127,7 @@ void **&#160;</td><td class="memItemRight" valign="bottom"><b>keys</b></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d0/df1/structhash__set__t.html">hash_set_t</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: data_structures/binary_trees/threaded_binary_trees.c Pages: 1 -->
<svg width="124pt" height="104pt"

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: leetcode/src/6.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -120,21 +120,21 @@ Include dependency graph for 6.c:</div>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:afdf3bfe2dc8aadac13c7e6d051d3bd5d"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/df3/6_8c.html#afdf3bfe2dc8aadac13c7e6d051d3bd5d">convert</a> (char *in, uint16_t numRows)</td></tr>
<tr class="memdesc:afdf3bfe2dc8aadac13c7e6d051d3bd5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">for assert for unsigned int with fixed size <br /></td></tr>
<tr class="memdesc:afdf3bfe2dc8aadac13c7e6d051d3bd5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">for assert for unsigned int with fixed size <a href="../../d0/df3/6_8c.html#afdf3bfe2dc8aadac13c7e6d051d3bd5d">More...</a><br /></td></tr>
<tr class="separator:afdf3bfe2dc8aadac13c7e6d051d3bd5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a109c3813445bcf97d154a671119deae9"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/df3/6_8c.html#a109c3813445bcf97d154a671119deae9">testZigZag</a> (char *s, int numRows, char *expected)</td></tr>
<tr class="memdesc:a109c3813445bcf97d154a671119deae9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self-test implementations. <br /></td></tr>
<tr class="memdesc:a109c3813445bcf97d154a671119deae9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self-test implementations. <a href="../../d0/df3/6_8c.html#a109c3813445bcf97d154a671119deae9">More...</a><br /></td></tr>
<tr class="separator:a109c3813445bcf97d154a671119deae9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8dca7b867074164d5f45b0f3851269d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/df3/6_8c.html#aa8dca7b867074164d5f45b0f3851269d">test</a> ()</td></tr>
<tr class="memdesc:aa8dca7b867074164d5f45b0f3851269d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self-test implementations. <br /></td></tr>
<tr class="memdesc:aa8dca7b867074164d5f45b0f3851269d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self-test implementations. <a href="../../d0/df3/6_8c.html#aa8dca7b867074164d5f45b0f3851269d">More...</a><br /></td></tr>
<tr class="separator:aa8dca7b867074164d5f45b0f3851269d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a840291bc02cba5474a4cb46a9b9566fe"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/df3/6_8c.html#a840291bc02cba5474a4cb46a9b9566fe">main</a> (void)</td></tr>
<tr class="memdesc:a840291bc02cba5474a4cb46a9b9566fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <br /></td></tr>
<tr class="memdesc:a840291bc02cba5474a4cb46a9b9566fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <a href="../../d0/df3/6_8c.html#a840291bc02cba5474a4cb46a9b9566fe">More...</a><br /></td></tr>
<tr class="separator:a840291bc02cba5474a4cb46a9b9566fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Implementation of the <a href="https://leetcode.com/problems/zigzag-conversion/" target="_blank">ZigZag Conversion</a> Leetcode problem. </p>
<p>A decent solution to the ZigZag conversion problem. Take advantage of the fact that the maximum gap between the chars is 2 times the depth(the number of rows). The actual gap between the two first chars of a rows depends on the depth of the row. The gaps between successives chars on the same row is the complement of the first gap to the maximum gap. </p><dl class="section author"><dt>Author</dt><dd><a href="https://github.com/straight-into-the-wall" target="_blank">straight_into_the_wall</a> </dd></dl>
<div class="textblock"><p >Implementation of the <a href="https://leetcode.com/problems/zigzag-conversion/" target="_blank">ZigZag Conversion</a> Leetcode problem. </p>
<p >A decent solution to the ZigZag conversion problem. Take advantage of the fact that the maximum gap between the chars is 2 times the depth(the number of rows). The actual gap between the two first chars of a rows depends on the depth of the row. The gaps between successives chars on the same row is the complement of the first gap to the maximum gap. </p><dl class="section author"><dt>Author</dt><dd><a href="https://github.com/straight-into-the-wall" target="_blank">straight_into_the_wall</a> </dd></dl>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="afdf3bfe2dc8aadac13c7e6d051d3bd5d" name="afdf3bfe2dc8aadac13c7e6d051d3bd5d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afdf3bfe2dc8aadac13c7e6d051d3bd5d">&#9670;&#160;</a></span>convert()</h2>
@ -163,8 +163,8 @@ Functions</h2></td></tr>
</div><div class="memdoc">
<p>for assert for unsigned int with fixed size </p>
<p>for IO operations for malloc for string tools</p>
<p>Convert a string to the it's zigzag equivalent on a given number of rows. </p><dl class="params"><dt>Parameters</dt><dd>
<p >for IO operations for malloc for string tools</p>
<p >Convert a string to the it's zigzag equivalent on a given number of rows. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">in</td><td>the string in input. </td></tr>
<tr><td class="paramname">numRows</td><td>the desired number of rows. </td></tr>
@ -403,7 +403,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_03902f230b9e9b7c999f936617a23997.html">leetcode</a></li><li class="navelem"><a class="el" href="../../dir_614f310c248f2b9541b559085cafcb40.html">src</a></li><li class="navelem"><a class="el" href="../../d0/df3/6_8c.html">6.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: testZigZag Pages: 1 -->
<svg width="156pt" height="27pt"

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<svg width="299pt" height="27pt"

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: test Pages: 1 -->
<svg width="225pt" height="27pt"

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: sorting/insertion_sort_recursive.c Pages: 1 -->
<svg width="252pt" height="93pt"

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: project_euler/problem_1/sol4.c Pages: 1 -->
<svg width="118pt" height="93pt"

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: elem Pages: 1 -->
<svg width="86pt" height="27pt"

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: Simple generic Stack</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -100,7 +100,7 @@ $(document).ready(function(){initNavTree('d1/d12/md_data_structures_stack__r_e_a
<div class="headertitle"><div class="title">Simple generic <a class="el" href="../../dd/d10/struct_stack.html" title="for printf() and scanf()">Stack</a> </div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>This is a modular generic stack data-structure. The stack is self growing.</p>
<div class="textblock"><p >This is a modular generic stack data-structure. The stack is self growing.</p>
<h2><a class="anchor" id="autotoc_md44"></a>
Content</h2>
<ul>
@ -109,29 +109,29 @@ Content</h2>
<li>main.c framework program for testing.</li>
<li>stack_linkedlist: Another stack implementation by linkedlist</li>
</ul>
<p>You need to only import the <b>stack.h</b></p>
<p >You need to only import the <b>stack.h</b></p>
<h2><a class="anchor" id="autotoc_md45"></a>
Public interface</h2>
<div class="fragment"><div class="line"><span class="keywordtype">void</span> initStack();</div>
</div><!-- fragment --><p>Initializes the stack with a capacity of 10 elements.</p>
</div><!-- fragment --><p >Initializes the stack with a capacity of 10 elements.</p>
<div class="fragment"><div class="line"><span class="keywordtype">void</span> <a class="code hl_function" href="../../db/d0c/infix__to__postfix_8c.html#a613462735d30cae1b85b606ecab30554">push</a>(<span class="keywordtype">void</span> * <span class="keywordtype">object</span>);</div>
<div class="ttc" id="ainfix__to__postfix_8c_html_a613462735d30cae1b85b606ecab30554"><div class="ttname"><a href="../../db/d0c/infix__to__postfix_8c.html#a613462735d30cae1b85b606ecab30554">push</a></div><div class="ttdeci">void push(struct Stack *p, char ch)</div><div class="ttdoc">push function</div><div class="ttdef"><b>Definition:</b> infix_to_postfix.c:55</div></div>
</div><!-- fragment --><p>pushs the argument onto the stack</p>
</div><!-- fragment --><p >pushs the argument onto the stack</p>
<div class="fragment"><div class="line"><span class="keywordtype">void</span> * <a class="code hl_function" href="../../da/d96/infix__to__postfix2_8c.html#a312e7f6c761a199c1369fbe651e084f0">pop</a>();</div>
<div class="ttc" id="ainfix__to__postfix2_8c_html_a312e7f6c761a199c1369fbe651e084f0"><div class="ttname"><a href="../../da/d96/infix__to__postfix2_8c.html#a312e7f6c761a199c1369fbe651e084f0">pop</a></div><div class="ttdeci">char pop()</div><div class="ttdoc">Function to pop from the stack.</div><div class="ttdef"><b>Definition:</b> infix_to_postfix2.c:45</div></div>
</div><!-- fragment --><p>pop: pops the top element of the stack from the stack. </p><pre class="fragment">assumes: stack not empty.
</div><!-- fragment --><p >pop: pops the top element of the stack from the stack. </p><pre class="fragment">assumes: stack not empty.
</pre> <div class="fragment"><div class="line"><span class="keywordtype">int</span> size();</div>
</div><!-- fragment --><p>gets the number of elements of the stack.</p>
</div><!-- fragment --><p >gets the number of elements of the stack.</p>
<div class="fragment"><div class="line"><span class="keywordtype">int</span> <a class="code hl_function" href="../../da/d96/infix__to__postfix2_8c.html#a653c98c68c558505b75b04c44b7c838e">isEmpty</a>();</div>
<div class="ttc" id="ainfix__to__postfix2_8c_html_a653c98c68c558505b75b04c44b7c838e"><div class="ttname"><a href="../../da/d96/infix__to__postfix2_8c.html#a653c98c68c558505b75b04c44b7c838e">isEmpty</a></div><div class="ttdeci">uint16_t isEmpty()</div><div class="ttdoc">Function to check whether the stack is empty or not.</div><div class="ttdef"><b>Definition:</b> infix_to_postfix2.c:61</div></div>
</div><!-- fragment --><p>returns 1 if stack is empty otherwise 0. </p>
</div><!-- fragment --><p >returns 1 if stack is empty otherwise 0. </p>
</div></div><!-- contents -->
</div><!-- PageDoc -->
</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: client_server/server.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -123,7 +123,7 @@ Include dependency graph for server.c:</div>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a392fb874e547e582e9c66a08a1f23326"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d20/server_8c.html#a392fb874e547e582e9c66a08a1f23326">MAX</a>&#160;&#160;&#160;80</td></tr>
<tr class="memdesc:a392fb874e547e582e9c66a08a1f23326"><td class="mdescLeft">&#160;</td><td class="mdescRight">max. <br /></td></tr>
<tr class="memdesc:a392fb874e547e582e9c66a08a1f23326"><td class="mdescLeft">&#160;</td><td class="mdescRight">max. <a href="../../d1/d20/server_8c.html#a392fb874e547e582e9c66a08a1f23326">More...</a><br /></td></tr>
<tr class="separator:a392fb874e547e582e9c66a08a1f23326"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a614217d263be1fb1a5f76e2ff7be19a2"><td class="memItemLeft" align="right" valign="top"><a id="a614217d263be1fb1a5f76e2ff7be19a2" name="a614217d263be1fb1a5f76e2ff7be19a2"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>PORT</b>&#160;&#160;&#160;8080</td></tr>
@ -137,14 +137,14 @@ Macros</h2></td></tr>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ac17020a38607ab29ce18939d5194a32a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d20/server_8c.html#ac17020a38607ab29ce18939d5194a32a">func</a> (int sockfd)</td></tr>
<tr class="memdesc:ac17020a38607ab29ce18939d5194a32a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Continuous loop to send and receive over the socket. <br /></td></tr>
<tr class="memdesc:ac17020a38607ab29ce18939d5194a32a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Continuous loop to send and receive over the socket. <a href="../../d1/d20/server_8c.html#ac17020a38607ab29ce18939d5194a32a">More...</a><br /></td></tr>
<tr class="separator:ac17020a38607ab29ce18939d5194a32a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d20/server_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver code. <br /></td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver code. <a href="../../d1/d20/server_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">More...</a><br /></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Server side implementation of Server-Client system. </p>
<div class="textblock"><p >Server side implementation of Server-Client system. </p>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/Nairit11" target="_blank">Nairit11</a> </dd>
<dd>
<a href="https://github.com/kvedala" target="_blank">Krishna Vedala</a> </dd></dl>
@ -163,7 +163,7 @@ Functions</h2></td></tr>
</div><div class="memdoc">
<p>max. </p>
<p>characters per message </p>
<p >characters per message </p>
</div>
</div>
@ -185,7 +185,7 @@ Functions</h2></td></tr>
</div><div class="memdoc">
<p>Continuous loop to send and receive over the socket. </p>
<p>Exits when "exit" is sent from commandline. </p><dl class="params"><dt>Parameters</dt><dd>
<p >Exits when "exit" is sent from commandline. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">sockfd</td><td>socket handle number </td></tr>
</table>
@ -338,7 +338,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_d20ad0b8de644c123692ba5582cc7a7b.html">client_server</a></li><li class="navelem"><a class="el" href="../../d1/d20/server_8c.html">server.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<svg width="117pt" height="27pt"

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: project_euler/problem_7/sol.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -117,11 +117,11 @@ Include dependency graph for sol.c:</div>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a840291bc02cba5474a4cb46a9b9566fe"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d2f/problem__7_2sol_8c.html#a840291bc02cba5474a4cb46a9b9566fe">main</a> (void)</td></tr>
<tr class="memdesc:a840291bc02cba5474a4cb46a9b9566fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <br /></td></tr>
<tr class="memdesc:a840291bc02cba5474a4cb46a9b9566fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <a href="../../d1/d2f/problem__7_2sol_8c.html#a840291bc02cba5474a4cb46a9b9566fe">More...</a><br /></td></tr>
<tr class="separator:a840291bc02cba5474a4cb46a9b9566fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a href="https://projecteuler.net/problem=7" target="_blank">Problem 7</a> solution. </p>
<div class="textblock"><p ><a href="https://projecteuler.net/problem=7" target="_blank">Problem 7</a> solution. </p>
<dl class="section see"><dt>See also</dt><dd>Another version: <a class="el" href="../../d6/d64/problem__7_2sol2_8c.html" title="Problem 7 solution.">problem_7/sol2.c</a> </dd></dl>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="a840291bc02cba5474a4cb46a9b9566fe" name="a840291bc02cba5474a4cb46a9b9566fe"></a>
@ -181,7 +181,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_b3d331eabd4234f247030c297aaf021c.html">project_euler</a></li><li class="navelem"><a class="el" href="../../dir_4bae997a2671812c2140d5abfb6305a4.html">problem_7</a></li><li class="navelem"><a class="el" href="../../d1/d2f/problem__7_2sol_8c.html">sol.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: observation Struct Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -119,7 +119,7 @@ int&#160;</td><td class="memItemRight" valign="bottom"><b>group</b></td></tr>
<tr class="separator:a2db8ace685c08aa7b52f5a28b0843aab"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>a class to store points in 2d plane the name observation is used to denote a random point in plane </p>
<div class="textblock"><p >a class to store points in 2d plane the name observation is used to denote a random point in plane </p>
</div><hr/>The documentation for this struct was generated from the following file:<ul>
<li>machine_learning/<a class="el" href="../../d6/d76/k__means__clustering_8c.html">k_means_clustering.c</a></li>
</ul>
@ -129,7 +129,7 @@ int&#160;</td><td class="memItemRight" valign="bottom"><b>group</b></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d1/d5e/structobservation.html">observation</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: Kohonen SOM topology algorithm</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -131,25 +131,25 @@ Macros</h2></td></tr>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gac78022076d889bf2ebfb2c41d4527ceb"><td class="memItemLeft" align="right" valign="top">double *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6b/group__kohonen__2d.html#gac78022076d889bf2ebfb2c41d4527ceb">kohonen_data_3d</a> (const struct <a class="el" href="../../d8/db8/structkohonen__array__3d.html">kohonen_array_3d</a> *arr, int x, int y, int z)</td></tr>
<tr class="memdesc:gac78022076d889bf2ebfb2c41d4527ceb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that returns the pointer to (x, y, z) ^th location in the linear 3D array given by: <br /></td></tr>
<tr class="memdesc:gac78022076d889bf2ebfb2c41d4527ceb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that returns the pointer to (x, y, z) ^th location in the linear 3D array given by: <a href="../../d1/d6b/group__kohonen__2d.html#gac78022076d889bf2ebfb2c41d4527ceb">More...</a><br /></td></tr>
<tr class="separator:gac78022076d889bf2ebfb2c41d4527ceb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf5ce14f026d6d231bef29161bac2b485"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6b/group__kohonen__2d.html#gaf5ce14f026d6d231bef29161bac2b485">_random</a> (double a, double b)</td></tr>
<tr class="memdesc:gaf5ce14f026d6d231bef29161bac2b485"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to generate a random number in a given interval. <br /></td></tr>
<tr class="memdesc:gaf5ce14f026d6d231bef29161bac2b485"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to generate a random number in a given interval. <a href="../../d1/d6b/group__kohonen__2d.html#gaf5ce14f026d6d231bef29161bac2b485">More...</a><br /></td></tr>
<tr class="separator:gaf5ce14f026d6d231bef29161bac2b485"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6824dc6d973eb3339af7aef5fea78b0c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6b/group__kohonen__2d.html#ga6824dc6d973eb3339af7aef5fea78b0c">save_2d_data</a> (const char *fname, double **X, int num_points, int num_features)</td></tr>
<tr class="memdesc:ga6824dc6d973eb3339af7aef5fea78b0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Save a given n-dimensional data martix to file. <br /></td></tr>
<tr class="memdesc:ga6824dc6d973eb3339af7aef5fea78b0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Save a given n-dimensional data martix to file. <a href="../../d1/d6b/group__kohonen__2d.html#ga6824dc6d973eb3339af7aef5fea78b0c">More...</a><br /></td></tr>
<tr class="separator:ga6824dc6d973eb3339af7aef5fea78b0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga49d35f68f5d11d8ef6f8cce0d0e7bcba"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6b/group__kohonen__2d.html#ga49d35f68f5d11d8ef6f8cce0d0e7bcba">save_u_matrix</a> (const char *fname, struct <a class="el" href="../../d8/db8/structkohonen__array__3d.html">kohonen_array_3d</a> *W)</td></tr>
<tr class="memdesc:ga49d35f68f5d11d8ef6f8cce0d0e7bcba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create the distance matrix or <a href="https://en.wikipedia.org/wiki/U-matrix" target="_blank">U-matrix</a> from the trained weights and save to disk. <br /></td></tr>
<tr class="memdesc:ga49d35f68f5d11d8ef6f8cce0d0e7bcba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create the distance matrix or <a href="https://en.wikipedia.org/wiki/U-matrix" target="_blank">U-matrix</a> from the trained weights and save to disk. <a href="../../d1/d6b/group__kohonen__2d.html#ga49d35f68f5d11d8ef6f8cce0d0e7bcba">More...</a><br /></td></tr>
<tr class="separator:ga49d35f68f5d11d8ef6f8cce0d0e7bcba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadc22d512c00a9f5799ee067f4fb90b4b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6b/group__kohonen__2d.html#gadc22d512c00a9f5799ee067f4fb90b4b">get_min_2d</a> (double **X, int N, double *val, int *x_idx, int *y_idx)</td></tr>
<tr class="memdesc:gadc22d512c00a9f5799ee067f4fb90b4b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get minimum value and index of the value in a matrix. <br /></td></tr>
<tr class="memdesc:gadc22d512c00a9f5799ee067f4fb90b4b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get minimum value and index of the value in a matrix. <a href="../../d1/d6b/group__kohonen__2d.html#gadc22d512c00a9f5799ee067f4fb90b4b">More...</a><br /></td></tr>
<tr class="separator:gadc22d512c00a9f5799ee067f4fb90b4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga83abb572c60d202e100595a989dfe123"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6b/group__kohonen__2d.html#ga83abb572c60d202e100595a989dfe123">kohonen_update_weights</a> (const double *X, struct <a class="el" href="../../d8/db8/structkohonen__array__3d.html">kohonen_array_3d</a> *W, double **D, int num_out, int num_features, double alpha, int R)</td></tr>
<tr class="memdesc:ga83abb572c60d202e100595a989dfe123"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update weights of the SOM using Kohonen algorithm. <br /></td></tr>
<tr class="memdesc:ga83abb572c60d202e100595a989dfe123"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update weights of the SOM using Kohonen algorithm. <a href="../../d1/d6b/group__kohonen__2d.html#ga83abb572c60d202e100595a989dfe123">More...</a><br /></td></tr>
<tr class="separator:ga83abb572c60d202e100595a989dfe123"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacb42eda8af6ebd6a141a34ab00a0b710"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6b/group__kohonen__2d.html#gacb42eda8af6ebd6a141a34ab00a0b710">kohonen_som</a> (double **X, struct <a class="el" href="../../d8/db8/structkohonen__array__3d.html">kohonen_array_3d</a> *W, int num_samples, int num_features, int num_out, double alpha_min)</td></tr>
<tr class="memdesc:gacb42eda8af6ebd6a141a34ab00a0b710"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply incremental algorithm with updating neighborhood and learning rates on all samples in the given datset. <br /></td></tr>
<tr class="memdesc:gacb42eda8af6ebd6a141a34ab00a0b710"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply incremental algorithm with updating neighborhood and learning rates on all samples in the given datset. <a href="../../d1/d6b/group__kohonen__2d.html#gacb42eda8af6ebd6a141a34ab00a0b710">More...</a><br /></td></tr>
<tr class="separator:gacb42eda8af6ebd6a141a34ab00a0b710"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
@ -181,7 +181,7 @@ Functions</h2></td></tr>
</div><div class="memdoc">
<p>Helper function to generate a random number in a given interval. </p>
<p><br />
<p ><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>
@ -785,7 +785,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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: Kohonen SOM topology algorithm Pages: 1 -->
<svg width="302pt" height="38pt"

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: save_u_matrix Pages: 1 -->
<svg width="217pt" height="27pt"

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: kohonen_update_weights Pages: 1 -->
<svg width="264pt" height="64pt"

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: kohonen_som Pages: 1 -->
<svg width="377pt" height="64pt"

Before

Width:  |  Height:  |  Size: 3.2 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: client_server/tcp_full_duplex_server.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -126,20 +126,20 @@ Include dependency graph for tcp_full_duplex_server.c:</div>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a614217d263be1fb1a5f76e2ff7be19a2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6b/tcp__full__duplex__server_8c.html#a614217d263be1fb1a5f76e2ff7be19a2">PORT</a>&#160;&#160;&#160;10000</td></tr>
<tr class="memdesc:a614217d263be1fb1a5f76e2ff7be19a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">For the type in_addr_t and in_port_t For structures returned by the network database library - formatted internet addresses and port numbers For in_addr and sockaddr_in structures. <br /></td></tr>
<tr class="memdesc:a614217d263be1fb1a5f76e2ff7be19a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">For the type in_addr_t and in_port_t For structures returned by the network database library - formatted internet addresses and port numbers For in_addr and sockaddr_in structures. <a href="../../d1/d6b/tcp__full__duplex__server_8c.html#a614217d263be1fb1a5f76e2ff7be19a2">More...</a><br /></td></tr>
<tr class="separator:a614217d263be1fb1a5f76e2ff7be19a2"><td class="memSeparator" colspan="2">&#160;</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:a7e15c8e2885871839fc2b820dfbdb4ce"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6b/tcp__full__duplex__server_8c.html#a7e15c8e2885871839fc2b820dfbdb4ce">error</a> ()</td></tr>
<tr class="memdesc:a7e15c8e2885871839fc2b820dfbdb4ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Utility function used to print an error message to <code>stderr</code>. <br /></td></tr>
<tr class="memdesc:a7e15c8e2885871839fc2b820dfbdb4ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Utility function used to print an error message to <code>stderr</code>. <a href="../../d1/d6b/tcp__full__duplex__server_8c.html#a7e15c8e2885871839fc2b820dfbdb4ce">More...</a><br /></td></tr>
<tr class="separator:a7e15c8e2885871839fc2b820dfbdb4ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d6b/tcp__full__duplex__server_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <br /></td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <a href="../../d1/d6b/tcp__full__duplex__server_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">More...</a><br /></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Server-side implementation of <a href="http://www.tcpipguide.com/free/t_SimplexFullDuplexandHalfDuplexOperation.htm" target="_blank">TCP Full Duplex Communication</a> </p>
<div class="textblock"><p >Server-side implementation of <a href="http://www.tcpipguide.com/free/t_SimplexFullDuplexandHalfDuplexOperation.htm" target="_blank">TCP Full Duplex Communication</a> </p>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/NVombat" target="_blank">NVombat</a> </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="../../d1/d6b/tcp__full__duplex__server_8c.html" title="Server-side implementation of TCP Full Duplex Communication">tcp_full_duplex_server.c</a></dd></dl>
<p>The algorithm is based on the simple TCP client and server model. However, instead of the server only sending and the client only receiving data, The server and client can both send and receive data simultaneously. This is implemented by using the <code>fork</code> function call so that in the server the child process can receive data and parent process can send data, and in the client the child process can send data and the parent process can receive data. It runs an infinite loop and can send and receive messages indefinitely until the user exits the loop. In this way, the Full Duplex Form of communication can be represented using the TCP server-client model &amp; socket programming </p>
@ -157,7 +157,7 @@ Functions</h2></td></tr>
</div><div class="memdoc">
<p>For the type in_addr_t and in_port_t For structures returned by the network database library - formatted internet addresses and port numbers For in_addr and sockaddr_in structures. </p>
<p>For specific bit size values of variables Variable types, several macros, and various functions for performing input and output Variable types, several macros, and various functions for performing general functions Various functions for manipulating arrays of characters For macro definitions related to the creation of sockets For definitions to allow for the porting of BSD programs For miscellaneous symbolic constants and types, and miscellaneous functions </p>
<p >For specific bit size values of variables Variable types, several macros, and various functions for performing input and output Variable types, several macros, and various functions for performing general functions Various functions for manipulating arrays of characters For macro definitions related to the creation of sockets For definitions to allow for the porting of BSD programs For miscellaneous symbolic constants and types, and miscellaneous functions </p>
</div>
</div>
@ -178,7 +178,7 @@ Functions</h2></td></tr>
</div><div class="memdoc">
<p>Utility function used to print an error message to <code>stderr</code>. </p>
<p>It prints <code>str</code> and an implementation-defined error message corresponding to the global variable <code>errno</code>. </p><dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
<p >It prints <code>str</code> and an implementation-defined error message corresponding to the global variable <code>errno</code>. </p><dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
<div class="fragment"><div class="line"><span class="lineno"> 40</span>{</div>
<div class="line"><span class="lineno"> 41</span> perror(<span class="stringliteral">&quot;Socket Creation Failed&quot;</span>);</div>
<div class="line"><span class="lineno"> 42</span> exit(EXIT_FAILURE);</div>
@ -204,38 +204,38 @@ Functions</h2></td></tr>
<p>Main function. </p>
<dl class="section return"><dt>Returns</dt><dd>0 on exit </dd></dl>
<p>Variable Declarations</p>
<p>&lt; socket descriptors - Like file handles but for sockets</p>
<p>&lt; character arrays to read and store string data for communication</p>
<p>&lt; basic structures for all syscalls and functions that deal with internet addresses. Structures for handling internet addresses</p>
<p>size of address</p>
<p>The TCP socket is created using the socket function</p>
<p>AF_INET (Family) - it is an address family that is used to designate the type of addresses that your socket can communicate with</p>
<p>SOCK_STREAM (Type) - Indicates TCP Connection - A stream socket provides for the bidirectional, reliable, sequenced, and unduplicated flow of data without record boundaries. Aside from the bidirectionality of data flow, a pair of connected stream sockets provides an interface nearly identical to pipes</p>
<p>0 (Protocol) - Specifies a particular protocol to be used with the socket. Specifying a protocol of 0 causes socket() to use an unspecified default protocol appropriate for the requested socket type</p>
<p>&lt; Error if the socket descriptor has a value lower than 0 - socket wasnt created</p>
<p>Server Address Information</p>
<p>The bzero() function erases the data in the n bytes of the memory starting at the location pointed to, by writing zeros (bytes containing '\0') to that area</p>
<p>We bind the server_addr to the internet address and port number thus giving our socket an identity with an address and port where it can listen for connections</p>
<p>htons - The htons() function translates a short integer from host byte order to network byte order</p>
<p>htonl - The htonl() function translates a long integer from host byte order to network byte order</p>
<p>These functions are necessary so that the binding of address and port takes place with data in the correct format</p>
<p>This binds the socket descriptor to the server thus enabling the server to listen for connections and communicate with other clients</p>
<p>If binding is unsuccessful</p>
<p>This is to listen for clients or connections made to the server</p>
<p>The limit is currently at 5 but can be increased to listen for more connections</p>
<p>It listens to connections through the socket descriptor</p>
<p>When a connection is found, a socket is created and connection is accepted and established through the socket descriptor</p>
<p>Communication between client and server</p>
<p>The bzero() function erases the data in the n bytes of the memory starting at the location pointed to, by writing zeros (bytes containing '\0') to that area. The variables are emptied and then ready for use</p>
<p>The fork function call is used to create a child and parent process which run and execute code simultaneously</p>
<p>The child process is used to receive data and after doing so sleeps for 5 seconds to wait for the parent to send data</p>
<p>The parent process is used to send data and after doing so sleeps for 5 seconds to wait for the child to receive data</p>
<p>The server and client can communicate indefinitely till one of them exits the connection</p>
<p>Since the exchange of information between the server and client takes place simultaneously this represents FULL DUPLEX COMMUNICATION</p>
<p>Value of 0 is for child process</p>
<p>Parent process</p>
<p>Close socket</p>
<p >Variable Declarations</p>
<p >&lt; socket descriptors - Like file handles but for sockets</p>
<p >&lt; character arrays to read and store string data for communication</p>
<p >&lt; basic structures for all syscalls and functions that deal with internet addresses. Structures for handling internet addresses</p>
<p >size of address</p>
<p >The TCP socket is created using the socket function</p>
<p >AF_INET (Family) - it is an address family that is used to designate the type of addresses that your socket can communicate with</p>
<p >SOCK_STREAM (Type) - Indicates TCP Connection - A stream socket provides for the bidirectional, reliable, sequenced, and unduplicated flow of data without record boundaries. Aside from the bidirectionality of data flow, a pair of connected stream sockets provides an interface nearly identical to pipes</p>
<p >0 (Protocol) - Specifies a particular protocol to be used with the socket. Specifying a protocol of 0 causes socket() to use an unspecified default protocol appropriate for the requested socket type</p>
<p >&lt; Error if the socket descriptor has a value lower than 0 - socket wasnt created</p>
<p >Server Address Information</p>
<p >The bzero() function erases the data in the n bytes of the memory starting at the location pointed to, by writing zeros (bytes containing '\0') to that area</p>
<p >We bind the server_addr to the internet address and port number thus giving our socket an identity with an address and port where it can listen for connections</p>
<p >htons - The htons() function translates a short integer from host byte order to network byte order</p>
<p >htonl - The htonl() function translates a long integer from host byte order to network byte order</p>
<p >These functions are necessary so that the binding of address and port takes place with data in the correct format</p>
<p >This binds the socket descriptor to the server thus enabling the server to listen for connections and communicate with other clients</p>
<p >If binding is unsuccessful</p>
<p >This is to listen for clients or connections made to the server</p>
<p >The limit is currently at 5 but can be increased to listen for more connections</p>
<p >It listens to connections through the socket descriptor</p>
<p >When a connection is found, a socket is created and connection is accepted and established through the socket descriptor</p>
<p >Communication between client and server</p>
<p >The bzero() function erases the data in the n bytes of the memory starting at the location pointed to, by writing zeros (bytes containing '\0') to that area. The variables are emptied and then ready for use</p>
<p >The fork function call is used to create a child and parent process which run and execute code simultaneously</p>
<p >The child process is used to receive data and after doing so sleeps for 5 seconds to wait for the parent to send data</p>
<p >The parent process is used to send data and after doing so sleeps for 5 seconds to wait for the child to receive data</p>
<p >The server and client can communicate indefinitely till one of them exits the connection</p>
<p >Since the exchange of information between the server and client takes place simultaneously this represents FULL DUPLEX COMMUNICATION</p>
<p >Value of 0 is for child process</p>
<p >Parent process</p>
<p >Close socket</p>
<div class="fragment"><div class="line"><span class="lineno"> 50</span>{<span class="comment"></span></div>
<div class="line"><span class="lineno"> 51</span><span class="comment"> /** Variable Declarations */</span></div>
<div class="line"><span class="lineno"> 52</span> uint32_t sockfd,</div>
@ -400,7 +400,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_d20ad0b8de644c123692ba5582cc7a7b.html">client_server</a></li><li class="navelem"><a class="el" href="../../d1/d6b/tcp__full__duplex__server_8c.html">tcp_full_duplex_server.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<svg width="118pt" height="27pt"

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: numerical_methods/ode_forward_euler.c Pages: 1 -->
<svg width="248pt" height="93pt"

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: ListItem Struct Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -122,8 +122,8 @@ struct <a class="el" href="../../d1/d7d/struct_list_item.html">ListItem</a> *&#1
<tr class="separator:a3a9c06ae85f60557666cb569b36072a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Definition for a binary tree node. </p>
<p>struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; }; </p>
<div class="textblock"><p >Definition for a binary tree node. </p>
<p >struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; }; </p>
</div><hr/>The documentation for this struct was generated from the following file:<ul>
<li>leetcode/src/236.c</li>
</ul>
@ -133,7 +133,7 @@ struct <a class="el" href="../../d1/d7d/struct_list_item.html">ListItem</a> *&#1
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d1/d7d/struct_list_item.html">ListItem</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: AVLnode Pages: 1 -->
<svg width="100pt" height="30pt"

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: sorting/odd_even_sort.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -121,20 +121,20 @@ Include dependency graph for odd_even_sort.c:</div>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ac2eee54959bc040cfcb56d2d8047853a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d94/odd__even__sort_8c.html#ac2eee54959bc040cfcb56d2d8047853a">swap</a> (int32_t *first, int32_t *second)</td></tr>
<tr class="memdesc:ac2eee54959bc040cfcb56d2d8047853a"><td class="mdescLeft">&#160;</td><td class="mdescRight">for assert <br /></td></tr>
<tr class="memdesc:ac2eee54959bc040cfcb56d2d8047853a"><td class="mdescLeft">&#160;</td><td class="mdescRight">for assert <a href="../../d1/d94/odd__even__sort_8c.html#ac2eee54959bc040cfcb56d2d8047853a">More...</a><br /></td></tr>
<tr class="separator:ac2eee54959bc040cfcb56d2d8047853a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17761a0788916faded6e2ca1f478ad33"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d94/odd__even__sort_8c.html#a17761a0788916faded6e2ca1f478ad33">oddEvenSort</a> (int *arr, int size)</td></tr>
<tr class="memdesc:a17761a0788916faded6e2ca1f478ad33"><td class="mdescLeft">&#160;</td><td class="mdescRight">oddEvenSort sorts the array using the algorithm described above. <br /></td></tr>
<tr class="memdesc:a17761a0788916faded6e2ca1f478ad33"><td class="mdescLeft">&#160;</td><td class="mdescRight">oddEvenSort sorts the array using the algorithm described above. <a href="../../d1/d94/odd__even__sort_8c.html#a17761a0788916faded6e2ca1f478ad33">More...</a><br /></td></tr>
<tr class="separator:a17761a0788916faded6e2ca1f478ad33"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8dca7b867074164d5f45b0f3851269d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d94/odd__even__sort_8c.html#aa8dca7b867074164d5f45b0f3851269d">test</a> ()</td></tr>
<tr class="memdesc:aa8dca7b867074164d5f45b0f3851269d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self-test implementations. <br /></td></tr>
<tr class="memdesc:aa8dca7b867074164d5f45b0f3851269d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self-test implementations. <a href="../../d1/d94/odd__even__sort_8c.html#aa8dca7b867074164d5f45b0f3851269d">More...</a><br /></td></tr>
<tr class="separator:aa8dca7b867074164d5f45b0f3851269d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d94/odd__even__sort_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <br /></td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <a href="../../d1/d94/odd__even__sort_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">More...</a><br /></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a href="https://en.wikipedia.org/wiki/Odd%E2%80%93even_sort" target="_blank">Odd Even Sort</a> implementation </p>
<div class="textblock"><p ><a href="https://en.wikipedia.org/wiki/Odd%E2%80%93even_sort" target="_blank">Odd Even Sort</a> implementation </p>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/eddybruv" target="_blank">Edwin Ajong</a></dd></dl>
<p>This algorithm is divided into two phases- Odd and Even Phase. The algorithm runs until the array elements are sorted and in each iteration two phases occurs- Odd and Even Phases. In the odd phase, we perform a bubble sort on odd indexed elements and in the even phase, we perform a bubble sort on even indexed elements. Time Complexity: O(N ^ 2) </p>
</div><h2 class="groupheader">Function Documentation</h2>
@ -197,7 +197,7 @@ Here is the call graph for this function:</div>
</div><div class="memdoc">
<p>oddEvenSort sorts the array using the algorithm described above. </p>
<p>A boolean varaible(isSorted) is declared and initialised to "false". In the while loop, the variable(isSorted) is then set to "true". During even phase the for loop loops through the array, touching just the even indexes. i.e arr[0], arr[2], arr[4] and so on. While during the odd phase, the for loop loops through the array, touching just the odd indexes. i.e arr[1], arr[3], arr[5] and so on. During these phases, if the if statement check if the interger at the current position in the array is greater than the interger at the next array index (i.e arr[index + 2], to make sure the index is odd during the odd phase and even during the even phase). If the condition is true, the function "swap" is called and address of the intergers in question are passed as parameters. After the swap is completed, "isSorted" is set to "false". The while loop will keep running till the array is propertly sorted. </p><dl class="params"><dt>Parameters</dt><dd>
<p >A boolean varaible(isSorted) is declared and initialised to "false". In the while loop, the variable(isSorted) is then set to "true". During even phase the for loop loops through the array, touching just the even indexes. i.e arr[0], arr[2], arr[4] and so on. While during the odd phase, the for loop loops through the array, touching just the odd indexes. i.e arr[1], arr[3], arr[5] and so on. During these phases, if the if statement check if the interger at the current position in the array is greater than the interger at the next array index (i.e arr[index + 2], to make sure the index is odd during the odd phase and even during the even phase). If the condition is true, the function "swap" is called and address of the intergers in question are passed as parameters. After the swap is completed, "isSorted" is set to "false". The while loop will keep running till the array is propertly sorted. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">arr</td><td>array to be sorted </td></tr>
<tr><td class="paramname">size</td><td>the size of the array </td></tr>
@ -263,8 +263,8 @@ Here is the call graph for this function:</div>
</div><div class="memdoc">
<p>for assert </p>
<p>for bool for IO operations for dynammic memory allocation for random number generation for int32_t types</p>
<p>Swap numbers by reference(using pointers) </p><dl class="params"><dt>Parameters</dt><dd>
<p >for bool for IO operations for dynammic memory allocation for random number generation for int32_t types</p>
<p >Swap numbers by reference(using pointers) </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">first</td><td>pointer to first number </td></tr>
<tr><td class="paramname">second</td><td>pointer to second number </td></tr>
@ -305,7 +305,7 @@ Here is the call graph for this function:</div>
</div><div class="memdoc">
<p>Self-test implementations. </p>
<p>Two tests (unsorted) arrays were created and their corresponding solution(sorted) arrays were also created. The test arrays and their respective sizes are then passed in to the oddEvenSort function. To test if the algorithm works, a for loop is assigned to loop through the both arrays(test and solution) and check if the array elements of the test array correspond to the elements of the solution array. </p><dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
<p >Two tests (unsorted) arrays were created and their corresponding solution(sorted) arrays were also created. The test arrays and their respective sizes are then passed in to the oddEvenSort function. To test if the algorithm works, a for loop is assigned to loop through the both arrays(test and solution) and check if the array elements of the test array correspond to the elements of the solution array. </p><dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
<div class="fragment"><div class="line"><span class="lineno"> 91</span>{</div>
<div class="line"><span class="lineno"> 92</span> int32_t arr1[] = {-9, 2, 3, 1};</div>
<div class="line"><span class="lineno"> 93</span> int32_t arr1Soln[] = {-9, 1, 2, 3};</div>
@ -342,7 +342,7 @@ Here is the call graph for this function:</div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_bb1b521853a9c46347182a9d10420771.html">sorting</a></li><li class="navelem"><a class="el" href="../../d1/d94/odd__even__sort_8c.html">odd_even_sort.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: test Pages: 1 -->
<svg width="150pt" height="27pt"

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<svg width="224pt" height="27pt"

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: client_server/tcp_full_duplex_client.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -126,20 +126,20 @@ Include dependency graph for tcp_full_duplex_client.c:</div>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a614217d263be1fb1a5f76e2ff7be19a2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d98/tcp__full__duplex__client_8c.html#a614217d263be1fb1a5f76e2ff7be19a2">PORT</a>&#160;&#160;&#160;10000</td></tr>
<tr class="memdesc:a614217d263be1fb1a5f76e2ff7be19a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">For the type in_addr_t and in_port_t For structures returned by the network database library - formatted internet addresses and port numbers For in_addr and sockaddr_in structures. <br /></td></tr>
<tr class="memdesc:a614217d263be1fb1a5f76e2ff7be19a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">For the type in_addr_t and in_port_t For structures returned by the network database library - formatted internet addresses and port numbers For in_addr and sockaddr_in structures. <a href="../../d1/d98/tcp__full__duplex__client_8c.html#a614217d263be1fb1a5f76e2ff7be19a2">More...</a><br /></td></tr>
<tr class="separator:a614217d263be1fb1a5f76e2ff7be19a2"><td class="memSeparator" colspan="2">&#160;</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:a7e15c8e2885871839fc2b820dfbdb4ce"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d98/tcp__full__duplex__client_8c.html#a7e15c8e2885871839fc2b820dfbdb4ce">error</a> ()</td></tr>
<tr class="memdesc:a7e15c8e2885871839fc2b820dfbdb4ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Utility function used to print an error message to <code>stderr</code>. <br /></td></tr>
<tr class="memdesc:a7e15c8e2885871839fc2b820dfbdb4ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Utility function used to print an error message to <code>stderr</code>. <a href="../../d1/d98/tcp__full__duplex__client_8c.html#a7e15c8e2885871839fc2b820dfbdb4ce">More...</a><br /></td></tr>
<tr class="separator:a7e15c8e2885871839fc2b820dfbdb4ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d98/tcp__full__duplex__client_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <br /></td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <a href="../../d1/d98/tcp__full__duplex__client_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">More...</a><br /></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Client-side implementation of <a href="http://www.tcpipguide.com/free/t_SimplexFullDuplexandHalfDuplexOperation.htm" target="_blank">TCP Full Duplex Communication</a> </p>
<div class="textblock"><p >Client-side implementation of <a href="http://www.tcpipguide.com/free/t_SimplexFullDuplexandHalfDuplexOperation.htm" target="_blank">TCP Full Duplex Communication</a> </p>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/NVombat" target="_blank">NVombat</a> </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="../../d1/d6b/tcp__full__duplex__server_8c.html" title="Server-side implementation of TCP Full Duplex Communication">tcp_full_duplex_server.c</a></dd></dl>
<p>The algorithm is based on the simple TCP client and server model. However, instead of the server only sending and the client only receiving data, The server and client can both send and receive data simultaneously. This is implemented by using the <code>fork</code> function call so that in the server the child process can receive data and parent process can send data, and in the client the child process can send data and the parent process can receive data. It runs an infinite loop and can send and receive messages indefinitely until the user exits the loop. In this way, the Full Duplex Form of communication can be represented using the TCP server-client model &amp; socket programming </p>
@ -157,7 +157,7 @@ Functions</h2></td></tr>
</div><div class="memdoc">
<p>For the type in_addr_t and in_port_t For structures returned by the network database library - formatted internet addresses and port numbers For in_addr and sockaddr_in structures. </p>
<p>For specific bit size values of variables Variable types, several macros, and various functions for performing input and output Variable types, several macros, and various functions for performing general functions Various functions for manipulating arrays of characters For macro definitions related to the creation of sockets For definitions to allow for the porting of BSD programs For miscellaneous symbolic constants and types, and miscellaneous functions </p>
<p >For specific bit size values of variables Variable types, several macros, and various functions for performing input and output Variable types, several macros, and various functions for performing general functions Various functions for manipulating arrays of characters For macro definitions related to the creation of sockets For definitions to allow for the porting of BSD programs For miscellaneous symbolic constants and types, and miscellaneous functions </p>
</div>
</div>
@ -178,7 +178,7 @@ Functions</h2></td></tr>
</div><div class="memdoc">
<p>Utility function used to print an error message to <code>stderr</code>. </p>
<p>It prints <code>str</code> and an implementation-defined error message corresponding to the global variable <code>errno</code>. </p><dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
<p >It prints <code>str</code> and an implementation-defined error message corresponding to the global variable <code>errno</code>. </p><dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
<div class="fragment"><div class="line"><span class="lineno"> 40</span>{</div>
<div class="line"><span class="lineno"> 41</span> perror(<span class="stringliteral">&quot;Socket Creation Failed&quot;</span>);</div>
<div class="line"><span class="lineno"> 42</span> exit(EXIT_FAILURE);</div>
@ -204,31 +204,31 @@ Functions</h2></td></tr>
<p>Main function. </p>
<dl class="section return"><dt>Returns</dt><dd>0 on exit </dd></dl>
<p>Variable Declarations</p>
<p>&lt; socket descriptors - Like file handles but for sockets</p>
<p>&lt; character arrays to read and store string data for communication</p>
<p>&lt; basic structures for all syscalls and functions that deal with internet addresses. Structures for handling internet addresses</p>
<p>The TCP socket is created using the socket function.</p>
<p>AF_INET (Family) - it is an address family that is used to designate the type of addresses that your socket can communicate with</p>
<p>SOCK_STREAM (Type) - Indicates TCP Connection - A stream socket provides for the bidirectional, reliable, sequenced, and unduplicated flow of data without record boundaries. Aside from the bidirectionality of data flow, a pair of connected stream sockets provides an interface nearly identical to pipes.</p>
<p>0 (Protocol) - Specifies a particular protocol to be used with the socket. Specifying a protocol of 0 causes socket() to use an unspecified default protocol appropriate for the requested socket type.</p>
<p>Server Address Information</p>
<p>The bzero() function erases the data in the n bytes of the memory starting at the location pointed to, by writing zeros (bytes containing '\0') to that area.</p>
<p>We bind the server_addr to the internet address and port number thus giving our socket an identity with an address and port where it can listen for connections</p>
<p>htons - The htons() function translates a short integer from host byte order to network byte order</p>
<p>htonl - The htonl() function translates a long integer from host byte order to network byte order</p>
<p>These functions are necessary so that the binding of address and port takes place with data in the correct format</p>
<p>Connects the client to the server address using the socket descriptor This enables the two to communicate and exchange data</p>
<p>Communication between client and server</p>
<p>The bzero() function erases the data in the n bytes of the memory starting at the location pointed to, by writing zeros (bytes containing '\0') to that area. The variables are emptied and then ready for use</p>
<p>The fork function call is used to create a child and parent process which run and execute code simultaneously</p>
<p>The child process is used to send data and after doing so sleeps for 5 seconds to wait for the parent to receive data</p>
<p>The parent process is used to receive data and after doing so sleeps for 5 seconds to wait for the child to send data</p>
<p>The server and client can communicate indefinitely till one of them exits the connection</p>
<p>Since the exchange of information between the server and client takes place simultaneously this represents FULL DUPLEX COMMUNICATION</p>
<p>Value of 0 is for child process</p>
<p>Parent Process</p>
<p>Close Socket</p>
<p >Variable Declarations</p>
<p >&lt; socket descriptors - Like file handles but for sockets</p>
<p >&lt; character arrays to read and store string data for communication</p>
<p >&lt; basic structures for all syscalls and functions that deal with internet addresses. Structures for handling internet addresses</p>
<p >The TCP socket is created using the socket function.</p>
<p >AF_INET (Family) - it is an address family that is used to designate the type of addresses that your socket can communicate with</p>
<p >SOCK_STREAM (Type) - Indicates TCP Connection - A stream socket provides for the bidirectional, reliable, sequenced, and unduplicated flow of data without record boundaries. Aside from the bidirectionality of data flow, a pair of connected stream sockets provides an interface nearly identical to pipes.</p>
<p >0 (Protocol) - Specifies a particular protocol to be used with the socket. Specifying a protocol of 0 causes socket() to use an unspecified default protocol appropriate for the requested socket type.</p>
<p >Server Address Information</p>
<p >The bzero() function erases the data in the n bytes of the memory starting at the location pointed to, by writing zeros (bytes containing '\0') to that area.</p>
<p >We bind the server_addr to the internet address and port number thus giving our socket an identity with an address and port where it can listen for connections</p>
<p >htons - The htons() function translates a short integer from host byte order to network byte order</p>
<p >htonl - The htonl() function translates a long integer from host byte order to network byte order</p>
<p >These functions are necessary so that the binding of address and port takes place with data in the correct format</p>
<p >Connects the client to the server address using the socket descriptor This enables the two to communicate and exchange data</p>
<p >Communication between client and server</p>
<p >The bzero() function erases the data in the n bytes of the memory starting at the location pointed to, by writing zeros (bytes containing '\0') to that area. The variables are emptied and then ready for use</p>
<p >The fork function call is used to create a child and parent process which run and execute code simultaneously</p>
<p >The child process is used to send data and after doing so sleeps for 5 seconds to wait for the parent to receive data</p>
<p >The parent process is used to receive data and after doing so sleeps for 5 seconds to wait for the child to send data</p>
<p >The server and client can communicate indefinitely till one of them exits the connection</p>
<p >Since the exchange of information between the server and client takes place simultaneously this represents FULL DUPLEX COMMUNICATION</p>
<p >Value of 0 is for child process</p>
<p >Parent Process</p>
<p >Close Socket</p>
<div class="fragment"><div class="line"><span class="lineno"> 50</span>{<span class="comment"></span></div>
<div class="line"><span class="lineno"> 51</span><span class="comment"> /** Variable Declarations */</span></div>
<div class="line"><span class="lineno"> 52</span> uint32_t</div>
@ -371,7 +371,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_d20ad0b8de644c123692ba5582cc7a7b.html">client_server</a></li><li class="navelem"><a class="el" href="../../d1/d98/tcp__full__duplex__client_8c.html">tcp_full_duplex_client.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<svg width="118pt" height="27pt"

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: cluster Struct Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -119,7 +119,7 @@ size_t&#160;</td><td class="memItemRight" valign="bottom"><b>count</b></td></tr>
<tr class="separator:aaacf0562ee2d9e8866c66ddaa6527c2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>this class stores the coordinates of centroid of all the points in that cluster it also stores the count of observations belonging to this cluster </p>
<div class="textblock"><p >this class stores the coordinates of centroid of all the points in that cluster it also stores the count of observations belonging to this cluster </p>
</div><hr/>The documentation for this struct was generated from the following file:<ul>
<li>machine_learning/<a class="el" href="../../d6/d76/k__means__clustering_8c.html">k_means_clustering.c</a></li>
</ul>
@ -129,7 +129,7 @@ size_t&#160;</td><td class="memItemRight" valign="bottom"><b>count</b></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d1/d99/structcluster.html">cluster</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: data_structures/linked_list/doubly_linked_list.c Pages: 1 -->
<svg width="131pt" height="93pt"

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: StockSpanner Struct Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -130,7 +130,7 @@ int&#160;</td><td class="memItemRight" valign="bottom"><b>index</b></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d1/dac/struct_stock_spanner.html">StockSpanner</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: conversions/decimal_to_any_base.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -121,26 +121,26 @@ Include dependency graph for decimal_to_any_base.c:</div>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ae071f62d704823751bf9a085bf0a1bd7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/dba/decimal__to__any__base_8c.html#ae071f62d704823751bf9a085bf0a1bd7">isbad_alphabet</a> (const char *alphabet)</td></tr>
<tr class="memdesc:ae071f62d704823751bf9a085bf0a1bd7"><td class="mdescLeft">&#160;</td><td class="mdescRight">for IO operations <br /></td></tr>
<tr class="memdesc:ae071f62d704823751bf9a085bf0a1bd7"><td class="mdescLeft">&#160;</td><td class="mdescRight">for IO operations <a href="../../d1/dba/decimal__to__any__base_8c.html#ae071f62d704823751bf9a085bf0a1bd7">More...</a><br /></td></tr>
<tr class="separator:ae071f62d704823751bf9a085bf0a1bd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a899b3a7e0f1fac5a465eac0d4b10d711"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/dba/decimal__to__any__base_8c.html#a899b3a7e0f1fac5a465eac0d4b10d711">converted_len</a> (uint64_t nb, short base)</td></tr>
<tr class="memdesc:a899b3a7e0f1fac5a465eac0d4b10d711"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the final length of the converted number. <br /></td></tr>
<tr class="memdesc:a899b3a7e0f1fac5a465eac0d4b10d711"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the final length of the converted number. <a href="../../d1/dba/decimal__to__any__base_8c.html#a899b3a7e0f1fac5a465eac0d4b10d711">More...</a><br /></td></tr>
<tr class="separator:a899b3a7e0f1fac5a465eac0d4b10d711"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0c5ccb926a23bc0050f213ba3408e18d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/dba/decimal__to__any__base_8c.html#a0c5ccb926a23bc0050f213ba3408e18d">convertion</a> (uint64_t nb, const char *alphabet, short base, char *converted)</td></tr>
<tr class="memdesc:a0c5ccb926a23bc0050f213ba3408e18d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert positive decimal integer into anybase recursively. <br /></td></tr>
<tr class="memdesc:a0c5ccb926a23bc0050f213ba3408e18d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert positive decimal integer into anybase recursively. <a href="../../d1/dba/decimal__to__any__base_8c.html#a0c5ccb926a23bc0050f213ba3408e18d">More...</a><br /></td></tr>
<tr class="separator:a0c5ccb926a23bc0050f213ba3408e18d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e4a7cfc97a528faa4d6e5741461109c"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/dba/decimal__to__any__base_8c.html#a3e4a7cfc97a528faa4d6e5741461109c">decimal_to_anybase</a> (uint64_t nb, const char *alphabet)</td></tr>
<tr class="memdesc:a3e4a7cfc97a528faa4d6e5741461109c"><td class="mdescLeft">&#160;</td><td class="mdescRight">decimal_to_anybase ensure the validity of the parameters and convert any unsigned integers into any ascii positive base <br /></td></tr>
<tr class="memdesc:a3e4a7cfc97a528faa4d6e5741461109c"><td class="mdescLeft">&#160;</td><td class="mdescRight">decimal_to_anybase ensure the validity of the parameters and convert any unsigned integers into any ascii positive base <a href="../../d1/dba/decimal__to__any__base_8c.html#a3e4a7cfc97a528faa4d6e5741461109c">More...</a><br /></td></tr>
<tr class="separator:a3e4a7cfc97a528faa4d6e5741461109c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8dca7b867074164d5f45b0f3851269d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/dba/decimal__to__any__base_8c.html#aa8dca7b867074164d5f45b0f3851269d">test</a> ()</td></tr>
<tr class="memdesc:aa8dca7b867074164d5f45b0f3851269d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self-test implementations. <br /></td></tr>
<tr class="memdesc:aa8dca7b867074164d5f45b0f3851269d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self-test implementations. <a href="../../d1/dba/decimal__to__any__base_8c.html#aa8dca7b867074164d5f45b0f3851269d">More...</a><br /></td></tr>
<tr class="separator:aa8dca7b867074164d5f45b0f3851269d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/dba/decimal__to__any__base_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <br /></td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <a href="../../d1/dba/decimal__to__any__base_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">More...</a><br /></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a href="http://codeofthedamned.com/index.php/number-base-conversion" target="_blank">Decimal to any-base</a> is a C function wich convert positive decimal integer to any positive ascii base with the base's alphabet given in input and return it in a dynamically allocated string(recursive way) </p>
<div class="textblock"><p ><a href="http://codeofthedamned.com/index.php/number-base-conversion" target="_blank">Decimal to any-base</a> is a C function wich convert positive decimal integer to any positive ascii base with the base's alphabet given in input and return it in a dynamically allocated string(recursive way) </p>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/jucollet972" target="_blank">jucollet972</a> </dd></dl>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="a899b3a7e0f1fac5a465eac0d4b10d711" name="a899b3a7e0f1fac5a465eac0d4b10d711"></a>
@ -341,8 +341,8 @@ Here is the call graph for this function:</div>
</div><div class="memdoc">
<p>for IO operations </p>
<p>for strchr and strlen for CPU arch's optimized int types for boolean types for assert for malloc and free</p>
<p>Checking if alphabet is valid </p><dl class="params"><dt>Parameters</dt><dd>
<p >for strchr and strlen for CPU arch's optimized int types for boolean types for assert for malloc and free</p>
<p >Checking if alphabet is valid </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>alphabet inputed by user </td></tr>
</table>
@ -507,7 +507,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_9babc524d57e25f3d9f4179cabc3599e.html">conversions</a></li><li class="navelem"><a class="el" href="../../d1/dba/decimal__to__any__base_8c.html">decimal_to_any_base.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: convertion Pages: 1 -->
<svg width="70pt" height="45pt"

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: decimal_to_anybase Pages: 1 -->
<svg width="232pt" height="137pt"

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: converted_len Pages: 1 -->
<svg width="85pt" height="45pt"

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: test Pages: 1 -->
<svg width="301pt" height="137pt"

Before

Width:  |  Height:  |  Size: 4.5 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<svg width="375pt" height="137pt"

Before

Width:  |  Height:  |  Size: 5.2 KiB

After

Width:  |  Height:  |  Size: 5.2 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: data_structures/queue/include.h Source File</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -138,7 +138,7 @@ $(document).ready(function(){initNavTree('d1/dbe/include_8h_source.html','../../
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_2e746e9d06bf2d8ff842208bcc6ebcfc.html">data_structures</a></li><li class="navelem"><a class="el" href="../../dir_fb09f588f9daea69f78b63a0310e98cc.html">queue</a></li><li class="navelem"><b>include.h</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: numerical_methods/ode_midpoint_euler.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -127,23 +127,23 @@ Macros</h2></td></tr>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a97075291390a68c262ed66e157a57eb4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/dc2/ode__midpoint__euler_8c.html#a97075291390a68c262ed66e157a57eb4">problem</a> (const double *x, double *y, double *dy)</td></tr>
<tr class="memdesc:a97075291390a68c262ed66e157a57eb4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Problem statement for a system with first-order differential equations. <br /></td></tr>
<tr class="memdesc:a97075291390a68c262ed66e157a57eb4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Problem statement for a system with first-order differential equations. <a href="../../d1/dc2/ode__midpoint__euler_8c.html#a97075291390a68c262ed66e157a57eb4">More...</a><br /></td></tr>
<tr class="separator:a97075291390a68c262ed66e157a57eb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8caee977b26888d34040b122e0e28e3a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/dc2/ode__midpoint__euler_8c.html#a8caee977b26888d34040b122e0e28e3a">exact_solution</a> (const double *x, double *y)</td></tr>
<tr class="memdesc:a8caee977b26888d34040b122e0e28e3a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exact solution of the problem. <br /></td></tr>
<tr class="memdesc:a8caee977b26888d34040b122e0e28e3a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exact solution of the problem. <a href="../../d1/dc2/ode__midpoint__euler_8c.html#a8caee977b26888d34040b122e0e28e3a">More...</a><br /></td></tr>
<tr class="separator:a8caee977b26888d34040b122e0e28e3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:affe6cc2ab040b94a29e6c41782f72d51"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/dc2/ode__midpoint__euler_8c.html#affe6cc2ab040b94a29e6c41782f72d51">midpoint_euler_step</a> (double dx, double *x, double *y, double *dy)</td></tr>
<tr class="memdesc:affe6cc2ab040b94a29e6c41782f72d51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute next step approximation using the midpoint-Euler method. <br /></td></tr>
<tr class="memdesc:affe6cc2ab040b94a29e6c41782f72d51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute next step approximation using the midpoint-Euler method. <a href="../../d1/dc2/ode__midpoint__euler_8c.html#affe6cc2ab040b94a29e6c41782f72d51">More...</a><br /></td></tr>
<tr class="separator:affe6cc2ab040b94a29e6c41782f72d51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a148003d8b261d040c1c41e73b40af1dd"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/dc2/ode__midpoint__euler_8c.html#a148003d8b261d040c1c41e73b40af1dd">midpoint_euler</a> (double dx, double x0, double x_max, double *y, char save_to_file)</td></tr>
<tr class="memdesc:a148003d8b261d040c1c41e73b40af1dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute approximation using the midpoint-Euler method in the given limits. <br /></td></tr>
<tr class="memdesc:a148003d8b261d040c1c41e73b40af1dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute approximation using the midpoint-Euler method in the given limits. <a href="../../d1/dc2/ode__midpoint__euler_8c.html#a148003d8b261d040c1c41e73b40af1dd">More...</a><br /></td></tr>
<tr class="separator:a148003d8b261d040c1c41e73b40af1dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ddf1224851353fc92bfbff6f499fa97"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/dc2/ode__midpoint__euler_8c.html#a0ddf1224851353fc92bfbff6f499fa97">main</a> (int argc, char *argv[])</td></tr>
<tr class="memdesc:a0ddf1224851353fc92bfbff6f499fa97"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main Function. <br /></td></tr>
<tr class="memdesc:a0ddf1224851353fc92bfbff6f499fa97"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main Function. <a href="../../d1/dc2/ode__midpoint__euler_8c.html#a0ddf1224851353fc92bfbff6f499fa97">More...</a><br /></td></tr>
<tr class="separator:a0ddf1224851353fc92bfbff6f499fa97"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Solve a multivariable first order <a href="https://en.wikipedia.org/wiki/Ordinary_differential_equation" target="_blank">ordinary differential equation (ODEs)</a> using <a href="https://en.wikipedia.org/wiki/Midpoint_method" target="_blank">midpoint Euler method</a> </p>
<div class="textblock"><p >Solve a multivariable first order <a href="https://en.wikipedia.org/wiki/Ordinary_differential_equation" target="_blank">ordinary differential equation (ODEs)</a> using <a href="https://en.wikipedia.org/wiki/Midpoint_method" target="_blank">midpoint Euler method</a> </p>
<dl class="section author"><dt>Authors</dt><dd><a href="https://github.com/kvedala" target="_blank">Krishna Vedala</a> </dd></dl>
<p>The ODE being solved is: </p><p class="formulaDsp">
\begin{eqnarray*}
@ -160,7 +160,7 @@ v(x) &amp;=&amp; -\sin(x)\\
\end{eqnarray*}
</p>
<p> The computation results are stored to a text file <code>midpoint_euler.csv</code> and the exact soltuion results in <code>exact.csv</code> for comparison. <img src="https://raw.githubusercontent.com/TheAlgorithms/C/docs/images/numerical_methods/ode_midpoint_euler.svg" alt="Implementation solution" style="pointer-events: none;" class="inline"/></p>
<p>To implement <a href="https://en.wikipedia.org/wiki/Van_der_Pol_oscillator" target="_blank">Van der Pol oscillator</a>, change the <a class="el" href="../../d1/dc2/ode__midpoint__euler_8c.html#a97075291390a68c262ed66e157a57eb4" title="Problem statement for a system with first-order differential equations.">problem</a> function to: </p><div class="fragment"><div class="line"><span class="keyword">const</span> <span class="keywordtype">double</span> mu = 2.0;</div>
<p >To implement <a href="https://en.wikipedia.org/wiki/Van_der_Pol_oscillator" target="_blank">Van der Pol oscillator</a>, change the <a class="el" href="../../d1/dc2/ode__midpoint__euler_8c.html#a97075291390a68c262ed66e157a57eb4" title="Problem statement for a system with first-order differential equations.">problem</a> function to: </p><div class="fragment"><div class="line"><span class="keyword">const</span> <span class="keywordtype">double</span> mu = 2.0;</div>
<div class="line">dy[0] = y[1];</div>
<div class="line">dy[1] = mu * (1.f - y[0] * y[0]) * y[1] - y[0];</div>
</div><!-- fragment --> <dl class="section see"><dt>See also</dt><dd><a class="el" href="../../d4/d07/ode__forward__euler_8c.html" title="Solve a multivariable first order ordinary differential equation (ODEs) using forward Euler method">ode_forward_euler.c</a>, <a class="el" href="../../d4/d99/ode__semi__implicit__euler_8c.html" title="Solve a multivariable first order ordinary differential equation (ODEs) using semi implicit Euler met...">ode_semi_implicit_euler.c</a> </dd></dl>
@ -192,7 +192,7 @@ v(x) &amp;=&amp; -\sin(x)\\
</div><div class="memdoc">
<p>Exact solution of the problem. </p>
<p>Used for solution comparison.</p>
<p >Used for solution comparison.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>independent variable </td></tr>
@ -495,7 +495,7 @@ Here is the call graph for this function:</div>
</div><div class="memdoc">
<p>Problem statement for a system with first-order differential equations. </p>
<p>Updates the system differential variables. </p><dl class="section note"><dt>Note</dt><dd>This function can be updated to and ode of any order.</dd></dl>
<p >Updates the system differential variables. </p><dl class="section note"><dt>Note</dt><dd>This function can be updated to and ode of any order.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>independent variable(s) </td></tr>
@ -518,7 +518,7 @@ Here is the call graph for this function:</div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../dir_9c6faab82c22511b50177aa2e38e2780.html">numerical_methods</a></li><li class="navelem"><a class="el" href="../../d1/dc2/ode__midpoint__euler_8c.html">ode_midpoint_euler.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<svg width="389pt" height="64pt"

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: midpoint_euler Pages: 1 -->
<svg width="315pt" height="27pt"

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: midpoint_euler_step Pages: 1 -->
<svg width="199pt" height="27pt"

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C: misc/run_length_encoding.c File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@ -119,20 +119,20 @@ Include dependency graph for run_length_encoding.c:</div>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ac3cc4a63cf2a14a08e05c5537ecf59c2"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/dc7/run__length__encoding_8c.html#ac3cc4a63cf2a14a08e05c5537ecf59c2">run_length_encode</a> (char *str)</td></tr>
<tr class="memdesc:ac3cc4a63cf2a14a08e05c5537ecf59c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">for IO operations <br /></td></tr>
<tr class="memdesc:ac3cc4a63cf2a14a08e05c5537ecf59c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">for IO operations <a href="../../d1/dc7/run__length__encoding_8c.html#ac3cc4a63cf2a14a08e05c5537ecf59c2">More...</a><br /></td></tr>
<tr class="separator:ac3cc4a63cf2a14a08e05c5537ecf59c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8dca7b867074164d5f45b0f3851269d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/dc7/run__length__encoding_8c.html#aa8dca7b867074164d5f45b0f3851269d">test</a> ()</td></tr>
<tr class="memdesc:aa8dca7b867074164d5f45b0f3851269d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self-test implementations. <br /></td></tr>
<tr class="memdesc:aa8dca7b867074164d5f45b0f3851269d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self-test implementations. <a href="../../d1/dc7/run__length__encoding_8c.html#aa8dca7b867074164d5f45b0f3851269d">More...</a><br /></td></tr>
<tr class="separator:aa8dca7b867074164d5f45b0f3851269d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/dc7/run__length__encoding_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <br /></td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <a href="../../d1/dc7/run__length__encoding_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">More...</a><br /></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Encode a null terminated string using <a href="https://en.wikipedia.org/wiki/Run-length_encoding" target="_blank">Run-length encoding</a> </p>
<div class="textblock"><p >Encode a null terminated string using <a href="https://en.wikipedia.org/wiki/Run-length_encoding" target="_blank">Run-length encoding</a> </p>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/serturx/" target="_blank">serturx</a></dd></dl>
<p>Run-length encoding is a lossless compression algorithm. It works by counting the consecutive occurences symbols and encodes that series of consecutive symbols into the counted symbol and a number denoting the number of consecutive occorences.</p>
<p>For example the string "AAAABBCCD" gets encoded into "4A2B2C1D" </p>
<p >For example the string "AAAABBCCD" gets encoded into "4A2B2C1D" </p>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">&#9670;&#160;</a></span>main()</h2>
@ -184,8 +184,8 @@ Here is the call graph for this function:</div>
</div><div class="memdoc">
<p>for IO operations </p>
<p>for string functions for malloc/free for assert</p>
<p>Encodes a null-terminated string using run-length encoding </p><dl class="params"><dt>Parameters</dt><dd>
<p >for string functions for malloc/free for assert</p>
<p >Encodes a null-terminated string using run-length encoding </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">str</td><td>String to encode </td></tr>
</table>
@ -290,7 +290,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_a52f4d3d586a58b02f3a4ddf0a992157.html">misc</a></li><li class="navelem"><a class="el" href="../../d1/dc7/run__length__encoding_8c.html">run_length_encoding.c</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.6 </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.5 </li>
</ul>
</div>
</body>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: test Pages: 1 -->
<svg width="178pt" height="45pt"

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: main Pages: 1 -->
<svg width="249pt" height="45pt"

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 7.0.6 (20230106.0513)
<!-- Generated by graphviz version 7.0.4 (20221203.1631)
-->
<!-- Title: project_euler/problem_401/sol1.c Pages: 1 -->
<svg width="327pt" height="93pt"

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

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