Documentation for 67e26cfbae
@@ -131,7 +131,7 @@ int8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="..
|
||||
<tr class="memdesc:a9883dfcceede9a42227d2d313ae86f85"><td class="mdescLeft"> </td><td class="mdescRight">Index of tail of the array. <br /></td></tr>
|
||||
<tr class="separator:a9883dfcceede9a42227d2d313ae86f85"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ae69a0bf6c9921b37c516c8a4d2fb904d"><td class="memItemLeft" align="right" valign="top"><a id="ae69a0bf6c9921b37c516c8a4d2fb904d"></a>
|
||||
<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array</a>< int16_t, <a class="el" href="../../d8/df0/queue__using__array_8cpp.html#a2d49e79bd164c298912db252970520d8">max_size</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#ae69a0bf6c9921b37c516c8a4d2fb904d">arr</a></td></tr>
|
||||
<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array.html">std::array</a>< int16_t, <a class="el" href="../../d8/df0/queue__using__array_8cpp.html#a2d49e79bd164c298912db252970520d8">max_size</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#ae69a0bf6c9921b37c516c8a4d2fb904d">arr</a> {}</td></tr>
|
||||
<tr class="memdesc:ae69a0bf6c9921b37c516c8a4d2fb904d"><td class="mdescLeft"> </td><td class="mdescRight">All stored data. <br /></td></tr>
|
||||
<tr class="separator:ae69a0bf6c9921b37c516c8a4d2fb904d"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
@@ -156,20 +156,20 @@ int8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="..
|
||||
<p>Delete element from back of the queue. </p>
|
||||
<p>Remove element that is located at the first of the queue.</p>
|
||||
<dl class="section return"><dt>Returns</dt><dd>data that is deleted if queue is not empty </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  {</div>
|
||||
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  int8_t d{0};</div>
|
||||
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <span class="keywordflow">if</span> (<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a> == -1) {</div>
|
||||
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nstack is empty "</span>;</div>
|
||||
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a> == <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a>) {</div>
|
||||
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  d = <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#ae69a0bf6c9921b37c516c8a4d2fb904d">arr</a>.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array/at.html">at</a>(<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a>);</div>
|
||||
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a> = <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a> = -1;</div>
|
||||
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  } <span class="keywordflow">else</span> {</div>
|
||||
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  d = <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#ae69a0bf6c9921b37c516c8a4d2fb904d">arr</a>.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array/at.html">at</a>(<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a>++);</div>
|
||||
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  }</div>
|
||||
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  </div>
|
||||
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <span class="keywordflow">return</span> d;</div>
|
||||
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> }</div>
|
||||
<div class="fragment"><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  {</div>
|
||||
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  int8_t d{0};</div>
|
||||
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  <span class="keywordflow">if</span> (<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a> == -1) {</div>
|
||||
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nstack is empty "</span>;</div>
|
||||
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a> == <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a>) {</div>
|
||||
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  d = <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#ae69a0bf6c9921b37c516c8a4d2fb904d">arr</a>.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array/at.html">at</a>(<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a>);</div>
|
||||
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a> = <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a> = -1;</div>
|
||||
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  } <span class="keywordflow">else</span> {</div>
|
||||
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  d = <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#ae69a0bf6c9921b37c516c8a4d2fb904d">arr</a>.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array/at.html">at</a>(<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a>++);</div>
|
||||
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  }</div>
|
||||
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  </div>
|
||||
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <span class="keywordflow">return</span> d;</div>
|
||||
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -196,13 +196,13 @@ Here is the call graph for this function:</div>
|
||||
|
||||
<p>Show all saved data. </p>
|
||||
<p>Utility function to show all elements in the queue. </p>
|
||||
<div class="fragment"><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  {</div>
|
||||
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  <span class="keywordflow">if</span> (<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a> == -1) {</div>
|
||||
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nStack is empty"</span>;</div>
|
||||
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  } <span class="keywordflow">else</span> {</div>
|
||||
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  <span class="keywordflow">for</span> (int16_t i{<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a>}; i <= <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a>; ++i) <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#ae69a0bf6c9921b37c516c8a4d2fb904d">arr</a>.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array/at.html">at</a>(i) << <span class="stringliteral">" "</span>;</div>
|
||||
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  }</div>
|
||||
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> }</div>
|
||||
<div class="fragment"><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  {</div>
|
||||
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  <span class="keywordflow">if</span> (<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a> == -1) {</div>
|
||||
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nStack is empty"</span>;</div>
|
||||
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  } <span class="keywordflow">else</span> {</div>
|
||||
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  <span class="keywordflow">for</span> (int16_t i{<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a>}; i <= <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a>; ++i) <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#ae69a0bf6c9921b37c516c8a4d2fb904d">arr</a>.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array/at.html">at</a>(i) << <span class="stringliteral">" "</span>;</div>
|
||||
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  }</div>
|
||||
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -236,18 +236,18 @@ Here is the call graph for this function:</div>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<div class="fragment"><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  {</div>
|
||||
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  <span class="keywordflow">if</span> (<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a> == <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#ae69a0bf6c9921b37c516c8a4d2fb904d">arr</a>.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array/size.html">size</a>() - 1) {</div>
|
||||
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nStack is full"</span>;</div>
|
||||
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a> == -1 && <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a> == -1) {</div>
|
||||
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a> = 0;</div>
|
||||
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a> = 0;</div>
|
||||
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#ae69a0bf6c9921b37c516c8a4d2fb904d">arr</a>[<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a>] = ele;</div>
|
||||
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a> < <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#ae69a0bf6c9921b37c516c8a4d2fb904d">arr</a>.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array/size.html">size</a>()) {</div>
|
||||
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  ++<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a>;</div>
|
||||
<div class="fragment"><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  {</div>
|
||||
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  <span class="keywordflow">if</span> (<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a> == <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#ae69a0bf6c9921b37c516c8a4d2fb904d">arr</a>.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array/size.html">size</a>() - 1) {</div>
|
||||
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nStack is full"</span>;</div>
|
||||
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a> == -1 && <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a> == -1) {</div>
|
||||
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">front</a> = 0;</div>
|
||||
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a> = 0;</div>
|
||||
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#ae69a0bf6c9921b37c516c8a4d2fb904d">arr</a>[<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a>] = ele;</div>
|
||||
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  }</div>
|
||||
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> }</div>
|
||||
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a> < <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#ae69a0bf6c9921b37c516c8a4d2fb904d">arr</a>.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/array/size.html">size</a>()) {</div>
|
||||
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  ++<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a>;</div>
|
||||
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  <a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#ae69a0bf6c9921b37c516c8a4d2fb904d">arr</a>[<a class="code" href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">rear</a>] = ele;</div>
|
||||
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  }</div>
|
||||
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -262,12 +262,12 @@ Here is the call graph for this function:</div>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
</div><!-- doc-content -->
|
||||
<div class="ttc" id="aclassdata__structures_1_1queue__using__array_1_1_queue___array_html_a2f676f2f249eb36dfd49711a03e9e67e"><div class="ttname"><a href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">data_structures::queue_using_array::Queue_Array::front</a></div><div class="ttdeci">int8_t front</div><div class="ttdoc">Index of head of the array.</div><div class="ttdef"><b>Definition:</b> queue_using_array.cpp:46</div></div>
|
||||
<div class="ttc" id="aclassdata__structures_1_1queue__using__array_1_1_queue___array_html_a2f676f2f249eb36dfd49711a03e9e67e"><div class="ttname"><a href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a2f676f2f249eb36dfd49711a03e9e67e">data_structures::queue_using_array::Queue_Array::front</a></div><div class="ttdeci">int8_t front</div><div class="ttdoc">Index of head of the array.</div><div class="ttdef"><b>Definition:</b> queue_using_array.cpp:49</div></div>
|
||||
<div class="ttc" id="asize_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/array/size.html">std::array::size</a></div><div class="ttdeci">T size(T... args)</div></div>
|
||||
<div class="ttc" id="aat_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/array/at.html">std::array::at</a></div><div class="ttdeci">T at(T... args)</div></div>
|
||||
<div class="ttc" id="abasic_ostream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div></div>
|
||||
<div class="ttc" id="aclassdata__structures_1_1queue__using__array_1_1_queue___array_html_a9883dfcceede9a42227d2d313ae86f85"><div class="ttname"><a href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">data_structures::queue_using_array::Queue_Array::rear</a></div><div class="ttdeci">int8_t rear</div><div class="ttdoc">Index of tail of the array.</div><div class="ttdef"><b>Definition:</b> queue_using_array.cpp:47</div></div>
|
||||
<div class="ttc" id="aclassdata__structures_1_1queue__using__array_1_1_queue___array_html_ae69a0bf6c9921b37c516c8a4d2fb904d"><div class="ttname"><a href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#ae69a0bf6c9921b37c516c8a4d2fb904d">data_structures::queue_using_array::Queue_Array::arr</a></div><div class="ttdeci">std::array< int16_t, max_size > arr</div><div class="ttdoc">All stored data.</div><div class="ttdef"><b>Definition:</b> queue_using_array.cpp:48</div></div>
|
||||
<div class="ttc" id="aclassdata__structures_1_1queue__using__array_1_1_queue___array_html_a9883dfcceede9a42227d2d313ae86f85"><div class="ttname"><a href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#a9883dfcceede9a42227d2d313ae86f85">data_structures::queue_using_array::Queue_Array::rear</a></div><div class="ttdeci">int8_t rear</div><div class="ttdoc">Index of tail of the array.</div><div class="ttdef"><b>Definition:</b> queue_using_array.cpp:50</div></div>
|
||||
<div class="ttc" id="aclassdata__structures_1_1queue__using__array_1_1_queue___array_html_ae69a0bf6c9921b37c516c8a4d2fb904d"><div class="ttname"><a href="../../d6/d04/classdata__structures_1_1queue__using__array_1_1_queue___array.html#ae69a0bf6c9921b37c516c8a4d2fb904d">data_structures::queue_using_array::Queue_Array::arr</a></div><div class="ttdeci">std::array< int16_t, max_size > arr</div><div class="ttdoc">All stored data.</div><div class="ttdef"><b>Definition:</b> queue_using_array.cpp:51</div></div>
|
||||
<!-- start footer part -->
|
||||
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||
<ul>
|
||||
|
||||
@@ -463,7 +463,7 @@ Here is the call graph for this function:</div>
|
||||
</div>
|
||||
</div><!-- contents -->
|
||||
</div><!-- doc-content -->
|
||||
<div class="ttc" id="afibonacci__sum_8cpp_html_a7cf5feaf168b88e74544da59ed830311"><div class="ttname"><a href="../../de/dc3/fibonacci__sum_8cpp.html#a7cf5feaf168b88e74544da59ed830311">math::fibonacci_sum::power</a></div><div class="ttdeci">math::fibonacci_sum::matrix power(math::fibonacci_sum::matrix T, uint64_t ex)</div><div class="ttdef"><b>Definition:</b> fibonacci_sum.cpp:56</div></div>
|
||||
<div class="ttc" id="afibonacci__sum_8cpp_html_a7cf5feaf168b88e74544da59ed830311"><div class="ttname"><a href="../../de/dc3/fibonacci__sum_8cpp.html#a7cf5feaf168b88e74544da59ed830311">math::fibonacci_sum::power</a></div><div class="ttdeci">math::fibonacci_sum::matrix power(math::fibonacci_sum::matrix T, uint64_t ex)</div><div class="ttdef"><b>Definition:</b> fibonacci_sum.cpp:57</div></div>
|
||||
<div class="ttc" id="auniform_int_distribution_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/numeric/random/uniform_int_distribution.html">std::uniform_int_distribution</a></div></div>
|
||||
<div class="ttc" id="amiller__rabin_8cpp_html_a901288288ef5ebe8e97414cc30797cce"><div class="ttname"><a href="../../d6/d42/miller__rabin_8cpp.html#a901288288ef5ebe8e97414cc30797cce">miller_rabin_primality_test</a></div><div class="ttdeci">bool miller_rabin_primality_test(T num, T repeats)</div><div class="ttdef"><b>Definition:</b> miller_rabin.cpp:125</div></div>
|
||||
<div class="ttc" id="avector_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a></div><div class="ttdoc">STL class.</div></div>
|
||||
@@ -478,7 +478,7 @@ Here is the call graph for this function:</div>
|
||||
<div class="ttc" id="abegin_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector/begin.html">std::vector::cbegin</a></div><div class="ttdeci">T cbegin(T... args)</div></div>
|
||||
<div class="ttc" id="aend_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector/end.html">std::vector::cend</a></div><div class="ttdeci">T cend(T... args)</div></div>
|
||||
<div class="ttc" id="amiller__rabin_8cpp_html_a88ec9ad42717780d6caaff9d3d6977f9"><div class="ttname"><a href="../../d6/d42/miller__rabin_8cpp.html#a88ec9ad42717780d6caaff9d3d6977f9">tests</a></div><div class="ttdeci">void tests()</div><div class="ttdef"><b>Definition:</b> miller_rabin.cpp:157</div></div>
|
||||
<div class="ttc" id="afibonacci__sum_8cpp_html_aadb40ac4c74a7efc0680b83eeee138aa"><div class="ttname"><a href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">math::fibonacci_sum::result</a></div><div class="ttdeci">uint64_t result(uint64_t n)</div><div class="ttdef"><b>Definition:</b> fibonacci_sum.cpp:75</div></div>
|
||||
<div class="ttc" id="afibonacci__sum_8cpp_html_aadb40ac4c74a7efc0680b83eeee138aa"><div class="ttname"><a href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">math::fibonacci_sum::result</a></div><div class="ttdeci">uint64_t result(uint64_t n)</div><div class="ttdef"><b>Definition:</b> fibonacci_sum.cpp:76</div></div>
|
||||
<!-- start footer part -->
|
||||
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||
<ul>
|
||||
|
||||
@@ -312,7 +312,7 @@ Here is the call graph for this function:</div>
|
||||
<div class="ttc" id="aendl_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a></div><div class="ttdeci">T endl(T... args)</div></div>
|
||||
<div class="ttc" id="afixed_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/manip/fixed.html">std::scientific</a></div><div class="ttdeci">T scientific(T... args)</div></div>
|
||||
<div class="ttc" id="abasic_istream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a></div></div>
|
||||
<div class="ttc" id="afibonacci__sum_8cpp_html_aadb40ac4c74a7efc0680b83eeee138aa"><div class="ttname"><a href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">math::fibonacci_sum::result</a></div><div class="ttdeci">uint64_t result(uint64_t n)</div><div class="ttdef"><b>Definition:</b> fibonacci_sum.cpp:75</div></div>
|
||||
<div class="ttc" id="afibonacci__sum_8cpp_html_aadb40ac4c74a7efc0680b83eeee138aa"><div class="ttname"><a href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">math::fibonacci_sum::result</a></div><div class="ttdeci">uint64_t result(uint64_t n)</div><div class="ttdef"><b>Definition:</b> fibonacci_sum.cpp:76</div></div>
|
||||
<!-- start footer part -->
|
||||
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||
<ul>
|
||||
|
||||
397
d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html
Normal file
@@ -0,0 +1,397 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.20"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>Algorithms_in_C++: math::ncr_modulo_p::NCRModuloP Class Reference</title>
|
||||
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="../../jquery.js"></script>
|
||||
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="../../resize.js"></script>
|
||||
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||
<script type="text/javascript" src="../../navtree.js"></script>
|
||||
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="../../search/search.js"></script>
|
||||
<script type="text/x-mathjax-config">
|
||||
MathJax.Hub.Config({
|
||||
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
|
||||
jax: ["input/TeX","output/HTML-CSS"],
|
||||
});
|
||||
</script>
|
||||
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
|
||||
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">Algorithms_in_C++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
</div>
|
||||
<div id="projectbrief">Set of algorithms implemented in C++.</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.20 -->
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
|
||||
/* @license-end */
|
||||
</script>
|
||||
<script type="text/javascript" src="../../menudata.js"></script>
|
||||
<script type="text/javascript" src="../../menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
$(function() {
|
||||
initMenu('../../',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
/* @license-end */</script>
|
||||
<div id="main-nav"></div>
|
||||
</div><!-- top -->
|
||||
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||
<div id="nav-tree">
|
||||
<div id="nav-tree-contents">
|
||||
<div id="nav-sync" class="sync"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="splitbar" style="-moz-user-select:none;"
|
||||
class="ui-resizable-handle">
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
$(document).ready(function(){initNavTree('d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
<div id="doc-content">
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#pub-methods">Public Member Functions</a> |
|
||||
<a href="#pri-attribs">Private Attributes</a> |
|
||||
<a href="../../de/d1e/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p-members.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">math::ncr_modulo_p::NCRModuloP Class Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>Class which contains all methods required for calculating nCr mod p.
|
||||
<a href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#details">More...</a></p>
|
||||
<div class="dynheader">
|
||||
Collaboration diagram for math::ncr_modulo_p::NCRModuloP:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../db/d66/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p__coll__graph.svg" width="166" height="231"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
<center><span class="legend">[<a target="top" href="../../graph_legend.html">legend</a>]</span></center></div>
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
||||
Public Member Functions</h2></td></tr>
|
||||
<tr class="memitem:af3d41271912f9fa50b774c96c51874b9"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#af3d41271912f9fa50b774c96c51874b9">NCRModuloP</a> (const uint64_t &size, const uint64_t &mod)</td></tr>
|
||||
<tr class="memdesc:af3d41271912f9fa50b774c96c51874b9"><td class="mdescLeft"> </td><td class="mdescRight">the p from (nCr % p) <a href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#af3d41271912f9fa50b774c96c51874b9">More...</a><br /></td></tr>
|
||||
<tr class="separator:af3d41271912f9fa50b774c96c51874b9"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:afde201f4687740454302c444f507a926"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#afde201f4687740454302c444f507a926">gcdExtended</a> (const uint64_t &a, const uint64_t &b, int64_t *x, int64_t *y)</td></tr>
|
||||
<tr class="separator:afde201f4687740454302c444f507a926"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a0431ec5c876e1154d8e1e5f89e1ab34a"><td class="memItemLeft" align="right" valign="top">int64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a0431ec5c876e1154d8e1e5f89e1ab34a">modInverse</a> (const uint64_t &a, const uint64_t &m)</td></tr>
|
||||
<tr class="separator:a0431ec5c876e1154d8e1e5f89e1ab34a"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a6b95277f5f527beacc8d0f3bc91fcd08"><td class="memItemLeft" align="right" valign="top">int64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a6b95277f5f527beacc8d0f3bc91fcd08">ncr</a> (const uint64_t &n, const uint64_t &r, const uint64_t &<a class="el" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a57c168cd6eb85718eab97da658a698ad">p</a>)</td></tr>
|
||||
<tr class="separator:a6b95277f5f527beacc8d0f3bc91fcd08"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
|
||||
Private Attributes</h2></td></tr>
|
||||
<tr class="memitem:aed5b4a9e4fd57fe23812293d4a0f30c1"><td class="memItemLeft" align="right" valign="top"><a id="aed5b4a9e4fd57fe23812293d4a0f30c1"></a>
|
||||
<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< uint64_t > </td><td class="memItemRight" valign="bottom"><b>fac</b> {}</td></tr>
|
||||
<tr class="separator:aed5b4a9e4fd57fe23812293d4a0f30c1"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a57c168cd6eb85718eab97da658a698ad"><td class="memItemLeft" align="right" valign="top"><a id="a57c168cd6eb85718eab97da658a698ad"></a>
|
||||
uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a57c168cd6eb85718eab97da658a698ad">p</a> = 0</td></tr>
|
||||
<tr class="memdesc:a57c168cd6eb85718eab97da658a698ad"><td class="mdescLeft"> </td><td class="mdescRight">stores precomputed factorial(i) % p value <br /></td></tr>
|
||||
<tr class="separator:a57c168cd6eb85718eab97da658a698ad"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>Class which contains all methods required for calculating nCr mod p. </p>
|
||||
</div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
||||
<a id="af3d41271912f9fa50b774c96c51874b9"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#af3d41271912f9fa50b774c96c51874b9">◆ </a></span>NCRModuloP()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="mlabels">
|
||||
<tr>
|
||||
<td class="mlabels-left">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">math::ncr_modulo_p::NCRModuloP::NCRModuloP </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">const uint64_t & </td>
|
||||
<td class="paramname"><em>size</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const uint64_t & </td>
|
||||
<td class="paramname"><em>mod</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="mlabels-right">
|
||||
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>the p from (nCr % p) </p>
|
||||
<p>Constructor which precomputes the values of n! % mod from n=0 to size and stores them in vector 'fac' @params[in] the numbers 'size', 'mod' </p>
|
||||
<div class="fragment"><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>  {</div>
|
||||
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  <a class="code" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a57c168cd6eb85718eab97da658a698ad">p</a> = mod;</div>
|
||||
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>  fac = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<uint64_t></a>(size);</div>
|
||||
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  fac[0] = 1;</div>
|
||||
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 1; i <= size; i++) {</div>
|
||||
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  fac[i] = (fac[i - 1] * i) % <a class="code" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a57c168cd6eb85718eab97da658a698ad">p</a>;</div>
|
||||
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  }</div>
|
||||
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  }</div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
<h2 class="groupheader">Member Function Documentation</h2>
|
||||
<a id="afde201f4687740454302c444f507a926"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#afde201f4687740454302c444f507a926">◆ </a></span>gcdExtended()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="mlabels">
|
||||
<tr>
|
||||
<td class="mlabels-left">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">uint64_t math::ncr_modulo_p::NCRModuloP::gcdExtended </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">const uint64_t & </td>
|
||||
<td class="paramname"><em>a</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const uint64_t & </td>
|
||||
<td class="paramname"><em>b</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int64_t * </td>
|
||||
<td class="paramname"><em>x</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int64_t * </td>
|
||||
<td class="paramname"><em>y</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="mlabels-right">
|
||||
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Finds the value of x, y such that a*x + b*y = gcd(a,b)</p>
|
||||
<p>@params[in] the numbers 'a', 'b' and address of 'x' and 'y' from above equation </p><dl class="section return"><dt>Returns</dt><dd>the gcd of a and b </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  {</div>
|
||||
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  <span class="keywordflow">if</span> (a == 0) {</div>
|
||||
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  *x = 0, *y = 1;</div>
|
||||
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="keywordflow">return</span> b;</div>
|
||||
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  }</div>
|
||||
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  </div>
|
||||
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  int64_t x1 = 0, y1 = 0;</div>
|
||||
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  uint64_t <a class="code" href="../../d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e">gcd</a> = <a class="code" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#afde201f4687740454302c444f507a926">gcdExtended</a>(b % a, a, &x1, &y1);</div>
|
||||
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  </div>
|
||||
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  *x = y1 - (b / a) * x1;</div>
|
||||
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  *y = x1;</div>
|
||||
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  <span class="keywordflow">return</span> <a class="code" href="../../d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e">gcd</a>;</div>
|
||||
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p_afde201f4687740454302c444f507a926_cgraph.svg" width="296" height="52"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a0431ec5c876e1154d8e1e5f89e1ab34a"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a0431ec5c876e1154d8e1e5f89e1ab34a">◆ </a></span>modInverse()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="mlabels">
|
||||
<tr>
|
||||
<td class="mlabels-left">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">int64_t math::ncr_modulo_p::NCRModuloP::modInverse </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">const uint64_t & </td>
|
||||
<td class="paramname"><em>a</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const uint64_t & </td>
|
||||
<td class="paramname"><em>m</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="mlabels-right">
|
||||
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Find modular inverse of a with m i.e. a number x such that (a*x)m = 1</p>
|
||||
<p>@params[in] the numbers 'a' and 'm' from above equation </p><dl class="section return"><dt>Returns</dt><dd>the modular inverse of a </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  {</div>
|
||||
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  int64_t x = 0, y = 0;</div>
|
||||
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  uint64_t g = <a class="code" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#afde201f4687740454302c444f507a926">gcdExtended</a>(a, m, &x, &y);</div>
|
||||
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <span class="keywordflow">if</span> (g != 1) { <span class="comment">// modular inverse doesn't exist</span></div>
|
||||
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <span class="keywordflow">return</span> -1;</div>
|
||||
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  } <span class="keywordflow">else</span> {</div>
|
||||
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  int64_t res = ((x + m) % m);</div>
|
||||
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  <span class="keywordflow">return</span> res;</div>
|
||||
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  }</div>
|
||||
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p_a0431ec5c876e1154d8e1e5f89e1ab34a_cgraph.svg" width="531" height="52"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a6b95277f5f527beacc8d0f3bc91fcd08"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a6b95277f5f527beacc8d0f3bc91fcd08">◆ </a></span>ncr()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="mlabels">
|
||||
<tr>
|
||||
<td class="mlabels-left">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">int64_t math::ncr_modulo_p::NCRModuloP::ncr </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">const uint64_t & </td>
|
||||
<td class="paramname"><em>n</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const uint64_t & </td>
|
||||
<td class="paramname"><em>r</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const uint64_t & </td>
|
||||
<td class="paramname"><em>p</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="mlabels-right">
|
||||
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Find nCr % p</p>
|
||||
<p>@params[in] the numbers 'n', 'r' and 'p' </p><dl class="section return"><dt>Returns</dt><dd>the value nCr % p </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  {</div>
|
||||
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <span class="comment">// Base cases</span></div>
|
||||
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  <span class="keywordflow">if</span> (r > n) {</div>
|
||||
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  }</div>
|
||||
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  <span class="keywordflow">if</span> (r == 1) {</div>
|
||||
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  <span class="keywordflow">return</span> n % <a class="code" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a57c168cd6eb85718eab97da658a698ad">p</a>;</div>
|
||||
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  }</div>
|
||||
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  <span class="keywordflow">if</span> (r == 0 || r == n) {</div>
|
||||
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <span class="keywordflow">return</span> 1;</div>
|
||||
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  }</div>
|
||||
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <span class="comment">// fac is a global array with fac[r] = (r! % p)</span></div>
|
||||
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  int64_t denominator = <a class="code" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a0431ec5c876e1154d8e1e5f89e1ab34a">modInverse</a>(fac[r], <a class="code" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a57c168cd6eb85718eab97da658a698ad">p</a>);</div>
|
||||
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  <span class="keywordflow">if</span> (denominator < 0) { <span class="comment">// modular inverse doesn't exist</span></div>
|
||||
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  <span class="keywordflow">return</span> -1;</div>
|
||||
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  }</div>
|
||||
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  denominator = (denominator * <a class="code" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a0431ec5c876e1154d8e1e5f89e1ab34a">modInverse</a>(fac[n - r], <a class="code" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a57c168cd6eb85718eab97da658a698ad">p</a>)) % <a class="code" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a57c168cd6eb85718eab97da658a698ad">p</a>;</div>
|
||||
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  <span class="keywordflow">if</span> (denominator < 0) { <span class="comment">// modular inverse doesn't exist</span></div>
|
||||
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <span class="keywordflow">return</span> -1;</div>
|
||||
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  }</div>
|
||||
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  <span class="keywordflow">return</span> (fac[n] * denominator) % <a class="code" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a57c168cd6eb85718eab97da658a698ad">p</a>;</div>
|
||||
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p_a6b95277f5f527beacc8d0f3bc91fcd08_cgraph.svg" width="100%" height="300"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<hr/>The documentation for this class was generated from the following file:<ul>
|
||||
<li>math/<a class="el" href="../../de/dab/ncr__modulo__p_8cpp.html">ncr_modulo_p.cpp</a></li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
</div><!-- doc-content -->
|
||||
<div class="ttc" id="agcd__iterative__euclidean_8cpp_html_ae48807fa2b7000afae599e67f327545e"><div class="ttname"><a href="../../d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e">gcd</a></div><div class="ttdeci">int gcd(int num1, int num2)</div><div class="ttdef"><b>Definition:</b> gcd_iterative_euclidean.cpp:15</div></div>
|
||||
<div class="ttc" id="avector_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector< uint64_t ></a></div></div>
|
||||
<div class="ttc" id="aclassmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p_html_a57c168cd6eb85718eab97da658a698ad"><div class="ttname"><a href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a57c168cd6eb85718eab97da658a698ad">math::ncr_modulo_p::NCRModuloP::p</a></div><div class="ttdeci">uint64_t p</div><div class="ttdoc">stores precomputed factorial(i) % p value</div><div class="ttdef"><b>Definition:</b> ncr_modulo_p.cpp:34</div></div>
|
||||
<div class="ttc" id="aclassmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p_html_a0431ec5c876e1154d8e1e5f89e1ab34a"><div class="ttname"><a href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a0431ec5c876e1154d8e1e5f89e1ab34a">math::ncr_modulo_p::NCRModuloP::modInverse</a></div><div class="ttdeci">int64_t modInverse(const uint64_t &a, const uint64_t &m)</div><div class="ttdef"><b>Definition:</b> ncr_modulo_p.cpp:76</div></div>
|
||||
<div class="ttc" id="aclassmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p_html_afde201f4687740454302c444f507a926"><div class="ttname"><a href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#afde201f4687740454302c444f507a926">math::ncr_modulo_p::NCRModuloP::gcdExtended</a></div><div class="ttdeci">uint64_t gcdExtended(const uint64_t &a, const uint64_t &b, int64_t *x, int64_t *y)</div><div class="ttdef"><b>Definition:</b> ncr_modulo_p.cpp:56</div></div>
|
||||
<!-- start footer part -->
|
||||
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="../../dd/d47/namespacemath.html">math</a></li><li class="navelem"><b>ncr_modulo_p</b></li><li class="navelem"><a class="el" href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html">NCRModuloP</a></li>
|
||||
<li class="footer">Generated by <a href="http://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.8.20 </li>
|
||||
</ul>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
9
d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.js
Normal file
@@ -0,0 +1,9 @@
|
||||
var classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p =
|
||||
[
|
||||
[ "NCRModuloP", "d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#af3d41271912f9fa50b774c96c51874b9", null ],
|
||||
[ "gcdExtended", "d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#afde201f4687740454302c444f507a926", null ],
|
||||
[ "modInverse", "d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a0431ec5c876e1154d8e1e5f89e1ab34a", null ],
|
||||
[ "ncr", "d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a6b95277f5f527beacc8d0f3bc91fcd08", null ],
|
||||
[ "fac", "d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#aed5b4a9e4fd57fe23812293d4a0f30c1", null ],
|
||||
[ "p", "d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a57c168cd6eb85718eab97da658a698ad", null ]
|
||||
];
|
||||
@@ -0,0 +1,5 @@
|
||||
<map id="math::ncr_modulo_p::NCRModuloP::modInverse" name="math::ncr_modulo_p::NCRModuloP::modInverse">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,5,192,47"/>
|
||||
<area shape="rect" id="node2" href="$d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#afde201f4687740454302c444f507a926" title=" " alt="" coords="240,5,435,47"/>
|
||||
<area shape="rect" id="node3" href="$d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e" title=" " alt="" coords="483,13,525,39"/>
|
||||
</map>
|
||||
@@ -0,0 +1 @@
|
||||
e1fb048ed00e8c3654adecc462b29fc1
|
||||
@@ -0,0 +1,54 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
||||
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
|
||||
-->
|
||||
<!-- Title: math::ncr_modulo_p::NCRModuloP::modInverse Pages: 1 -->
|
||||
<svg width="398pt" height="39pt"
|
||||
viewBox="0.00 0.00 398.00 39.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 35)">
|
||||
<title>math::ncr_modulo_p::NCRModuloP::modInverse</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-35 394,-35 394,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title=" ">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-0.5 0,-30.5 140,-30.5 140,-0.5 0,-0.5"/>
|
||||
<text text-anchor="start" x="8" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::ncr_modulo_p</text>
|
||||
<text text-anchor="middle" x="70" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::NCRModuloP::modInverse</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a xlink:href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#afde201f4687740454302c444f507a926" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="176,-0.5 176,-30.5 322,-30.5 322,-0.5 176,-0.5"/>
|
||||
<text text-anchor="start" x="184" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::ncr_modulo_p</text>
|
||||
<text text-anchor="middle" x="249" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::NCRModuloP::gcdExtended</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M140.19,-15.5C148.63,-15.5 157.3,-15.5 165.9,-15.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="165.94,-19 175.94,-15.5 165.94,-12 165.94,-19"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="358,-6 358,-25 390,-25 390,-6 358,-6"/>
|
||||
<text text-anchor="middle" x="374" y="-13" font-family="Helvetica,sans-Serif" font-size="10.00">gcd</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node2->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M322.26,-15.5C331.26,-15.5 339.93,-15.5 347.49,-15.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="347.67,-19 357.67,-15.5 347.67,-12 347.67,-19"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.7 KiB |
@@ -0,0 +1,6 @@
|
||||
<map id="math::ncr_modulo_p::NCRModuloP::ncr" name="math::ncr_modulo_p::NCRModuloP::ncr">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,5,145,47"/>
|
||||
<area shape="rect" id="node2" href="$d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a0431ec5c876e1154d8e1e5f89e1ab34a" title=" " alt="" coords="193,5,380,47"/>
|
||||
<area shape="rect" id="node3" href="$d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#afde201f4687740454302c444f507a926" title=" " alt="" coords="428,5,623,47"/>
|
||||
<area shape="rect" id="node4" href="$d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e" title=" " alt="" coords="671,13,713,39"/>
|
||||
</map>
|
||||
@@ -0,0 +1 @@
|
||||
e5d1a12ad0580534755405f5b3336a69
|
||||
@@ -0,0 +1,158 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
||||
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
|
||||
-->
|
||||
<!-- Title: math::ncr_modulo_p::NCRModuloP::ncr Pages: 1 -->
|
||||
<!--zoomable 39 -->
|
||||
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
|
||||
<style type="text/css"><![CDATA[
|
||||
.edge:hover path { stroke: red; }
|
||||
.edge:hover polygon { stroke: red; fill: red; }
|
||||
]]></style>
|
||||
<script type="text/javascript"><![CDATA[
|
||||
var edges = document.getElementsByTagName('g');
|
||||
if (edges && edges.length) {
|
||||
for (var i=0;i<edges.length;i++) {
|
||||
if (edges[i].id.substr(0,4)=='edge') {
|
||||
edges[i].setAttribute('class','edge');
|
||||
}
|
||||
}
|
||||
}
|
||||
]]></script>
|
||||
<defs>
|
||||
<circle id="rim" cx="0" cy="0" r="7"/>
|
||||
<circle id="rim2" cx="0" cy="0" r="3.5"/>
|
||||
<g id="zoomPlus">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/>
|
||||
</use>
|
||||
<path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
|
||||
</g>
|
||||
<g id="zoomMin">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/>
|
||||
</use>
|
||||
<path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
|
||||
</g>
|
||||
<g id="dirArrow">
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="resetDef">
|
||||
<use xlink:href="#rim2" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/>
|
||||
</use>
|
||||
</g>
|
||||
</defs>
|
||||
|
||||
<script type="text/javascript">
|
||||
var viewWidth = 539;
|
||||
var viewHeight = 39;
|
||||
var sectionId = 'dynsection-3';
|
||||
</script>
|
||||
<script xlink:href="../../svgpan.js"/>
|
||||
<svg id="graph" class="graph">
|
||||
<g id="viewport">
|
||||
<title>math::ncr_modulo_p::NCRModuloP::ncr</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-35 535,-35 535,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title=" ">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-0.5 0,-30.5 105,-30.5 105,-0.5 0,-0.5"/>
|
||||
<text text-anchor="start" x="8" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::ncr_modulo_p</text>
|
||||
<text text-anchor="middle" x="52.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::NCRModuloP::ncr</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a xlink:href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a0431ec5c876e1154d8e1e5f89e1ab34a" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="141,-0.5 141,-30.5 281,-30.5 281,-0.5 141,-0.5"/>
|
||||
<text text-anchor="start" x="149" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::ncr_modulo_p</text>
|
||||
<text text-anchor="middle" x="211" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::NCRModuloP::modInverse</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M105.18,-15.5C113.37,-15.5 122,-15.5 130.65,-15.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="130.79,-19 140.79,-15.5 130.79,-12 130.79,-19"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#afde201f4687740454302c444f507a926" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="317,-0.5 317,-30.5 463,-30.5 463,-0.5 317,-0.5"/>
|
||||
<text text-anchor="start" x="325" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::ncr_modulo_p</text>
|
||||
<text text-anchor="middle" x="390" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::NCRModuloP::gcdExtended</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node2->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M281.19,-15.5C289.63,-15.5 298.3,-15.5 306.9,-15.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="306.94,-19 316.94,-15.5 306.94,-12 306.94,-19"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="499,-6 499,-25 531,-25 531,-6 499,-6"/>
|
||||
<text text-anchor="middle" x="515" y="-13" font-family="Helvetica,sans-Serif" font-size="10.00">gcd</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node3->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M463.26,-15.5C472.26,-15.5 480.93,-15.5 488.49,-15.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="488.67,-19 498.67,-15.5 488.67,-12 488.67,-19"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
<g id="navigator" transform="translate(0 0)" fill="#404254">
|
||||
<rect fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width=".5" x="0" y="0" width="60" height="60"/>
|
||||
<use id="zoomplus" xlink:href="#zoomPlus" x="17" y="9" onmousedown="handleZoom(evt,'in')"/>
|
||||
<use id="zoomminus" xlink:href="#zoomMin" x="42" y="9" onmousedown="handleZoom(evt,'out')"/>
|
||||
<use id="reset" xlink:href="#resetDef" x="30" y="36" onmousedown="handleReset()"/>
|
||||
<g id="arrowUp" xlink:href="#dirArrow" transform="translate(30 24)" onmousedown="handlePan(0,-1)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowUp.mouseover" end="arrowUp.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowRight" xlink:href="#dirArrow" transform="rotate(90) translate(36 -43)" onmousedown="handlePan(1,0)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowRight.mouseover" end="arrowRight.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowDown" xlink:href="#dirArrow" transform="rotate(180) translate(-30 -48)" onmousedown="handlePan(0,1)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowDown.mouseover" end="arrowDown.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowLeft" xlink:href="#dirArrow" transform="rotate(270) translate(-36 17)" onmousedown="handlePan(-1,0)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowLeft.mouseover" end="arrowLeft.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
</g>
|
||||
<svg viewBox="0 0 15 15" width="100%" height="30px" preserveAspectRatio="xMaxYMin meet">
|
||||
<g id="arrow_out" transform="scale(0.3 0.3)">
|
||||
<a xlink:href="classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p_a6b95277f5f527beacc8d0f3bc91fcd08_cgraph_org.svg" target="_base">
|
||||
<rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
|
||||
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
|
||||
<path id="arrow"
|
||||
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
|
||||
style="fill:#404040;"/>
|
||||
</a>
|
||||
</g>
|
||||
</svg>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 8.6 KiB |
@@ -0,0 +1,70 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
||||
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
|
||||
-->
|
||||
<!-- Title: math::ncr_modulo_p::NCRModuloP::ncr Pages: 1 -->
|
||||
<svg width="539pt" height="39pt"
|
||||
viewBox="0.00 0.00 539.00 39.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 35)">
|
||||
<title>math::ncr_modulo_p::NCRModuloP::ncr</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-35 535,-35 535,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title=" ">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-0.5 0,-30.5 105,-30.5 105,-0.5 0,-0.5"/>
|
||||
<text text-anchor="start" x="8" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::ncr_modulo_p</text>
|
||||
<text text-anchor="middle" x="52.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::NCRModuloP::ncr</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a xlink:href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#a0431ec5c876e1154d8e1e5f89e1ab34a" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="141,-0.5 141,-30.5 281,-30.5 281,-0.5 141,-0.5"/>
|
||||
<text text-anchor="start" x="149" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::ncr_modulo_p</text>
|
||||
<text text-anchor="middle" x="211" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::NCRModuloP::modInverse</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M105.18,-15.5C113.37,-15.5 122,-15.5 130.65,-15.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="130.79,-19 140.79,-15.5 130.79,-12 130.79,-19"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../d6/dc1/classmath_1_1ncr__modulo__p_1_1_n_c_r_modulo_p.html#afde201f4687740454302c444f507a926" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="317,-0.5 317,-30.5 463,-30.5 463,-0.5 317,-0.5"/>
|
||||
<text text-anchor="start" x="325" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::ncr_modulo_p</text>
|
||||
<text text-anchor="middle" x="390" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::NCRModuloP::gcdExtended</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node2->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M281.19,-15.5C289.63,-15.5 298.3,-15.5 306.9,-15.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="306.94,-19 316.94,-15.5 306.94,-12 306.94,-19"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="499,-6 499,-25 531,-25 531,-6 499,-6"/>
|
||||
<text text-anchor="middle" x="515" y="-13" font-family="Helvetica,sans-Serif" font-size="10.00">gcd</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node3->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M463.26,-15.5C472.26,-15.5 480.93,-15.5 488.49,-15.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="488.67,-19 498.67,-15.5 488.67,-12 488.67,-19"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.5 KiB |
@@ -0,0 +1,4 @@
|
||||
<map id="math::ncr_modulo_p::NCRModuloP::gcdExtended" name="math::ncr_modulo_p::NCRModuloP::gcdExtended">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,5,200,47"/>
|
||||
<area shape="rect" id="node2" href="$d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e" title=" " alt="" coords="248,13,291,39"/>
|
||||
</map>
|
||||
@@ -0,0 +1 @@
|
||||
eaa069eefb2747bae686cbd0113361ed
|
||||
@@ -0,0 +1,38 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
||||
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
|
||||
-->
|
||||
<!-- Title: math::ncr_modulo_p::NCRModuloP::gcdExtended Pages: 1 -->
|
||||
<svg width="222pt" height="39pt"
|
||||
viewBox="0.00 0.00 222.00 39.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 35)">
|
||||
<title>math::ncr_modulo_p::NCRModuloP::gcdExtended</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-35 218,-35 218,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title=" ">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-0.5 0,-30.5 146,-30.5 146,-0.5 0,-0.5"/>
|
||||
<text text-anchor="start" x="8" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::ncr_modulo_p</text>
|
||||
<text text-anchor="middle" x="73" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::NCRModuloP::gcdExtended</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a xlink:href="../../d4/da0/gcd__iterative__euclidean_8cpp.html#ae48807fa2b7000afae599e67f327545e" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="182,-6 182,-25 214,-25 214,-6 182,-6"/>
|
||||
<text text-anchor="middle" x="198" y="-13" font-family="Helvetica,sans-Serif" font-size="10.00">gcd</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M146.26,-15.5C155.26,-15.5 163.93,-15.5 171.49,-15.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="171.67,-19 181.67,-15.5 171.67,-12 171.67,-19"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.8 KiB |
@@ -1,11 +1,11 @@
|
||||
<map id="graph/breadth_first_search.cpp" name="graph/breadth_first_search.cpp">
|
||||
<area shape="rect" id="node1" title="Breadth First Search Algorithm (Breadth First Search)" alt="" coords="296,5,427,47"/>
|
||||
<area shape="rect" id="node1" title="Breadth First Search Algorithm (Breadth First Search)" alt="" coords="279,5,409,47"/>
|
||||
<area shape="rect" id="node2" title=" " alt="" coords="5,95,80,121"/>
|
||||
<area shape="rect" id="node3" title=" " alt="" coords="105,95,170,121"/>
|
||||
<area shape="rect" id="node4" title=" " alt="" coords="195,95,267,121"/>
|
||||
<area shape="rect" id="node5" title=" " alt="" coords="291,95,349,121"/>
|
||||
<area shape="rect" id="node6" title=" " alt="" coords="373,95,432,121"/>
|
||||
<area shape="rect" id="node7" title=" " alt="" coords="457,95,503,121"/>
|
||||
<area shape="rect" id="node8" title=" " alt="" coords="527,95,566,121"/>
|
||||
<area shape="rect" id="node9" title=" " alt="" coords="590,95,645,121"/>
|
||||
<area shape="rect" id="node5" title=" " alt="" coords="291,95,330,121"/>
|
||||
<area shape="rect" id="node6" title=" " alt="" coords="354,95,401,121"/>
|
||||
<area shape="rect" id="node7" title=" " alt="" coords="425,95,482,121"/>
|
||||
<area shape="rect" id="node8" title=" " alt="" coords="506,95,561,121"/>
|
||||
<area shape="rect" id="node9" title=" " alt="" coords="585,95,644,121"/>
|
||||
</map>
|
||||
|
||||
@@ -1 +1 @@
|
||||
b65025ea9c14343c016c8976b8722b95
|
||||
e4486f438862a7518c2ad8177f8e2e1d
|
||||
@@ -4,18 +4,18 @@
|
||||
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
|
||||
-->
|
||||
<!-- Title: graph/breadth_first_search.cpp Pages: 1 -->
|
||||
<svg width="488pt" height="95pt"
|
||||
viewBox="0.00 0.00 487.50 95.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<svg width="487pt" height="95pt"
|
||||
viewBox="0.00 0.00 487.00 95.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 91)">
|
||||
<title>graph/breadth_first_search.cpp</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-91 483.5,-91 483.5,4 -4,4"/>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-91 483,-91 483,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title="Breadth First Search Algorithm (Breadth First Search)">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="218,-56.5 218,-86.5 316,-86.5 316,-56.5 218,-56.5"/>
|
||||
<text text-anchor="start" x="226" y="-74.5" font-family="Helvetica,sans-Serif" font-size="10.00">graph/breadth_first</text>
|
||||
<text text-anchor="middle" x="267" y="-63.5" font-family="Helvetica,sans-Serif" font-size="10.00">_search.cpp</text>
|
||||
<polygon fill="#bfbfbf" stroke="black" points="205,-56.5 205,-86.5 303,-86.5 303,-56.5 205,-56.5"/>
|
||||
<text text-anchor="start" x="213" y="-74.5" font-family="Helvetica,sans-Serif" font-size="10.00">graph/breadth_first</text>
|
||||
<text text-anchor="middle" x="254" y="-63.5" font-family="Helvetica,sans-Serif" font-size="10.00">_search.cpp</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
@@ -31,8 +31,8 @@
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M217.77,-58.24C172.8,-47.05 107.23,-30.72 66.13,-20.49"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="66.78,-17.05 56.23,-18.03 65.09,-23.84 66.78,-17.05"/>
|
||||
<path fill="none" stroke="midnightblue" d="M204.96,-57.59C163.25,-46.61 104.21,-31.06 66.01,-21.01"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="66.85,-17.61 56.29,-18.45 65.07,-24.38 66.85,-17.61"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
@@ -46,8 +46,8 @@
|
||||
<!-- Node1->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node1->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M227.19,-56.4C198.5,-46.24 160.19,-32.67 132.94,-23.02"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="134.04,-19.7 123.45,-19.66 131.7,-26.3 134.04,-19.7"/>
|
||||
<path fill="none" stroke="midnightblue" d="M217.27,-56.4C191.03,-46.33 156.07,-32.91 130.98,-23.28"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="132.14,-19.97 121.55,-19.66 129.64,-26.51 132.14,-19.97"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
@@ -61,83 +61,83 @@
|
||||
<!-- Node1->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node1->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M243.78,-56.4C228.21,-46.95 207.8,-34.56 192.24,-25.11"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="193.62,-21.86 183.26,-19.66 189.99,-27.84 193.62,-21.86"/>
|
||||
<path fill="none" stroke="midnightblue" d="M233.86,-56.4C220.61,-47.13 203.32,-35.03 189.92,-25.65"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="191.57,-22.53 181.37,-19.66 187.55,-28.26 191.57,-22.53"/>
|
||||
</g>
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:title=" ">
|
||||
<polygon fill="white" stroke="#bfbfbf" points="214.5,-0.5 214.5,-19.5 257.5,-19.5 257.5,-0.5 214.5,-0.5"/>
|
||||
<text text-anchor="middle" x="236" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">queue</text>
|
||||
<polygon fill="white" stroke="#bfbfbf" points="214.5,-0.5 214.5,-19.5 243.5,-19.5 243.5,-0.5 214.5,-0.5"/>
|
||||
<text text-anchor="middle" x="229" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">list</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node5 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node1->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M259.65,-56.4C255.33,-48.11 249.83,-37.55 245.23,-28.71"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="248.24,-26.91 240.51,-19.66 242.03,-30.14 248.24,-26.91"/>
|
||||
<path fill="none" stroke="midnightblue" d="M248.08,-56.4C244.63,-48.2 240.25,-37.78 236.56,-28.99"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="239.74,-27.52 232.64,-19.66 233.28,-30.23 239.74,-27.52"/>
|
||||
</g>
|
||||
<!-- Node6 -->
|
||||
<g id="node6" class="node">
|
||||
<title>Node6</title>
|
||||
<g id="a_node6"><a xlink:title=" ">
|
||||
<polygon fill="white" stroke="#bfbfbf" points="276,-0.5 276,-19.5 320,-19.5 320,-0.5 276,-0.5"/>
|
||||
<text text-anchor="middle" x="298" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">vector</text>
|
||||
<polygon fill="white" stroke="#bfbfbf" points="261.5,-0.5 261.5,-19.5 296.5,-19.5 296.5,-0.5 261.5,-0.5"/>
|
||||
<text text-anchor="middle" x="279" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">map</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node6 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node1->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M274.35,-56.4C278.67,-48.11 284.17,-37.55 288.77,-28.71"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="291.97,-30.14 293.49,-19.66 285.76,-26.91 291.97,-30.14"/>
|
||||
<path fill="none" stroke="midnightblue" d="M259.92,-56.4C263.37,-48.2 267.75,-37.78 271.44,-28.99"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="274.72,-30.23 275.36,-19.66 268.26,-27.52 274.72,-30.23"/>
|
||||
</g>
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a xlink:title=" ">
|
||||
<polygon fill="white" stroke="#bfbfbf" points="338.5,-0.5 338.5,-19.5 373.5,-19.5 373.5,-0.5 338.5,-0.5"/>
|
||||
<text text-anchor="middle" x="356" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">map</text>
|
||||
<polygon fill="white" stroke="#bfbfbf" points="314.5,-0.5 314.5,-19.5 357.5,-19.5 357.5,-0.5 314.5,-0.5"/>
|
||||
<text text-anchor="middle" x="336" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">queue</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node7 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>Node1->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M288.09,-56.4C302.09,-47.04 320.41,-34.79 334.49,-25.38"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="336.68,-28.13 343.05,-19.66 332.79,-22.31 336.68,-28.13"/>
|
||||
<path fill="none" stroke="midnightblue" d="M273.43,-56.4C286.21,-47.13 302.89,-35.03 315.81,-25.65"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="318.03,-28.36 324.07,-19.66 313.92,-22.7 318.03,-28.36"/>
|
||||
</g>
|
||||
<!-- Node8 -->
|
||||
<g id="node8" class="node">
|
||||
<title>Node8</title>
|
||||
<g id="a_node8"><a xlink:title=" ">
|
||||
<polygon fill="white" stroke="#bfbfbf" points="391.5,-0.5 391.5,-19.5 420.5,-19.5 420.5,-0.5 391.5,-0.5"/>
|
||||
<text text-anchor="middle" x="406" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">list</text>
|
||||
<polygon fill="white" stroke="#bfbfbf" points="375.5,-0.5 375.5,-19.5 416.5,-19.5 416.5,-0.5 375.5,-0.5"/>
|
||||
<text text-anchor="middle" x="396" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">string</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node8 -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>Node1->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M299.94,-56.4C325.12,-45.62 359.24,-31.02 381.91,-21.31"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="383.33,-24.51 391.15,-17.36 380.58,-18.07 383.33,-24.51"/>
|
||||
<path fill="none" stroke="midnightblue" d="M287.65,-56.4C311.48,-46.42 343.15,-33.15 366.09,-23.53"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="367.47,-26.75 375.34,-19.66 364.76,-20.29 367.47,-26.75"/>
|
||||
</g>
|
||||
<!-- Node9 -->
|
||||
<g id="node9" class="node">
|
||||
<title>Node9</title>
|
||||
<g id="a_node9"><a xlink:title=" ">
|
||||
<polygon fill="white" stroke="#bfbfbf" points="438.5,-0.5 438.5,-19.5 479.5,-19.5 479.5,-0.5 438.5,-0.5"/>
|
||||
<text text-anchor="middle" x="459" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">string</text>
|
||||
<polygon fill="white" stroke="#bfbfbf" points="435,-0.5 435,-19.5 479,-19.5 479,-0.5 435,-0.5"/>
|
||||
<text text-anchor="middle" x="457" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">vector</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node9 -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>Node1->Node9</title>
|
||||
<path fill="none" stroke="midnightblue" d="M312.32,-56.47C342.86,-47.01 384.29,-34.17 428.85,-20.35"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="429.89,-23.7 438.41,-17.39 427.82,-17.01 429.89,-23.7"/>
|
||||
<path fill="none" stroke="midnightblue" d="M301.85,-56.47C339.99,-45.3 392.3,-29.96 425.38,-20.27"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="426.38,-23.62 434.99,-17.45 424.41,-16.91 426.38,-23.62"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 6.2 KiB After Width: | Height: | Size: 6.2 KiB |
@@ -1,5 +1,5 @@
|
||||
<map id="math/n_choose_r.cpp" name="math/n_choose_r.cpp">
|
||||
<area shape="rect" id="node1" title="Combinations n choose r function implementation" alt="" coords="15,5,161,32"/>
|
||||
<area shape="rect" id="node2" title=" " alt="" coords="5,80,77,107"/>
|
||||
<area shape="rect" id="node3" title=" " alt="" coords="102,80,167,107"/>
|
||||
<area shape="rect" id="node1" title="Combinations n choose r function implementation" alt="" coords="11,5,158,32"/>
|
||||
<area shape="rect" id="node2" title=" " alt="" coords="5,80,71,107"/>
|
||||
<area shape="rect" id="node3" title=" " alt="" coords="95,80,167,107"/>
|
||||
</map>
|
||||
|
||||
@@ -1 +1 @@
|
||||
b43e907afd9dfacf15ee78723042ddad
|
||||
c691523357a50bf08809bca22457dcf5
|
||||
@@ -13,8 +13,8 @@
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title="Combinations n choose r function implementation">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="7,-56.5 7,-75.5 117,-75.5 117,-56.5 7,-56.5"/>
|
||||
<text text-anchor="middle" x="62" y="-63.5" font-family="Helvetica,sans-Serif" font-size="10.00">math/n_choose_r.cpp</text>
|
||||
<polygon fill="#bfbfbf" stroke="black" points="4.5,-56.5 4.5,-75.5 114.5,-75.5 114.5,-56.5 4.5,-56.5"/>
|
||||
<text text-anchor="middle" x="59.5" y="-63.5" font-family="Helvetica,sans-Serif" font-size="10.00">math/n_choose_r.cpp</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
@@ -22,31 +22,31 @@
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a xlink:title=" ">
|
||||
<polygon fill="white" stroke="#bfbfbf" points="0,-0.5 0,-19.5 54,-19.5 54,-0.5 0,-0.5"/>
|
||||
<text text-anchor="middle" x="27" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">iostream</text>
|
||||
<polygon fill="white" stroke="#bfbfbf" points="0,-0.5 0,-19.5 49,-19.5 49,-0.5 0,-0.5"/>
|
||||
<text text-anchor="middle" x="24.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">cassert</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M56.22,-56.08C51.33,-48.53 44.17,-37.49 38.17,-28.23"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="41.05,-26.24 32.67,-19.75 35.17,-30.05 41.05,-26.24"/>
|
||||
<path fill="none" stroke="midnightblue" d="M53.72,-56.08C48.83,-48.53 41.67,-37.49 35.67,-28.23"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="38.55,-26.24 30.17,-19.75 32.67,-30.05 38.55,-26.24"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:title=" ">
|
||||
<polygon fill="white" stroke="#bfbfbf" points="72.5,-0.5 72.5,-19.5 121.5,-19.5 121.5,-0.5 72.5,-0.5"/>
|
||||
<text text-anchor="middle" x="97" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">cassert</text>
|
||||
<polygon fill="white" stroke="#bfbfbf" points="67.5,-0.5 67.5,-19.5 121.5,-19.5 121.5,-0.5 67.5,-0.5"/>
|
||||
<text text-anchor="middle" x="94.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">iostream</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node1->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M67.78,-56.08C72.67,-48.53 79.83,-37.49 85.83,-28.23"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="88.83,-30.05 91.33,-19.75 82.95,-26.24 88.83,-30.05"/>
|
||||
<path fill="none" stroke="midnightblue" d="M65.28,-56.08C70.17,-48.53 77.33,-37.49 83.33,-28.23"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="86.33,-30.05 88.83,-19.75 80.45,-26.24 86.33,-30.05"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |