Documentation for 0953376d31

This commit is contained in:
github-actions
2023-06-16 21:18:14 +00:00
parent 26f1eee566
commit 14deeecd50
7241 changed files with 234176 additions and 54779 deletions

View File

@@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="generator" content="Doxygen 1.9.7"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: double_hashing Namespace Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
@@ -41,7 +41,7 @@ MathJax.Hub.Config({
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<!-- Generated by Doxygen 1.9.7 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
@@ -203,13 +203,12 @@ bool&#160;</td><td class="memItemRight" valign="bottom"><b>rehashing</b></td></t
<div class="line"><span class="lineno"> 192</span> <a class="code hl_function" href="../../d0/d65/namespacedouble__hashing.html#af4981819aae8bc7e7beeaef02615e30d">rehash</a>();</div>
<div class="line"><span class="lineno"> 193</span> }</div>
<div class="line"><span class="lineno"> 194</span>}</div>
<div class="ttc" id="anamespacedouble__hashing_html_a8f8ff4fb018e1bb32d67d8a1885d3200"><div class="ttname"><a href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200">double_hashing::doubleHash</a></div><div class="ttdeci">int doubleHash(int key, bool searching)</div><div class="ttdoc">Performs double hashing to resolve collisions.</div><div class="ttdef"><b>Definition:</b> double_hash_hash_table.cpp:71</div></div>
<div class="ttc" id="anamespacedouble__hashing_html_af4981819aae8bc7e7beeaef02615e30d"><div class="ttname"><a href="../../d0/d65/namespacedouble__hashing.html#af4981819aae8bc7e7beeaef02615e30d">double_hashing::rehash</a></div><div class="ttdeci">void rehash()</div><div class="ttdef"><b>Definition:</b> double_hash_hash_table.cpp:161</div></div>
<div class="ttc" id="anamespacedouble__hashing_html_a8f8ff4fb018e1bb32d67d8a1885d3200"><div class="ttname"><a href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200">double_hashing::doubleHash</a></div><div class="ttdeci">int doubleHash(int key, bool searching)</div><div class="ttdoc">Performs double hashing to resolve collisions.</div><div class="ttdef"><b>Definition</b> double_hash_hash_table.cpp:71</div></div>
<div class="ttc" id="anamespacedouble__hashing_html_af4981819aae8bc7e7beeaef02615e30d"><div class="ttname"><a href="../../d0/d65/namespacedouble__hashing.html#af4981819aae8bc7e7beeaef02615e30d">double_hashing::rehash</a></div><div class="ttdeci">void rehash()</div><div class="ttdef"><b>Definition</b> double_hash_hash_table.cpp:161</div></div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d0/d65/namespacedouble__hashing_a79a9c914a6c68275b3640303d7faad8a_cgraph.svg" width="638" height="250"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d0/d65/namespacedouble__hashing_a79a9c914a6c68275b3640303d7faad8a_cgraph.svg" width="638" height="250"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
@@ -248,13 +247,12 @@ Here is the call graph for this function:</div>
<div class="line"><span class="lineno"> 222</span>}</div>
<div class="ttc" id="abasic_ostream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div></div>
<div class="ttc" id="aendl_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a></div><div class="ttdeci">T endl(T... args)</div></div>
<div class="ttc" id="anamespacedouble__hashing_html_a0d90726ed1de7b3d2ae261baed048003"><div class="ttname"><a href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003">double_hashing::hashFxn</a></div><div class="ttdeci">size_t hashFxn(int key)</div><div class="ttdoc">Hash a key. Uses the STL library's std::hash() function.</div><div class="ttdef"><b>Definition:</b> double_hash_hash_table.cpp:47</div></div>
<div class="ttc" id="auint128__t_8hpp_html_a3ff77262ffd6743df5b808d41382a6f3"><div class="ttname"><a href="../../da/d41/uint128__t_8hpp.html#a3ff77262ffd6743df5b808d41382a6f3">add</a></div><div class="ttdeci">std::string add(const std::string &amp;first, const std::string &amp;second)</div><div class="ttdoc">Adding two string.</div><div class="ttdef"><b>Definition:</b> uint128_t.hpp:37</div></div>
<div class="ttc" id="anamespacedouble__hashing_html_a0d90726ed1de7b3d2ae261baed048003"><div class="ttname"><a href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003">double_hashing::hashFxn</a></div><div class="ttdeci">size_t hashFxn(int key)</div><div class="ttdoc">Hash a key. Uses the STL library's std::hash() function.</div><div class="ttdef"><b>Definition</b> double_hash_hash_table.cpp:47</div></div>
<div class="ttc" id="auint128__t_8hpp_html_a3ff77262ffd6743df5b808d41382a6f3"><div class="ttname"><a href="../../da/d41/uint128__t_8hpp.html#a3ff77262ffd6743df5b808d41382a6f3">add</a></div><div class="ttdeci">std::string add(const std::string &amp;first, const std::string &amp;second)</div><div class="ttdoc">Adding two string.</div><div class="ttdef"><b>Definition</b> uint128_t.hpp:37</div></div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="../../d0/d65/namespacedouble__hashing_a9c652b2e467e5d250dfe3bed83b12560_cgraph.svg" width="100%" height="514"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="../../d0/d65/namespacedouble__hashing_a9c652b2e467e5d250dfe3bed83b12560_cgraph.svg" width="100%" height="514"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
</div>
</div>
@@ -291,8 +289,7 @@ Here is the call graph for this function:</div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d0/d65/namespacedouble__hashing_a1e901418c759627557eff359b8db38cd_cgraph.svg" width="291" height="36"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d0/d65/namespacedouble__hashing_a1e901418c759627557eff359b8db38cd_cgraph.svg" width="291" height="36"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
@@ -376,16 +373,15 @@ new hash if no conflicts present </dd></dl>
<div class="line"><span class="lineno"> 110</span> } <span class="keywordflow">while</span> (entry.<a class="code hl_variable" href="../../d9/dde/structdouble__hashing_1_1_entry.html#ae114967c89dbba3b754dc4976bba3248">key</a> != notPresent);</div>
<div class="line"><span class="lineno"> 111</span> <span class="keywordflow">return</span> notPresent;</div>
<div class="line"><span class="lineno"> 112</span>}</div>
<div class="ttc" id="amd5_8cpp_html_a88705fab5f92adf3427b4cf76ff33edb"><div class="ttname"><a href="../../d5/d96/md5_8cpp.html#a88705fab5f92adf3427b4cf76ff33edb">hashing::md5::hash</a></div><div class="ttdeci">void * hash(const std::string &amp;message)</div><div class="ttdoc">Converts the string to bytestring and calls the main algorithm.</div><div class="ttdef"><b>Definition:</b> md5.cpp:287</div></div>
<div class="ttc" id="anamespacedouble__hashing_html_a33968a1178289ab61445dd4000df7082"><div class="ttname"><a href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082">double_hashing::otherHashFxn</a></div><div class="ttdeci">size_t otherHashFxn(int key)</div><div class="ttdoc">Used for second hash function.</div><div class="ttdef"><b>Definition:</b> double_hash_hash_table.cpp:58</div></div>
<div class="ttc" id="anamespacedouble__hashing_html_ac2adfce49ac57f6dbd1778d2c1ce0d2b"><div class="ttname"><a href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b">double_hashing::putProber</a></div><div class="ttdeci">bool putProber(const Entry &amp;entry, int key)</div><div class="ttdef"><b>Definition:</b> double_hash_hash_table.cpp:120</div></div>
<div class="ttc" id="astructdouble__hashing_1_1_entry_html"><div class="ttname"><a href="../../d9/dde/structdouble__hashing_1_1_entry.html">double_hashing::Entry</a></div><div class="ttdef"><b>Definition:</b> double_hash_hash_table.cpp:36</div></div>
<div class="ttc" id="astructdouble__hashing_1_1_entry_html_ae114967c89dbba3b754dc4976bba3248"><div class="ttname"><a href="../../d9/dde/structdouble__hashing_1_1_entry.html#ae114967c89dbba3b754dc4976bba3248">double_hashing::Entry::key</a></div><div class="ttdeci">int key</div><div class="ttdoc">key value</div><div class="ttdef"><b>Definition:</b> double_hash_hash_table.cpp:38</div></div>
<div class="ttc" id="amd5_8cpp_html_a88705fab5f92adf3427b4cf76ff33edb"><div class="ttname"><a href="../../d5/d96/md5_8cpp.html#a88705fab5f92adf3427b4cf76ff33edb">hashing::md5::hash</a></div><div class="ttdeci">void * hash(const std::string &amp;message)</div><div class="ttdoc">Converts the string to bytestring and calls the main algorithm.</div><div class="ttdef"><b>Definition</b> md5.cpp:287</div></div>
<div class="ttc" id="anamespacedouble__hashing_html_a33968a1178289ab61445dd4000df7082"><div class="ttname"><a href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082">double_hashing::otherHashFxn</a></div><div class="ttdeci">size_t otherHashFxn(int key)</div><div class="ttdoc">Used for second hash function.</div><div class="ttdef"><b>Definition</b> double_hash_hash_table.cpp:58</div></div>
<div class="ttc" id="anamespacedouble__hashing_html_ac2adfce49ac57f6dbd1778d2c1ce0d2b"><div class="ttname"><a href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b">double_hashing::putProber</a></div><div class="ttdeci">bool putProber(const Entry &amp;entry, int key)</div><div class="ttdef"><b>Definition</b> double_hash_hash_table.cpp:120</div></div>
<div class="ttc" id="astructdouble__hashing_1_1_entry_html"><div class="ttname"><a href="../../d9/dde/structdouble__hashing_1_1_entry.html">double_hashing::Entry</a></div><div class="ttdef"><b>Definition</b> double_hash_hash_table.cpp:36</div></div>
<div class="ttc" id="astructdouble__hashing_1_1_entry_html_ae114967c89dbba3b754dc4976bba3248"><div class="ttname"><a href="../../d9/dde/structdouble__hashing_1_1_entry.html#ae114967c89dbba3b754dc4976bba3248">double_hashing::Entry::key</a></div><div class="ttdeci">int key</div><div class="ttdoc">key value</div><div class="ttdef"><b>Definition</b> double_hash_hash_table.cpp:38</div></div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d0/d65/namespacedouble__hashing_a8f8ff4fb018e1bb32d67d8a1885d3200_cgraph.svg" width="448" height="250"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d0/d65/namespacedouble__hashing_a8f8ff4fb018e1bb32d67d8a1885d3200_cgraph.svg" width="448" height="250"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
@@ -536,8 +532,7 @@ Here is the call graph for this function:</div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="../../d0/d65/namespacedouble__hashing_af4981819aae8bc7e7beeaef02615e30d_cgraph.svg" width="100%" height="487"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="../../d0/d65/namespacedouble__hashing_af4981819aae8bc7e7beeaef02615e30d_cgraph.svg" width="100%" height="487"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
</div>
</div>
@@ -577,8 +572,7 @@ Here is the call graph for this function:</div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="../../d0/d65/namespacedouble__hashing_a5d06e4598569526294f10104875f6824_cgraph.svg" width="100%" height="498"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="../../d0/d65/namespacedouble__hashing_a5d06e4598569526294f10104875f6824_cgraph.svg" width="100%" height="498"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
</div>
</div>
@@ -616,8 +610,7 @@ Here is the call graph for this function:</div>
</div><!-- fragment --><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d0/d65/namespacedouble__hashing_a28083ecac6eb94b643281875c8665931_cgraph.svg" width="659" height="250"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d0/d65/namespacedouble__hashing_a28083ecac6eb94b643281875c8665931_cgraph.svg" width="659" height="250"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
@@ -672,7 +665,7 @@ Here is the call graph for this function:</div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d0/d65/namespacedouble__hashing.html">double_hashing</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.6 </li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.7 </li>
</ul>
</div>
</body>

View File

@@ -1,4 +1,5 @@
<map id="double_hashing::display" name="double_hashing::display">
<area shape="rect" id="node1" title=" " alt="" coords="5,5,166,31"/>
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="214,5,285,31"/>
<area shape="rect" id="Node000001" title=" " alt="" coords="5,5,166,31"/>
<area shape="rect" id="Node000002" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="214,5,285,31"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="166,16,199,16,199,21,166,21"/>
</map>

View File

@@ -1 +1 @@
5b88db3a892a7fb28cc1000b19a9e207
97794c183a1a96bd849dfeec8a5420f4

View File

@@ -6,31 +6,59 @@
<!-- Title: double_hashing::display Pages: 1 -->
<svg width="218pt" height="27pt"
viewBox="0.00 0.00 217.75 27.25" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
<style type="text/css"><![CDATA[
.node, .edge {opacity: 0.7;}
.node.selected, .edge.selected {opacity: 1;}
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<script type="application/ecmascript" xlink:href="../../svg.min.js"/>
<svg id="graph" class="graph">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 23.25)">
<title>double_hashing::display</title>
<!-- Node1 -->
<g id="node1" class="node">
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="120.25,-19.25 0,-19.25 0,0 120.25,0 120.25,-19.25"/>
<text text-anchor="middle" x="60.12" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::display</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<g id="a_Node000002"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="209.75,-19.25 156.25,-19.25 156.25,0 209.75,0 209.75,-19.25"/>
<text text-anchor="middle" x="183" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M120.5,-9.62C128.84,-9.62 137.21,-9.62 144.98,-9.62"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="144.84,-13.13 154.84,-9.62 144.84,-6.13 144.84,-13.13"/>
</a>
</g>
</g>
</g>
</svg>
</svg>
<style type='text/css'>
<![CDATA[
[data-mouse-over-selected='false'] { opacity: 0.7; }
[data-mouse-over-selected='true'] { opacity: 1.0; }
]]>
</style>
<script type="application/ecmascript"><![CDATA[
document.addEventListener('DOMContentLoaded', (event) => {
highlightEdges();
highlightAdjacentNodes();
});
]]></script>
</svg>

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -0,0 +1,39 @@
<?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 8.0.5 (20230430.1635)
-->
<!-- Title: double_hashing::display Pages: 1 -->
<svg width="218pt" height="27pt"
viewBox="0.00 0.00 217.75 27.25" 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 23.25)">
<title>double_hashing::display</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="120.25,-19.25 0,-19.25 0,0 120.25,0 120.25,-19.25"/>
<text text-anchor="middle" x="60.12" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::display</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="209.75,-19.25 156.25,-19.25 156.25,0 209.75,0 209.75,-19.25"/>
<text text-anchor="middle" x="183" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M120.5,-9.62C128.84,-9.62 137.21,-9.62 144.98,-9.62"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="144.84,-13.13 154.84,-9.62 144.84,-6.13 144.84,-13.13"/>
</a>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -1,9 +1,16 @@
<map id="double_hashing::remove" name="double_hashing::remove">
<area shape="rect" id="node1" title=" " alt="" coords="5,55,168,80"/>
<area shape="rect" id="node2" href="$d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" title="Performs double hashing to resolve collisions." alt="" coords="216,80,404,106"/>
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="517,5,588,31"/>
<area shape="rect" id="node4" href="$d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="468,55,637,80"/>
<area shape="rect" id="node5" href="$d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" title="Used for second hash function." alt="" coords="452,104,653,130"/>
<area shape="rect" id="node6" href="$d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" title=" " alt="" coords="465,153,640,179"/>
<area shape="rect" id="node7" href="$d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" title=" " alt="" coords="465,203,640,244"/>
<area shape="rect" id="Node000001" title=" " alt="" coords="5,55,168,80"/>
<area shape="rect" id="Node000002" href="$d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" title="Performs double hashing to resolve collisions." alt="" coords="216,80,404,106"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="168,74,201,78,200,83,168,79"/>
<area shape="rect" id="Node000003" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="517,5,588,31"/>
<area shape="poly" id="edge7_Node000001_Node000003" title=" " alt="" coords="168,56,502,21,502,26,168,62"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="344,77,451,40,502,26,503,31,453,45,346,82"/>
<area shape="rect" id="Node000004" href="$d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="468,55,637,80"/>
<area shape="poly" id="edge3_Node000002_Node000004" title=" " alt="" coords="404,80,453,75,453,81,405,86"/>
<area shape="rect" id="Node000005" href="$d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" title="Used for second hash function." alt="" coords="452,104,653,130"/>
<area shape="poly" id="edge4_Node000002_Node000005" title=" " alt="" coords="405,99,437,103,437,108,404,105"/>
<area shape="rect" id="Node000006" href="$d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" title=" " alt="" coords="465,153,640,179"/>
<area shape="poly" id="edge5_Node000002_Node000006" title=" " alt="" coords="347,104,453,140,479,147,477,152,451,145,345,109"/>
<area shape="rect" id="Node000007" href="$d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" title=" " alt="" coords="465,203,640,244"/>
<area shape="poly" id="edge6_Node000002_Node000007" title=" " alt="" coords="328,104,382,145,453,189,465,195,463,200,451,194,379,150,325,108"/>
</map>

View File

@@ -1 +1 @@
ac2cf961daf45ec7ded2ac660eb6d992
61afd8a25fb724e20d31348c8b166991

View File

@@ -6,102 +6,130 @@
<!-- Title: double_hashing::remove Pages: 1 -->
<svg width="494pt" height="187pt"
viewBox="0.00 0.00 494.00 186.88" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
<style type="text/css"><![CDATA[
.node, .edge {opacity: 0.7;}
.node.selected, .edge.selected {opacity: 1;}
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<script type="application/ecmascript" xlink:href="../../svg.min.js"/>
<svg id="graph" class="graph">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 182.88)">
<title>double_hashing::remove</title>
<!-- Node1 -->
<g id="node1" class="node">
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="121.75,-141.88 0,-141.88 0,-122.62 121.75,-122.62 121.75,-141.88"/>
<text text-anchor="middle" x="60.88" y="-128.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::remove</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<g id="a_Node000002"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<polygon fill="white" stroke="#666666" points="299,-122.88 157.75,-122.88 157.75,-103.62 299,-103.62 299,-122.88"/>
<text text-anchor="middle" x="228.38" y="-109.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::doubleHash</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M122.09,-125.34C130.06,-124.42 138.33,-123.47 146.58,-122.53"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="146.84,-125.9 156.37,-121.29 146.04,-118.95 146.84,-125.9"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<g id="a_Node000003"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="437.25,-178.88 383.75,-178.88 383.75,-159.62 437.25,-159.62 437.25,-178.88"/>
<text text-anchor="middle" x="410.5" y="-165.38" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge7" class="edge">
<g id="edge7_Node000001_Node000003" class="edge">
<title>Node1&#45;&gt;Node3</title>
<g id="a_edge7_Node000001_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M122.03,-138.65C194.14,-146.33 312.73,-158.95 372.55,-165.32"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="372.04,-168.89 382.35,-166.47 372.78,-161.93 372.04,-168.89"/>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M254.73,-123.25C275.97,-131.41 307.18,-142.91 335,-151.25 347.2,-154.91 360.69,-158.34 372.8,-161.22"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="371.92,-164.84 382.46,-163.69 373.5,-158.02 371.92,-164.84"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_node4"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<g id="a_Node000004"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="#666666" points="474,-141.88 347,-141.88 347,-122.62 474,-122.62 474,-141.88"/>
<text text-anchor="middle" x="410.5" y="-128.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::hashFxn</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<g id="edge3_Node000002_Node000004" class="edge">
<title>Node2&#45;&gt;Node4</title>
<g id="a_edge3_Node000002_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M299.27,-120.62C311.24,-121.88 323.7,-123.2 335.76,-124.47"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="335.38,-128.06 345.69,-125.63 336.12,-121.1 335.38,-128.06"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<g id="a_Node000005"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<polygon fill="white" stroke="#666666" points="486,-104.88 335,-104.88 335,-85.62 486,-85.62 486,-104.88"/>
<text text-anchor="middle" x="410.5" y="-91.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::otherHashFxn</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<g id="edge4_Node000002_Node000005" class="edge">
<title>Node2&#45;&gt;Node5</title>
<g id="a_edge4_Node000002_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M299.27,-106.26C307.32,-105.46 315.59,-104.63 323.81,-103.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="323.97,-107.21 333.57,-102.74 323.27,-100.25 323.97,-107.21"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<g id="a_Node000006"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="476.25,-67.88 344.75,-67.88 344.75,-48.62 476.25,-48.62 476.25,-67.88"/>
<text text-anchor="middle" x="410.5" y="-54.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::putProber</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<g id="edge5_Node000002_Node000006" class="edge">
<title>Node2&#45;&gt;Node6</title>
<g id="a_edge5_Node000002_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M255.62,-103.24C276.84,-95.34 307.61,-84.34 335,-76.25 341.28,-74.4 347.9,-72.59 354.5,-70.88"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="354.95,-74.12 363.79,-68.28 353.24,-67.34 354.95,-74.12"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="node7" class="node">
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_node7"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<g id="a_Node000007"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="476.25,-30.5 344.75,-30.5 344.75,0 476.25,0 476.25,-30.5"/>
<text text-anchor="start" x="352.75" y="-17" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::searching</text>
<text text-anchor="middle" x="410.5" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
@@ -109,10 +137,28 @@
</g>
</g>
<!-- Node2&#45;&gt;Node7 -->
<g id="edge6" class="edge">
<g id="edge6_Node000002_Node000007" class="edge">
<title>Node2&#45;&gt;Node7</title>
<g id="a_edge6_Node000002_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M240.99,-103.33C259.68,-87.8 298.11,-57.59 335,-39.25 337.95,-37.78 341,-36.38 344.12,-35.04"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="345.26,-37.96 353.23,-30.99 342.65,-31.46 345.26,-37.96"/>
</a>
</g>
</g>
</g>
</svg>
</svg>
<style type='text/css'>
<![CDATA[
[data-mouse-over-selected='false'] { opacity: 0.7; }
[data-mouse-over-selected='true'] { opacity: 1.0; }
]]>
</style>
<script type="application/ecmascript"><![CDATA[
document.addEventListener('DOMContentLoaded', (event) => {
highlightEdges();
highlightAdjacentNodes();
});
]]></script>
</svg>

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 7.5 KiB

View File

@@ -0,0 +1,139 @@
<?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 8.0.5 (20230430.1635)
-->
<!-- Title: double_hashing::remove Pages: 1 -->
<svg width="494pt" height="187pt"
viewBox="0.00 0.00 494.00 186.88" 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 182.88)">
<title>double_hashing::remove</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="121.75,-141.88 0,-141.88 0,-122.62 121.75,-122.62 121.75,-141.88"/>
<text text-anchor="middle" x="60.88" y="-128.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::remove</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<polygon fill="white" stroke="#666666" points="299,-122.88 157.75,-122.88 157.75,-103.62 299,-103.62 299,-122.88"/>
<text text-anchor="middle" x="228.38" y="-109.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::doubleHash</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M122.09,-125.34C130.06,-124.42 138.33,-123.47 146.58,-122.53"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="146.84,-125.9 156.37,-121.29 146.04,-118.95 146.84,-125.9"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="437.25,-178.88 383.75,-178.88 383.75,-159.62 437.25,-159.62 437.25,-178.88"/>
<text text-anchor="middle" x="410.5" y="-165.38" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge7_Node000001_Node000003" class="edge">
<title>Node1&#45;&gt;Node3</title>
<g id="a_edge7_Node000001_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M122.03,-138.65C194.14,-146.33 312.73,-158.95 372.55,-165.32"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="372.04,-168.89 382.35,-166.47 372.78,-161.93 372.04,-168.89"/>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M254.73,-123.25C275.97,-131.41 307.18,-142.91 335,-151.25 347.2,-154.91 360.69,-158.34 372.8,-161.22"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="371.92,-164.84 382.46,-163.69 373.5,-158.02 371.92,-164.84"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="#666666" points="474,-141.88 347,-141.88 347,-122.62 474,-122.62 474,-141.88"/>
<text text-anchor="middle" x="410.5" y="-128.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::hashFxn</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node4 -->
<g id="edge3_Node000002_Node000004" class="edge">
<title>Node2&#45;&gt;Node4</title>
<g id="a_edge3_Node000002_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M299.27,-120.62C311.24,-121.88 323.7,-123.2 335.76,-124.47"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="335.38,-128.06 345.69,-125.63 336.12,-121.1 335.38,-128.06"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_Node000005"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<polygon fill="white" stroke="#666666" points="486,-104.88 335,-104.88 335,-85.62 486,-85.62 486,-104.88"/>
<text text-anchor="middle" x="410.5" y="-91.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::otherHashFxn</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node5 -->
<g id="edge4_Node000002_Node000005" class="edge">
<title>Node2&#45;&gt;Node5</title>
<g id="a_edge4_Node000002_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M299.27,-106.26C307.32,-105.46 315.59,-104.63 323.81,-103.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="323.97,-107.21 333.57,-102.74 323.27,-100.25 323.97,-107.21"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_Node000006"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="476.25,-67.88 344.75,-67.88 344.75,-48.62 476.25,-48.62 476.25,-67.88"/>
<text text-anchor="middle" x="410.5" y="-54.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::putProber</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node6 -->
<g id="edge5_Node000002_Node000006" class="edge">
<title>Node2&#45;&gt;Node6</title>
<g id="a_edge5_Node000002_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M255.62,-103.24C276.84,-95.34 307.61,-84.34 335,-76.25 341.28,-74.4 347.9,-72.59 354.5,-70.88"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="354.95,-74.12 363.79,-68.28 353.24,-67.34 354.95,-74.12"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_Node000007"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="476.25,-30.5 344.75,-30.5 344.75,0 476.25,0 476.25,-30.5"/>
<text text-anchor="start" x="352.75" y="-17" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::searching</text>
<text text-anchor="middle" x="410.5" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node7 -->
<g id="edge6_Node000002_Node000007" class="edge">
<title>Node2&#45;&gt;Node7</title>
<g id="a_edge6_Node000002_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M240.99,-103.33C259.68,-87.8 298.11,-57.59 335,-39.25 337.95,-37.78 341,-36.38 344.12,-35.04"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="345.26,-37.96 353.23,-30.99 342.65,-31.46 345.26,-37.96"/>
</a>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.7 KiB

View File

@@ -1,11 +1,23 @@
<map id="double_hashing::removalInfo" name="double_hashing::removalInfo">
<area shape="rect" id="node1" title=" " alt="" coords="5,50,193,75"/>
<area shape="rect" id="node2" href="$d0/d65/namespacedouble__hashing.html#a1e901418c759627557eff359b8db38cd" title=" " alt="" coords="465,24,625,50"/>
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="752,19,824,45"/>
<area shape="rect" id="node4" href="$d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="703,232,873,258"/>
<area shape="rect" id="node5" href="$d0/d65/namespacedouble__hashing.html#a28083ecac6eb94b643281875c8665931" title=" " alt="" coords="241,75,403,101"/>
<area shape="rect" id="node6" href="$d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" title="Performs double hashing to resolve collisions." alt="" coords="451,126,639,151"/>
<area shape="rect" id="node7" href="$d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" title="Used for second hash function." alt="" coords="687,183,889,209"/>
<area shape="rect" id="node8" href="$d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" title=" " alt="" coords="700,68,876,94"/>
<area shape="rect" id="node9" href="$d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" title=" " alt="" coords="700,118,876,159"/>
<area shape="rect" id="Node000001" title=" " alt="" coords="5,50,193,75"/>
<area shape="rect" id="Node000002" href="$d0/d65/namespacedouble__hashing.html#a1e901418c759627557eff359b8db38cd" title=" " alt="" coords="465,24,625,50"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="193,55,450,40,450,45,193,60"/>
<area shape="rect" id="Node000003" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="752,19,824,45"/>
<area shape="poly" id="edge3_Node000001_Node000003" title=" " alt="" coords="154,47,240,29,352,13,439,5,527,3,640,9,738,21,737,26,639,15,527,9,439,10,352,18,241,35,155,52"/>
<area shape="rect" id="Node000004" href="$d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="703,232,873,258"/>
<area shape="poly" id="edge4_Node000001_Node000004" title=" " alt="" coords="135,73,241,111,368,146,496,178,708,226,706,231,495,184,367,151,240,116,133,78"/>
<area shape="rect" id="Node000005" href="$d0/d65/namespacedouble__hashing.html#a28083ecac6eb94b643281875c8665931" title=" " alt="" coords="241,75,403,101"/>
<area shape="poly" id="edge5_Node000001_Node000005" title=" " alt="" coords="193,71,226,74,225,80,193,76"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="626,33,737,30,737,36,626,38"/>
<area shape="poly" id="edge12_Node000005_Node000003" title=" " alt="" coords="403,82,515,74,639,60,737,41,738,46,640,65,516,79,404,87"/>
<area shape="rect" id="Node000006" href="$d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" title="Performs double hashing to resolve collisions." alt="" coords="451,126,639,151"/>
<area shape="poly" id="edge6_Node000005_Node000006" title=" " alt="" coords="382,99,472,119,471,125,381,104"/>
<area shape="poly" id="edge7_Node000006_Node000003" title=" " alt="" coords="598,123,638,104,652,92,661,79,670,66,686,54,711,42,737,35,738,41,713,48,689,58,674,70,665,82,656,96,641,109,601,128"/>
<area shape="poly" id="edge8_Node000006_Node000004" title=" " alt="" coords="567,150,620,184,688,219,707,225,705,230,686,224,617,189,564,154"/>
<area shape="rect" id="Node000007" href="$d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" title="Used for second hash function." alt="" coords="687,183,889,209"/>
<area shape="poly" id="edge9_Node000006_Node000007" title=" " alt="" coords="603,149,717,177,716,182,602,155"/>
<area shape="rect" id="Node000008" href="$d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" title=" " alt="" coords="700,68,876,94"/>
<area shape="poly" id="edge10_Node000006_Node000008" title=" " alt="" coords="602,123,716,95,717,101,603,128"/>
<area shape="rect" id="Node000009" href="$d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" title=" " alt="" coords="700,118,876,159"/>
<area shape="poly" id="edge11_Node000006_Node000009" title=" " alt="" coords="640,136,685,136,685,141,640,141"/>
</map>

View File

@@ -1 +1 @@
21dae18704b13cc217a9c225e2ca0ef7
e06fa8daa8be601509dba14947d9bfb6

View File

@@ -5,197 +5,230 @@
-->
<!-- Title: double_hashing::removalInfo Pages: 1 -->
<!--zoomable 198 -->
<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[
.node, .edge {opacity: 0.7;}
.node.selected, .edge.selected {opacity: 1;}
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<script type="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">
<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="arrowUp" transform="translate(30 24)">
<use xlink:href="#rim"/>
<path pointer-events="none" 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" transform="rotate(90) translate(36 -43)">
<use xlink:href="#rim"/>
<path pointer-events="none" 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" transform="rotate(180) translate(-30 -48)">
<use xlink:href="#rim"/>
<path pointer-events="none" 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" transform="rotate(270) translate(-36 17)">
<use xlink:href="#rim"/>
<path pointer-events="none" 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="application/ecmascript">
var viewWidth = 671;
var viewHeight = 198;
var sectionId = 'dynsection-5';
</script>
<script xlink:href="../../svgpan.js"/>
<script type="application/ecmascript" xlink:href="../../svg.min.js"/>
<svg id="graph" class="graph">
<g id="viewport">
<title>double_hashing::removalInfo</title>
<!-- Node1 -->
<g id="node1" class="node">
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="140.5,-156.25 0,-156.25 0,-137 140.5,-137 140.5,-156.25"/>
<text text-anchor="middle" x="70.25" y="-142.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::removalInfo</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a1e901418c759627557eff359b8db38cd" target="_top" xlink:title=" ">
<g id="a_Node000002"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a1e901418c759627557eff359b8db38cd" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="465,-175.25 344.75,-175.25 344.75,-156 465,-156 465,-175.25"/>
<text text-anchor="middle" x="404.88" y="-161.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::display</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M140.98,-150.61C197.53,-153.84 276.89,-158.37 333.59,-161.61"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="333.08,-165.14 343.26,-162.22 333.47,-158.15 333.08,-165.14"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<g id="a_Node000003"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="613.75,-179.25 560.25,-179.25 560.25,-160 613.75,-160 613.75,-179.25"/>
<text text-anchor="middle" x="587" y="-165.75" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge3" class="edge">
<g id="edge3_Node000001_Node000003" class="edge">
<title>Node1&#45;&gt;Node3</title>
<g id="a_edge3_Node000001_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M112.02,-156.73C131.44,-161.24 155.06,-166.28 176.5,-169.62 307.96,-190.16 342.75,-193.59 475.5,-184.62 500.17,-182.96 527.73,-179.22 549.16,-175.89"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="549.43,-179.23 558.76,-174.2 548.33,-172.32 549.43,-179.23"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_node4"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<g id="a_Node000004"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="#666666" points="650.5,-19.25 523.5,-19.25 523.5,0 650.5,0 650.5,-19.25"/>
<text text-anchor="middle" x="587" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::hashFxn</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge4" class="edge">
<g id="edge4_Node000001_Node000004" class="edge">
<title>Node1&#45;&gt;Node4</title>
<g id="a_edge4_Node000001_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M96.51,-136.62C117.67,-128.46 148.78,-116.95 176.5,-108.62 299.35,-71.72 446.06,-38.92 526.29,-21.92"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="526.62,-25.21 535.68,-19.72 525.18,-18.36 526.62,-25.21"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a28083ecac6eb94b643281875c8665931" target="_top" xlink:title=" ">
<g id="a_Node000005"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a28083ecac6eb94b643281875c8665931" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="298.25,-137.25 176.5,-137.25 176.5,-118 298.25,-118 298.25,-137.25"/>
<text text-anchor="middle" x="237.38" y="-123.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::remove</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge5" class="edge">
<g id="edge5_Node000001_Node000005" class="edge">
<title>Node1&#45;&gt;Node5</title>
<g id="a_edge5_Node000001_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M140.8,-138.62C148.86,-137.7 157.09,-136.75 165.17,-135.82"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="165.53,-139.18 175.07,-134.56 164.73,-132.23 165.53,-139.18"/>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M465.35,-166.95C492.95,-167.56 524.9,-168.27 548.99,-168.8"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="548.71,-172.32 558.79,-169.04 548.87,-165.32 548.71,-172.32"/>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node3 -->
<g id="edge12" class="edge">
<g id="edge12_Node000005_Node000003" class="edge">
<title>Node5&#45;&gt;Node3</title>
<g id="a_edge12_Node000005_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M298.54,-130.36C346.61,-133.05 415.61,-138.03 475.5,-146.62 500.28,-150.18 527.84,-155.92 549.24,-160.77"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="548.29,-164.37 558.82,-163.21 549.86,-157.55 548.29,-164.37"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<g id="a_Node000006"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<polygon fill="white" stroke="#666666" points="475.5,-99.25 334.25,-99.25 334.25,-80 475.5,-80 475.5,-99.25"/>
<text text-anchor="middle" x="404.88" y="-85.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::doubleHash</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node6 -->
<g id="edge6" class="edge">
<g id="edge6_Node000005_Node000006" class="edge">
<title>Node5&#45;&gt;Node6</title>
<g id="a_edge6_Node000005_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M282.29,-117.54C302.95,-112.8 327.78,-107.1 349.6,-102.09"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="350.08,-105.34 359.04,-99.69 348.51,-98.52 350.08,-105.34"/>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node3 -->
<g id="edge7" class="edge">
<g id="edge7_Node000006_Node000003" class="edge">
<title>Node6&#45;&gt;Node3</title>
<g id="a_edge7_Node000006_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M445.7,-99.69C455.87,-103.23 466.47,-107.81 475.5,-113.62 495.06,-126.22 491.37,-139.97 511.5,-151.62 522.9,-158.22 536.63,-162.41 549.17,-165.07"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="548.34,-168.65 558.81,-167.02 549.6,-161.77 548.34,-168.65"/>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node4 -->
<g id="edge8" class="edge">
<g id="edge8_Node000006_Node000004" class="edge">
<title>Node6&#45;&gt;Node4</title>
<g id="a_edge8_Node000006_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M419.87,-79.58C439.47,-65.96 476.6,-41.72 511.5,-27.62 515.92,-25.84 520.57,-24.2 525.28,-22.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="526.07,-25.83 534.67,-19.65 524.09,-19.11 526.07,-25.83"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="node7" class="node">
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_node7"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<g id="a_Node000007"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<polygon fill="white" stroke="#666666" points="662.5,-56.25 511.5,-56.25 511.5,-37 662.5,-37 662.5,-56.25"/>
<text text-anchor="middle" x="587" y="-42.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::otherHashFxn</text>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node7 -->
<g id="edge9" class="edge">
<g id="edge9_Node000006_Node000007" class="edge">
<title>Node6&#45;&gt;Node7</title>
<g id="a_edge9_Node000006_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M448.11,-79.54C473.53,-73.47 506.13,-65.69 533.24,-59.22"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="533.81,-62.44 542.72,-56.72 532.18,-55.64 533.81,-62.44"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="node8" class="node">
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_node8"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<g id="a_Node000008"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="652.75,-142.25 521.25,-142.25 521.25,-123 652.75,-123 652.75,-142.25"/>
<text text-anchor="middle" x="587" y="-128.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::putProber</text>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node8 -->
<g id="edge10" class="edge">
<g id="edge10_Node000006_Node000008" class="edge">
<title>Node6&#45;&gt;Node8</title>
<g id="a_edge10_Node000006_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M448.11,-99.71C473.53,-105.78 506.13,-113.56 533.24,-120.03"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="532.18,-123.61 542.72,-122.53 533.81,-116.81 532.18,-123.61"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="node9" class="node">
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_node9"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<g id="a_Node000009"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="652.75,-104.88 521.25,-104.88 521.25,-74.38 652.75,-74.38 652.75,-104.88"/>
<text text-anchor="start" x="529.25" y="-91.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::searching</text>
<text text-anchor="middle" x="587" y="-80.12" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
@@ -203,52 +236,49 @@ var sectionId = 'dynsection-5';
</g>
</g>
<!-- Node6&#45;&gt;Node9 -->
<g id="edge11" class="edge">
<g id="edge11_Node000006_Node000009" class="edge">
<title>Node6&#45;&gt;Node9</title>
<g id="a_edge11_Node000006_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M475.77,-89.62C487.01,-89.62 498.7,-89.62 510.07,-89.62"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="509.86,-93.13 519.86,-89.62 509.86,-86.13 509.86,-93.13"/>
</a>
</g>
</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="namespacedouble__hashing_a5d06e4598569526294f10104875f6824_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>
<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()"/>
<use id="arrowup" xlink:href="#arrowUp" x="0" y="0" onmousedown="handlePan(0,-1)"/>
<use id="arrowright" xlink:href="#arrowRight" x="0" y="0" onmousedown="handlePan(1,0)"/>
<use id="arrowdown" xlink:href="#arrowDown" x="0" y="0" onmousedown="handlePan(0,1)"/>
<use id="arrowleft" xlink:href="#arrowLeft" x="0" y="0" onmousedown="handlePan(-1,0)"/>
</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="namespacedouble__hashing_a5d06e4598569526294f10104875f6824_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>
<style type='text/css'>
<![CDATA[
[data-mouse-over-selected='false'] { opacity: 0.7; }
[data-mouse-over-selected='true'] { opacity: 1.0; }
]]>
</style>
<script type="application/ecmascript"><![CDATA[
document.addEventListener('DOMContentLoaded', (event) => {
highlightEdges();
highlightAdjacentNodes();
});
]]></script>
</svg>

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -9,147 +9,180 @@
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 193.57)">
<title>double_hashing::removalInfo</title>
<!-- Node1 -->
<g id="node1" class="node">
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="140.5,-156.25 0,-156.25 0,-137 140.5,-137 140.5,-156.25"/>
<text text-anchor="middle" x="70.25" y="-142.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::removalInfo</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a1e901418c759627557eff359b8db38cd" target="_top" xlink:title=" ">
<g id="a_Node000002"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a1e901418c759627557eff359b8db38cd" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="465,-175.25 344.75,-175.25 344.75,-156 465,-156 465,-175.25"/>
<text text-anchor="middle" x="404.88" y="-161.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::display</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M140.98,-150.61C197.53,-153.84 276.89,-158.37 333.59,-161.61"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="333.08,-165.14 343.26,-162.22 333.47,-158.15 333.08,-165.14"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<g id="a_Node000003"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="613.75,-179.25 560.25,-179.25 560.25,-160 613.75,-160 613.75,-179.25"/>
<text text-anchor="middle" x="587" y="-165.75" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge3" class="edge">
<g id="edge3_Node000001_Node000003" class="edge">
<title>Node1&#45;&gt;Node3</title>
<g id="a_edge3_Node000001_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M112.02,-156.73C131.44,-161.24 155.06,-166.28 176.5,-169.62 307.96,-190.16 342.75,-193.59 475.5,-184.62 500.17,-182.96 527.73,-179.22 549.16,-175.89"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="549.43,-179.23 558.76,-174.2 548.33,-172.32 549.43,-179.23"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_node4"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<g id="a_Node000004"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="#666666" points="650.5,-19.25 523.5,-19.25 523.5,0 650.5,0 650.5,-19.25"/>
<text text-anchor="middle" x="587" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::hashFxn</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge4" class="edge">
<g id="edge4_Node000001_Node000004" class="edge">
<title>Node1&#45;&gt;Node4</title>
<g id="a_edge4_Node000001_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M96.51,-136.62C117.67,-128.46 148.78,-116.95 176.5,-108.62 299.35,-71.72 446.06,-38.92 526.29,-21.92"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="526.62,-25.21 535.68,-19.72 525.18,-18.36 526.62,-25.21"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a28083ecac6eb94b643281875c8665931" target="_top" xlink:title=" ">
<g id="a_Node000005"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a28083ecac6eb94b643281875c8665931" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="298.25,-137.25 176.5,-137.25 176.5,-118 298.25,-118 298.25,-137.25"/>
<text text-anchor="middle" x="237.38" y="-123.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::remove</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge5" class="edge">
<g id="edge5_Node000001_Node000005" class="edge">
<title>Node1&#45;&gt;Node5</title>
<g id="a_edge5_Node000001_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M140.8,-138.62C148.86,-137.7 157.09,-136.75 165.17,-135.82"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="165.53,-139.18 175.07,-134.56 164.73,-132.23 165.53,-139.18"/>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M465.35,-166.95C492.95,-167.56 524.9,-168.27 548.99,-168.8"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="548.71,-172.32 558.79,-169.04 548.87,-165.32 548.71,-172.32"/>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node3 -->
<g id="edge12" class="edge">
<g id="edge12_Node000005_Node000003" class="edge">
<title>Node5&#45;&gt;Node3</title>
<g id="a_edge12_Node000005_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M298.54,-130.36C346.61,-133.05 415.61,-138.03 475.5,-146.62 500.28,-150.18 527.84,-155.92 549.24,-160.77"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="548.29,-164.37 558.82,-163.21 549.86,-157.55 548.29,-164.37"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<g id="a_Node000006"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<polygon fill="white" stroke="#666666" points="475.5,-99.25 334.25,-99.25 334.25,-80 475.5,-80 475.5,-99.25"/>
<text text-anchor="middle" x="404.88" y="-85.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::doubleHash</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node6 -->
<g id="edge6" class="edge">
<g id="edge6_Node000005_Node000006" class="edge">
<title>Node5&#45;&gt;Node6</title>
<g id="a_edge6_Node000005_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M282.29,-117.54C302.95,-112.8 327.78,-107.1 349.6,-102.09"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="350.08,-105.34 359.04,-99.69 348.51,-98.52 350.08,-105.34"/>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node3 -->
<g id="edge7" class="edge">
<g id="edge7_Node000006_Node000003" class="edge">
<title>Node6&#45;&gt;Node3</title>
<g id="a_edge7_Node000006_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M445.7,-99.69C455.87,-103.23 466.47,-107.81 475.5,-113.62 495.06,-126.22 491.37,-139.97 511.5,-151.62 522.9,-158.22 536.63,-162.41 549.17,-165.07"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="548.34,-168.65 558.81,-167.02 549.6,-161.77 548.34,-168.65"/>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node4 -->
<g id="edge8" class="edge">
<g id="edge8_Node000006_Node000004" class="edge">
<title>Node6&#45;&gt;Node4</title>
<g id="a_edge8_Node000006_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M419.87,-79.58C439.47,-65.96 476.6,-41.72 511.5,-27.62 515.92,-25.84 520.57,-24.2 525.28,-22.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="526.07,-25.83 534.67,-19.65 524.09,-19.11 526.07,-25.83"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="node7" class="node">
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_node7"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<g id="a_Node000007"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<polygon fill="white" stroke="#666666" points="662.5,-56.25 511.5,-56.25 511.5,-37 662.5,-37 662.5,-56.25"/>
<text text-anchor="middle" x="587" y="-42.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::otherHashFxn</text>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node7 -->
<g id="edge9" class="edge">
<g id="edge9_Node000006_Node000007" class="edge">
<title>Node6&#45;&gt;Node7</title>
<g id="a_edge9_Node000006_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M448.11,-79.54C473.53,-73.47 506.13,-65.69 533.24,-59.22"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="533.81,-62.44 542.72,-56.72 532.18,-55.64 533.81,-62.44"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="node8" class="node">
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_node8"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<g id="a_Node000008"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="652.75,-142.25 521.25,-142.25 521.25,-123 652.75,-123 652.75,-142.25"/>
<text text-anchor="middle" x="587" y="-128.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::putProber</text>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node8 -->
<g id="edge10" class="edge">
<g id="edge10_Node000006_Node000008" class="edge">
<title>Node6&#45;&gt;Node8</title>
<g id="a_edge10_Node000006_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M448.11,-99.71C473.53,-105.78 506.13,-113.56 533.24,-120.03"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="532.18,-123.61 542.72,-122.53 533.81,-116.81 532.18,-123.61"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="node9" class="node">
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_node9"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<g id="a_Node000009"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="652.75,-104.88 521.25,-104.88 521.25,-74.38 652.75,-74.38 652.75,-104.88"/>
<text text-anchor="start" x="529.25" y="-91.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::searching</text>
<text text-anchor="middle" x="587" y="-80.12" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
@@ -157,10 +190,13 @@
</g>
</g>
<!-- Node6&#45;&gt;Node9 -->
<g id="edge11" class="edge">
<g id="edge11_Node000006_Node000009" class="edge">
<title>Node6&#45;&gt;Node9</title>
<g id="a_edge11_Node000006_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M475.77,-89.62C487.01,-89.62 498.7,-89.62 510.07,-89.62"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="509.86,-93.13 519.86,-89.62 509.86,-86.13 509.86,-93.13"/>
</a>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 8.6 KiB

After

Width:  |  Height:  |  Size: 9.8 KiB

View File

@@ -1,10 +1,19 @@
<map id="double_hashing::add" name="double_hashing::add">
<area shape="rect" id="node1" title=" " alt="" coords="5,19,146,44"/>
<area shape="rect" id="node2" href="$d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" title="Performs double hashing to resolve collisions." alt="" coords="194,80,382,106"/>
<area shape="rect" id="node8" href="$d0/d65/namespacedouble__hashing.html#af4981819aae8bc7e7beeaef02615e30d" title=" " alt="" coords="209,19,367,44"/>
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="495,5,566,31"/>
<area shape="rect" id="node4" href="$d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="446,55,615,80"/>
<area shape="rect" id="node5" href="$d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" title="Used for second hash function." alt="" coords="430,104,631,130"/>
<area shape="rect" id="node6" href="$d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" title=" " alt="" coords="443,153,618,179"/>
<area shape="rect" id="node7" href="$d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" title=" " alt="" coords="443,203,618,244"/>
<area shape="rect" id="Node000001" title=" " alt="" coords="5,19,146,44"/>
<area shape="rect" id="Node000002" href="$d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" title="Performs double hashing to resolve collisions." alt="" coords="194,80,382,106"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="124,42,228,73,226,78,122,48"/>
<area shape="rect" id="Node000008" href="$d0/d65/namespacedouble__hashing.html#af4981819aae8bc7e7beeaef02615e30d" title=" " alt="" coords="209,19,367,44"/>
<area shape="poly" id="edge7_Node000001_Node000008" title=" " alt="" coords="146,37,194,38,194,43,146,43"/>
<area shape="rect" id="Node000003" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="495,5,566,31"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="322,77,429,40,480,26,481,31,431,45,324,82"/>
<area shape="rect" id="Node000004" href="$d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="446,55,615,80"/>
<area shape="poly" id="edge3_Node000002_Node000004" title=" " alt="" coords="382,80,431,75,431,81,383,86"/>
<area shape="rect" id="Node000005" href="$d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" title="Used for second hash function." alt="" coords="430,104,631,130"/>
<area shape="poly" id="edge4_Node000002_Node000005" title=" " alt="" coords="383,99,415,103,415,108,382,105"/>
<area shape="rect" id="Node000006" href="$d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" title=" " alt="" coords="443,153,618,179"/>
<area shape="poly" id="edge5_Node000002_Node000006" title=" " alt="" coords="325,104,431,140,457,147,455,152,429,145,323,109"/>
<area shape="rect" id="Node000007" href="$d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" title=" " alt="" coords="443,203,618,244"/>
<area shape="poly" id="edge6_Node000002_Node000007" title=" " alt="" coords="306,104,360,145,431,189,443,195,441,200,429,194,357,150,303,108"/>
<area shape="poly" id="edge8_Node000008_Node000001" title=" " alt="" coords="208,25,160,25,160,20,208,20"/>
<area shape="poly" id="edge9_Node000008_Node000003" title=" " alt="" coords="367,25,480,18,480,24,367,30"/>
</map>

View File

@@ -1 +1 @@
bd918c286441951bdddbfb4b0ed9cfa9
dd5772442b12e80e9c4e82e78012a2ff

View File

@@ -6,111 +6,139 @@
<!-- Title: double_hashing::add Pages: 1 -->
<svg width="478pt" height="187pt"
viewBox="0.00 0.00 477.50 186.88" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
<style type="text/css"><![CDATA[
.node, .edge {opacity: 0.7;}
.node.selected, .edge.selected {opacity: 1;}
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<script type="application/ecmascript" xlink:href="../../svg.min.js"/>
<svg id="graph" class="graph">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 182.88)">
<title>double_hashing::add</title>
<!-- Node1 -->
<g id="node1" class="node">
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="105.25,-168.88 0,-168.88 0,-149.62 105.25,-149.62 105.25,-168.88"/>
<text text-anchor="middle" x="52.62" y="-155.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::add</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<g id="a_Node000002"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<polygon fill="white" stroke="#666666" points="282.5,-122.88 141.25,-122.88 141.25,-103.62 282.5,-103.62 282.5,-122.88"/>
<text text-anchor="middle" x="211.88" y="-109.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::doubleHash</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M88.13,-149.16C111.08,-142.44 141.43,-133.57 166.21,-126.32"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="166.83,-129.49 175.45,-123.32 164.87,-122.77 166.83,-129.49"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="node8" class="node">
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_node8"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#af4981819aae8bc7e7beeaef02615e30d" target="_top" xlink:title=" ">
<g id="a_Node000008"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#af4981819aae8bc7e7beeaef02615e30d" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="271.25,-168.88 152.5,-168.88 152.5,-149.62 271.25,-149.62 271.25,-168.88"/>
<text text-anchor="middle" x="211.88" y="-155.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::rehash</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node8 -->
<g id="edge7" class="edge">
<g id="edge7_Node000001_Node000008" class="edge">
<title>Node1&#45;&gt;Node8</title>
<g id="a_edge7_Node000001_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M105.55,-152.86C116.99,-152.54 129.28,-152.43 141.29,-152.54"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="141.16,-156.05 151.21,-152.7 141.26,-149.05 141.16,-156.05"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<g id="a_Node000003"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="420.75,-178.88 367.25,-178.88 367.25,-159.62 420.75,-159.62 420.75,-178.88"/>
<text text-anchor="middle" x="394" y="-165.38" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M238.23,-123.25C259.47,-131.41 290.68,-142.91 318.5,-151.25 330.7,-154.91 344.19,-158.34 356.3,-161.22"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="355.42,-164.84 365.96,-163.69 357,-158.02 355.42,-164.84"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_node4"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<g id="a_Node000004"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="#666666" points="457.5,-141.88 330.5,-141.88 330.5,-122.62 457.5,-122.62 457.5,-141.88"/>
<text text-anchor="middle" x="394" y="-128.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::hashFxn</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<g id="edge3_Node000002_Node000004" class="edge">
<title>Node2&#45;&gt;Node4</title>
<g id="a_edge3_Node000002_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M282.77,-120.62C294.74,-121.88 307.2,-123.2 319.26,-124.47"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="318.88,-128.06 329.19,-125.63 319.62,-121.1 318.88,-128.06"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<g id="a_Node000005"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<polygon fill="white" stroke="#666666" points="469.5,-104.88 318.5,-104.88 318.5,-85.62 469.5,-85.62 469.5,-104.88"/>
<text text-anchor="middle" x="394" y="-91.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::otherHashFxn</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<g id="edge4_Node000002_Node000005" class="edge">
<title>Node2&#45;&gt;Node5</title>
<g id="a_edge4_Node000002_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M282.77,-106.26C290.82,-105.46 299.09,-104.63 307.31,-103.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="307.47,-107.21 317.07,-102.74 306.77,-100.25 307.47,-107.21"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<g id="a_Node000006"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="459.75,-67.88 328.25,-67.88 328.25,-48.62 459.75,-48.62 459.75,-67.88"/>
<text text-anchor="middle" x="394" y="-54.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::putProber</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<g id="edge5_Node000002_Node000006" class="edge">
<title>Node2&#45;&gt;Node6</title>
<g id="a_edge5_Node000002_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M239.12,-103.24C260.34,-95.34 291.11,-84.34 318.5,-76.25 324.78,-74.4 331.4,-72.59 338,-70.88"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="338.45,-74.12 347.29,-68.28 336.74,-67.34 338.45,-74.12"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="node7" class="node">
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_node7"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<g id="a_Node000007"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="459.75,-30.5 328.25,-30.5 328.25,0 459.75,0 459.75,-30.5"/>
<text text-anchor="start" x="336.25" y="-17" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::searching</text>
<text text-anchor="middle" x="394" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
@@ -118,22 +146,46 @@
</g>
</g>
<!-- Node2&#45;&gt;Node7 -->
<g id="edge6" class="edge">
<g id="edge6_Node000002_Node000007" class="edge">
<title>Node2&#45;&gt;Node7</title>
<g id="a_edge6_Node000002_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M224.49,-103.33C243.18,-87.8 281.61,-57.59 318.5,-39.25 321.45,-37.78 324.5,-36.38 327.62,-35.04"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="328.76,-37.96 336.73,-30.99 326.15,-31.46 328.76,-37.96"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node1 -->
<g id="edge8" class="edge">
<g id="edge8_Node000008_Node000001" class="edge">
<title>Node8&#45;&gt;Node1</title>
<g id="a_edge8_Node000008_Node000001"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M152.21,-165.8C140.48,-166.04 128.12,-166.06 116.26,-165.87"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="116.62,-162.36 106.55,-165.64 116.47,-169.36 116.62,-162.36"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node3 -->
<g id="edge9" class="edge">
<g id="edge9_Node000008_Node000003" class="edge">
<title>Node8&#45;&gt;Node3</title>
<g id="a_edge9_Node000008_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M271.36,-162.5C299.2,-164.04 331.66,-165.84 356.04,-167.2"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="355.79,-170.74 365.97,-167.8 356.18,-163.76 355.79,-170.74"/>
</a>
</g>
</g>
</g>
</svg>
</svg>
<style type='text/css'>
<![CDATA[
[data-mouse-over-selected='false'] { opacity: 0.7; }
[data-mouse-over-selected='true'] { opacity: 1.0; }
]]>
</style>
<script type="application/ecmascript"><![CDATA[
document.addEventListener('DOMContentLoaded', (event) => {
highlightEdges();
highlightAdjacentNodes();
});
]]></script>
</svg>

Before

Width:  |  Height:  |  Size: 7.1 KiB

After

Width:  |  Height:  |  Size: 8.8 KiB

View File

@@ -0,0 +1,166 @@
<?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 8.0.5 (20230430.1635)
-->
<!-- Title: double_hashing::add Pages: 1 -->
<svg width="478pt" height="187pt"
viewBox="0.00 0.00 477.50 186.88" 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 182.88)">
<title>double_hashing::add</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="105.25,-168.88 0,-168.88 0,-149.62 105.25,-149.62 105.25,-168.88"/>
<text text-anchor="middle" x="52.62" y="-155.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::add</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<polygon fill="white" stroke="#666666" points="282.5,-122.88 141.25,-122.88 141.25,-103.62 282.5,-103.62 282.5,-122.88"/>
<text text-anchor="middle" x="211.88" y="-109.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::doubleHash</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M88.13,-149.16C111.08,-142.44 141.43,-133.57 166.21,-126.32"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="166.83,-129.49 175.45,-123.32 164.87,-122.77 166.83,-129.49"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_Node000008"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#af4981819aae8bc7e7beeaef02615e30d" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="271.25,-168.88 152.5,-168.88 152.5,-149.62 271.25,-149.62 271.25,-168.88"/>
<text text-anchor="middle" x="211.88" y="-155.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::rehash</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node8 -->
<g id="edge7_Node000001_Node000008" class="edge">
<title>Node1&#45;&gt;Node8</title>
<g id="a_edge7_Node000001_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M105.55,-152.86C116.99,-152.54 129.28,-152.43 141.29,-152.54"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="141.16,-156.05 151.21,-152.7 141.26,-149.05 141.16,-156.05"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="420.75,-178.88 367.25,-178.88 367.25,-159.62 420.75,-159.62 420.75,-178.88"/>
<text text-anchor="middle" x="394" y="-165.38" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M238.23,-123.25C259.47,-131.41 290.68,-142.91 318.5,-151.25 330.7,-154.91 344.19,-158.34 356.3,-161.22"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="355.42,-164.84 365.96,-163.69 357,-158.02 355.42,-164.84"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="#666666" points="457.5,-141.88 330.5,-141.88 330.5,-122.62 457.5,-122.62 457.5,-141.88"/>
<text text-anchor="middle" x="394" y="-128.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::hashFxn</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node4 -->
<g id="edge3_Node000002_Node000004" class="edge">
<title>Node2&#45;&gt;Node4</title>
<g id="a_edge3_Node000002_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M282.77,-120.62C294.74,-121.88 307.2,-123.2 319.26,-124.47"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="318.88,-128.06 329.19,-125.63 319.62,-121.1 318.88,-128.06"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_Node000005"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<polygon fill="white" stroke="#666666" points="469.5,-104.88 318.5,-104.88 318.5,-85.62 469.5,-85.62 469.5,-104.88"/>
<text text-anchor="middle" x="394" y="-91.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::otherHashFxn</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node5 -->
<g id="edge4_Node000002_Node000005" class="edge">
<title>Node2&#45;&gt;Node5</title>
<g id="a_edge4_Node000002_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M282.77,-106.26C290.82,-105.46 299.09,-104.63 307.31,-103.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="307.47,-107.21 317.07,-102.74 306.77,-100.25 307.47,-107.21"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_Node000006"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="459.75,-67.88 328.25,-67.88 328.25,-48.62 459.75,-48.62 459.75,-67.88"/>
<text text-anchor="middle" x="394" y="-54.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::putProber</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node6 -->
<g id="edge5_Node000002_Node000006" class="edge">
<title>Node2&#45;&gt;Node6</title>
<g id="a_edge5_Node000002_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M239.12,-103.24C260.34,-95.34 291.11,-84.34 318.5,-76.25 324.78,-74.4 331.4,-72.59 338,-70.88"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="338.45,-74.12 347.29,-68.28 336.74,-67.34 338.45,-74.12"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_Node000007"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="459.75,-30.5 328.25,-30.5 328.25,0 459.75,0 459.75,-30.5"/>
<text text-anchor="start" x="336.25" y="-17" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::searching</text>
<text text-anchor="middle" x="394" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node7 -->
<g id="edge6_Node000002_Node000007" class="edge">
<title>Node2&#45;&gt;Node7</title>
<g id="a_edge6_Node000002_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M224.49,-103.33C243.18,-87.8 281.61,-57.59 318.5,-39.25 321.45,-37.78 324.5,-36.38 327.62,-35.04"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="328.76,-37.96 336.73,-30.99 326.15,-31.46 328.76,-37.96"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node1 -->
<g id="edge8_Node000008_Node000001" class="edge">
<title>Node8&#45;&gt;Node1</title>
<g id="a_edge8_Node000008_Node000001"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M152.21,-165.8C140.48,-166.04 128.12,-166.06 116.26,-165.87"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="116.62,-162.36 106.55,-165.64 116.47,-169.36 116.62,-162.36"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node3 -->
<g id="edge9_Node000008_Node000003" class="edge">
<title>Node8&#45;&gt;Node3</title>
<g id="a_edge9_Node000008_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M271.36,-162.5C299.2,-164.04 331.66,-165.84 356.04,-167.2"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="355.79,-170.74 365.97,-167.8 356.18,-163.76 355.79,-170.74"/>
</a>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 8.0 KiB

View File

@@ -1,8 +1,13 @@
<map id="double_hashing::doubleHash" name="double_hashing::doubleHash">
<area shape="rect" id="node1" title="Performs double hashing to resolve collisions." alt="" coords="5,104,194,130"/>
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="307,5,378,31"/>
<area shape="rect" id="node3" href="$d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="258,55,427,80"/>
<area shape="rect" id="node4" href="$d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" title="Used for second hash function." alt="" coords="242,104,443,130"/>
<area shape="rect" id="node5" href="$d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" title=" " alt="" coords="255,153,430,179"/>
<area shape="rect" id="node6" href="$d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" title=" " alt="" coords="255,203,430,244"/>
<area shape="rect" id="Node000001" title="Performs double hashing to resolve collisions." alt="" coords="5,104,194,130"/>
<area shape="rect" id="Node000002" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="307,5,378,31"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="121,101,174,71,241,40,292,25,293,30,243,45,176,75,123,106"/>
<area shape="rect" id="Node000003" href="$d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="258,55,427,80"/>
<area shape="poly" id="edge2_Node000001_Node000003" title=" " alt="" coords="166,101,261,81,262,87,167,106"/>
<area shape="rect" id="Node000004" href="$d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" title="Used for second hash function." alt="" coords="242,104,443,130"/>
<area shape="poly" id="edge3_Node000001_Node000004" title=" " alt="" coords="194,114,227,114,227,120,194,120"/>
<area shape="rect" id="Node000005" href="$d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" title=" " alt="" coords="255,153,430,179"/>
<area shape="poly" id="edge4_Node000001_Node000005" title=" " alt="" coords="167,128,262,147,261,152,166,133"/>
<area shape="rect" id="Node000006" href="$d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" title=" " alt="" coords="255,203,430,244"/>
<area shape="poly" id="edge5_Node000001_Node000006" title=" " alt="" coords="124,128,178,158,243,189,258,195,256,200,241,194,175,162,122,133"/>
</map>

View File

@@ -1 +1 @@
f046b72fe12601a79795c6cc876d9858
15d7d83c986987a70013716a341866af

View File

@@ -6,81 +6,103 @@
<!-- Title: double_hashing::doubleHash Pages: 1 -->
<svg width="336pt" height="187pt"
viewBox="0.00 0.00 336.25 186.88" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
<style type="text/css"><![CDATA[
.node, .edge {opacity: 0.7;}
.node.selected, .edge.selected {opacity: 1;}
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<script type="application/ecmascript" xlink:href="../../svg.min.js"/>
<svg id="graph" class="graph">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 182.88)">
<title>double_hashing::doubleHash</title>
<!-- Node1 -->
<g id="node1" class="node">
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title="Performs double hashing to resolve collisions.">
<g id="a_Node000001"><a xlink:title="Performs double hashing to resolve collisions.">
<polygon fill="#999999" stroke="#666666" points="141.25,-104.88 0,-104.88 0,-85.62 141.25,-85.62 141.25,-104.88"/>
<text text-anchor="middle" x="70.62" y="-91.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::doubleHash</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<g id="a_Node000002"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="279.5,-178.88 226,-178.88 226,-159.62 279.5,-159.62 279.5,-178.88"/>
<text text-anchor="middle" x="252.75" y="-165.38" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M87.5,-105.29C107.66,-117.67 143.87,-138.6 177.25,-151.25 189.38,-155.85 203.07,-159.55 215.37,-162.38"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="214.24,-165.93 224.76,-164.64 215.73,-159.09 214.24,-165.93"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_node3"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<g id="a_Node000003"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="#666666" points="316.25,-141.88 189.25,-141.88 189.25,-122.62 316.25,-122.62 316.25,-141.88"/>
<text text-anchor="middle" x="252.75" y="-128.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::hashFxn</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<g id="edge2_Node000001_Node000003" class="edge">
<title>Node1&#45;&gt;Node3</title>
<g id="a_edge2_Node000001_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M120.84,-105.36C142.79,-109.87 168.83,-115.22 191.89,-119.95"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="191.09,-123.57 201.59,-122.15 192.5,-116.71 191.09,-123.57"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_node4"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<g id="a_Node000004"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<polygon fill="white" stroke="#666666" points="328.25,-104.88 177.25,-104.88 177.25,-85.62 328.25,-85.62 328.25,-104.88"/>
<text text-anchor="middle" x="252.75" y="-91.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::otherHashFxn</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<g id="edge3_Node000001_Node000004" class="edge">
<title>Node1&#45;&gt;Node4</title>
<g id="a_edge3_Node000001_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M141.52,-95.25C149.57,-95.25 157.84,-95.25 166.06,-95.25"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="165.82,-98.75 175.82,-95.25 165.82,-91.75 165.82,-98.75"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<g id="a_Node000005"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="318.5,-67.88 187,-67.88 187,-48.62 318.5,-48.62 318.5,-67.88"/>
<text text-anchor="middle" x="252.75" y="-54.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::putProber</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<g id="edge4_Node000001_Node000005" class="edge">
<title>Node1&#45;&gt;Node5</title>
<g id="a_edge4_Node000001_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M120.84,-85.14C142.79,-80.63 168.83,-75.28 191.89,-70.55"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="192.5,-73.79 201.59,-68.35 191.09,-66.93 192.5,-73.79"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<g id="a_Node000006"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="318.5,-30.5 187,-30.5 187,0 318.5,0 318.5,-30.5"/>
<text text-anchor="start" x="195" y="-17" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::searching</text>
<text text-anchor="middle" x="252.75" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
@@ -88,10 +110,28 @@
</g>
</g>
<!-- Node1&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<g id="edge5_Node000001_Node000006" class="edge">
<title>Node1&#45;&gt;Node6</title>
<g id="a_edge5_Node000001_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M88.37,-85.18C108.83,-73.17 144.75,-52.98 177.25,-39.25 181.08,-37.63 185.07,-36.06 189.11,-34.54"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="190,-37.57 198.22,-30.89 187.63,-30.99 190,-37.57"/>
</a>
</g>
</g>
</g>
</svg>
</svg>
<style type='text/css'>
<![CDATA[
[data-mouse-over-selected='false'] { opacity: 0.7; }
[data-mouse-over-selected='true'] { opacity: 1.0; }
]]>
</style>
<script type="application/ecmascript"><![CDATA[
document.addEventListener('DOMContentLoaded', (event) => {
highlightEdges();
highlightAdjacentNodes();
});
]]></script>
</svg>

Before

Width:  |  Height:  |  Size: 5.0 KiB

After

Width:  |  Height:  |  Size: 6.2 KiB

View File

@@ -0,0 +1,112 @@
<?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 8.0.5 (20230430.1635)
-->
<!-- Title: double_hashing::doubleHash Pages: 1 -->
<svg width="336pt" height="187pt"
viewBox="0.00 0.00 336.25 186.88" 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 182.88)">
<title>double_hashing::doubleHash</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="Performs double hashing to resolve collisions.">
<polygon fill="#999999" stroke="#666666" points="141.25,-104.88 0,-104.88 0,-85.62 141.25,-85.62 141.25,-104.88"/>
<text text-anchor="middle" x="70.62" y="-91.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::doubleHash</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="279.5,-178.88 226,-178.88 226,-159.62 279.5,-159.62 279.5,-178.88"/>
<text text-anchor="middle" x="252.75" y="-165.38" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M87.5,-105.29C107.66,-117.67 143.87,-138.6 177.25,-151.25 189.38,-155.85 203.07,-159.55 215.37,-162.38"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="214.24,-165.93 224.76,-164.64 215.73,-159.09 214.24,-165.93"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="#666666" points="316.25,-141.88 189.25,-141.88 189.25,-122.62 316.25,-122.62 316.25,-141.88"/>
<text text-anchor="middle" x="252.75" y="-128.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::hashFxn</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge2_Node000001_Node000003" class="edge">
<title>Node1&#45;&gt;Node3</title>
<g id="a_edge2_Node000001_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M120.84,-105.36C142.79,-109.87 168.83,-115.22 191.89,-119.95"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="191.09,-123.57 201.59,-122.15 192.5,-116.71 191.09,-123.57"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<polygon fill="white" stroke="#666666" points="328.25,-104.88 177.25,-104.88 177.25,-85.62 328.25,-85.62 328.25,-104.88"/>
<text text-anchor="middle" x="252.75" y="-91.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::otherHashFxn</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge3_Node000001_Node000004" class="edge">
<title>Node1&#45;&gt;Node4</title>
<g id="a_edge3_Node000001_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M141.52,-95.25C149.57,-95.25 157.84,-95.25 166.06,-95.25"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="165.82,-98.75 175.82,-95.25 165.82,-91.75 165.82,-98.75"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_Node000005"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="318.5,-67.88 187,-67.88 187,-48.62 318.5,-48.62 318.5,-67.88"/>
<text text-anchor="middle" x="252.75" y="-54.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::putProber</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge4_Node000001_Node000005" class="edge">
<title>Node1&#45;&gt;Node5</title>
<g id="a_edge4_Node000001_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M120.84,-85.14C142.79,-80.63 168.83,-75.28 191.89,-70.55"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="192.5,-73.79 201.59,-68.35 191.09,-66.93 192.5,-73.79"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_Node000006"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="318.5,-30.5 187,-30.5 187,0 318.5,0 318.5,-30.5"/>
<text text-anchor="start" x="195" y="-17" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::searching</text>
<text text-anchor="middle" x="252.75" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node6 -->
<g id="edge5_Node000001_Node000006" class="edge">
<title>Node1&#45;&gt;Node6</title>
<g id="a_edge5_Node000001_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M88.37,-85.18C108.83,-73.17 144.75,-52.98 177.25,-39.25 181.08,-37.63 185.07,-36.06 189.11,-34.54"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="190,-37.57 198.22,-30.89 187.63,-30.99 190,-37.57"/>
</a>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.5 KiB

View File

@@ -1,12 +1,26 @@
<map id="double_hashing::addInfo" name="double_hashing::addInfo">
<area shape="rect" id="node1" title=" " alt="" coords="5,81,168,107"/>
<area shape="rect" id="node2" href="$d0/d65/namespacedouble__hashing.html#a79a9c914a6c68275b3640303d7faad8a" title=" " alt="" coords="226,107,366,132"/>
<area shape="rect" id="node4" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="725,41,797,67"/>
<area shape="rect" id="node5" href="$d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="676,255,846,280"/>
<area shape="rect" id="node10" href="$d0/d65/namespacedouble__hashing.html#a1e901418c759627557eff359b8db38cd" title=" " alt="" coords="216,5,376,31"/>
<area shape="rect" id="node3" href="$d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" title="Performs double hashing to resolve collisions." alt="" coords="424,156,612,182"/>
<area shape="rect" id="node9" href="$d0/d65/namespacedouble__hashing.html#af4981819aae8bc7e7beeaef02615e30d" title=" " alt="" coords="439,107,597,132"/>
<area shape="rect" id="node6" href="$d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" title="Used for second hash function." alt="" coords="660,156,862,182"/>
<area shape="rect" id="node7" href="$d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" title=" " alt="" coords="673,205,849,231"/>
<area shape="rect" id="node8" href="$d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" title=" " alt="" coords="673,91,849,132"/>
<area shape="rect" id="Node000001" title=" " alt="" coords="5,81,168,107"/>
<area shape="rect" id="Node000002" href="$d0/d65/namespacedouble__hashing.html#a79a9c914a6c68275b3640303d7faad8a" title=" " alt="" coords="226,107,366,132"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="169,101,211,107,211,112,168,107"/>
<area shape="rect" id="Node000004" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="725,41,797,67"/>
<area shape="poly" id="edge13_Node000001_Node000004" title=" " alt="" coords="168,87,710,54,711,60,168,92"/>
<area shape="rect" id="Node000005" href="$d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="676,255,846,280"/>
<area shape="poly" id="edge14_Node000001_Node000005" title=" " alt="" coords="119,105,217,142,337,177,459,206,667,249,666,254,458,212,336,182,215,147,117,110"/>
<area shape="rect" id="Node000010" href="$d0/d65/namespacedouble__hashing.html#a1e901418c759627557eff359b8db38cd" title=" " alt="" coords="216,5,376,31"/>
<area shape="poly" id="edge11_Node000001_Node000010" title=" " alt="" coords="123,78,244,34,245,39,125,83"/>
<area shape="rect" id="Node000003" href="$d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" title="Performs double hashing to resolve collisions." alt="" coords="424,156,612,182"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="358,130,443,150,442,155,357,136"/>
<area shape="rect" id="Node000009" href="$d0/d65/namespacedouble__hashing.html#af4981819aae8bc7e7beeaef02615e30d" title=" " alt="" coords="439,107,597,132"/>
<area shape="poly" id="edge8_Node000002_Node000009" title=" " alt="" coords="366,125,424,126,424,131,366,131"/>
<area shape="poly" id="edge3_Node000003_Node000004" title=" " alt="" coords="591,153,611,143,626,127,634,111,642,94,659,77,684,65,710,57,711,62,686,70,662,82,647,97,639,113,630,130,614,147,593,158"/>
<area shape="poly" id="edge4_Node000003_Node000005" title=" " alt="" coords="542,180,595,210,661,241,681,248,679,253,659,246,593,215,539,185"/>
<area shape="rect" id="Node000006" href="$d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" title="Used for second hash function." alt="" coords="660,156,862,182"/>
<area shape="poly" id="edge5_Node000003_Node000006" title=" " alt="" coords="613,166,645,166,645,172,613,172"/>
<area shape="rect" id="Node000007" href="$d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" title=" " alt="" coords="673,205,849,231"/>
<area shape="poly" id="edge6_Node000003_Node000007" title=" " alt="" coords="586,180,680,199,679,204,585,185"/>
<area shape="rect" id="Node000008" href="$d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" title=" " alt="" coords="673,91,849,132"/>
<area shape="poly" id="edge7_Node000003_Node000008" title=" " alt="" coords="575,153,658,133,659,138,576,158"/>
<area shape="poly" id="edge9_Node000009_Node000002" title=" " alt="" coords="439,114,380,113,380,108,439,108"/>
<area shape="poly" id="edge10_Node000009_Node000004" title=" " alt="" coords="565,103,660,77,710,64,711,69,661,82,566,109"/>
<area shape="poly" id="edge12_Node000010_Node000004" title=" " alt="" coords="376,22,710,48,710,53,376,27"/>
</map>

View File

@@ -1 +1 @@
f87f04265f1d8e8bdd32c2a3c57e1d50
1f73cc937ca8cbcfec637939c1afec7b

View File

@@ -5,200 +5,230 @@
-->
<!-- Title: double_hashing::addInfo Pages: 1 -->
<!--zoomable 214 -->
<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[
.node, .edge {opacity: 0.7;}
.node.selected, .edge.selected {opacity: 1;}
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<script type="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">
<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="arrowUp" transform="translate(30 24)">
<use xlink:href="#rim"/>
<path pointer-events="none" 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" transform="rotate(90) translate(36 -43)">
<use xlink:href="#rim"/>
<path pointer-events="none" 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" transform="rotate(180) translate(-30 -48)">
<use xlink:href="#rim"/>
<path pointer-events="none" 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" transform="rotate(270) translate(-36 17)">
<use xlink:href="#rim"/>
<path pointer-events="none" 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="application/ecmascript">
var viewWidth = 650;
var viewHeight = 214;
var sectionId = 'dynsection-1';
</script>
<script xlink:href="../../svgpan.js"/>
<script type="application/ecmascript" xlink:href="../../svg.min.js"/>
<svg id="graph" class="graph">
<g id="viewport">
<title>double_hashing::addInfo</title>
<!-- Node1 -->
<g id="node1" class="node">
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="121.75,-149.25 0,-149.25 0,-130 121.75,-130 121.75,-149.25"/>
<text text-anchor="middle" x="60.88" y="-135.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::addInfo</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a79a9c914a6c68275b3640303d7faad8a" target="_top" xlink:title=" ">
<g id="a_Node000002"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a79a9c914a6c68275b3640303d7faad8a" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="270.5,-130.25 165.25,-130.25 165.25,-111 270.5,-111 270.5,-130.25"/>
<text text-anchor="middle" x="217.88" y="-116.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::add</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M122.25,-132.22C132.72,-130.94 143.63,-129.6 154.16,-128.31"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="154.47,-131.68 163.97,-126.99 153.62,-124.73 154.47,-131.68"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_node4"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<g id="a_Node000004"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="593.5,-179.25 540,-179.25 540,-160 593.5,-160 593.5,-179.25"/>
<text text-anchor="middle" x="566.75" y="-165.75" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge13" class="edge">
<g id="edge13_Node000001_Node000004" class="edge">
<title>Node1&#45;&gt;Node4</title>
<g id="a_edge13_Node000001_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M122.15,-143.21C227.65,-149.5 442.73,-162.3 528.87,-167.43"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="528.48,-170.97 538.67,-168.07 528.89,-163.98 528.48,-170.97"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<g id="a_Node000005"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="#666666" points="630.25,-19.25 503.25,-19.25 503.25,0 630.25,0 630.25,-19.25"/>
<text text-anchor="middle" x="566.75" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::hashFxn</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge14" class="edge">
<g id="edge14_Node000001_Node000005" class="edge">
<title>Node1&#45;&gt;Node5</title>
<g id="a_edge14_Node000001_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M84.4,-129.62C103.62,-121.35 132.13,-109.69 157.75,-101.62 274.41,-64.9 414.18,-36.68 496.15,-21.66"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="496.62,-24.95 505.83,-19.72 495.37,-18.07 496.62,-24.95"/>
</a>
</g>
</g>
<!-- Node10 -->
<g id="node10" class="node">
<g id="Node000010" class="node">
<title>Node10</title>
<g id="a_node10"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a1e901418c759627557eff359b8db38cd" target="_top" xlink:title=" ">
<g id="a_Node000010"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a1e901418c759627557eff359b8db38cd" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="278,-206.25 157.75,-206.25 157.75,-187 278,-187 278,-206.25"/>
<text text-anchor="middle" x="217.88" y="-192.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::display</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node10 -->
<g id="edge11" class="edge">
<g id="edge11_Node000001_Node000010" class="edge">
<title>Node1&#45;&gt;Node10</title>
<g id="a_edge11_Node000001_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M89.23,-149.68C114.27,-158.89 151.57,-172.61 179.38,-182.84"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="177.94,-186.4 188.53,-186.57 180.36,-179.83 177.94,-186.4"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_node3"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<g id="a_Node000003"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<polygon fill="white" stroke="#666666" points="455.25,-93.25 314,-93.25 314,-74 455.25,-74 455.25,-93.25"/>
<text text-anchor="middle" x="384.62" y="-79.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::doubleHash</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M263.89,-110.51C283.69,-106.07 307.14,-100.8 328.01,-96.11"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="328.67,-99.33 337.66,-93.72 327.14,-92.5 328.67,-99.33"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="node9" class="node">
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_node9"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#af4981819aae8bc7e7beeaef02615e30d" target="_top" xlink:title=" ">
<g id="a_Node000009"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#af4981819aae8bc7e7beeaef02615e30d" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="444,-130.25 325.25,-130.25 325.25,-111 444,-111 444,-130.25"/>
<text text-anchor="middle" x="384.62" y="-116.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::rehash</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node9 -->
<g id="edge8" class="edge">
<g id="edge8_Node000002_Node000009" class="edge">
<title>Node2&#45;&gt;Node9</title>
<g id="a_edge8_Node000002_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M270.55,-114.31C284.31,-113.9 299.41,-113.78 313.96,-113.95"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="313.9,-117.46 323.95,-114.13 314.01,-110.46 313.9,-117.46"/>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<g id="edge3_Node000003_Node000004" class="edge">
<title>Node3&#45;&gt;Node4</title>
<g id="a_edge3_Node000003_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M440.07,-93.73C445.43,-95.88 450.6,-98.48 455.25,-101.62 477.63,-116.77 468.85,-135.51 491.25,-150.62 502.38,-158.13 516.26,-162.67 529.01,-165.42"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="528.36,-169.04 538.83,-167.4 529.62,-162.16 528.36,-169.04"/>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<g id="edge4_Node000003_Node000005" class="edge">
<title>Node3&#45;&gt;Node5</title>
<g id="a_edge4_Node000003_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M401.5,-73.58C421.66,-61.21 457.87,-40.28 491.25,-27.62 495.98,-25.83 500.94,-24.18 505.97,-22.65"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="506.66,-25.81 515.33,-19.72 504.75,-19.08 506.66,-25.81"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<g id="a_Node000006"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<polygon fill="white" stroke="#666666" points="642.25,-93.25 491.25,-93.25 491.25,-74 642.25,-74 642.25,-93.25"/>
<text text-anchor="middle" x="566.75" y="-79.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::otherHashFxn</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<g id="edge5_Node000003_Node000006" class="edge">
<title>Node3&#45;&gt;Node6</title>
<g id="a_edge5_Node000003_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M455.52,-83.62C463.57,-83.62 471.84,-83.62 480.06,-83.62"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="479.82,-87.13 489.82,-83.62 479.82,-80.13 479.82,-87.13"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="node7" class="node">
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_node7"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<g id="a_Node000007"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="632.5,-56.25 501,-56.25 501,-37 632.5,-37 632.5,-56.25"/>
<text text-anchor="middle" x="566.75" y="-42.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::putProber</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node7 -->
<g id="edge6" class="edge">
<g id="edge6_Node000003_Node000007" class="edge">
<title>Node3&#45;&gt;Node7</title>
<g id="a_edge6_Node000003_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M434.84,-73.51C456.79,-69.01 482.83,-63.66 505.89,-58.92"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="506.5,-62.16 515.59,-56.72 505.09,-55.31 506.5,-62.16"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="node8" class="node">
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_node8"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<g id="a_Node000008"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="632.5,-141.88 501,-141.88 501,-111.38 632.5,-111.38 632.5,-141.88"/>
<text text-anchor="start" x="509" y="-128.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::searching</text>
<text text-anchor="middle" x="566.75" y="-117.12" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
@@ -206,70 +236,76 @@ var sectionId = 'dynsection-1';
</g>
</g>
<!-- Node3&#45;&gt;Node8 -->
<g id="edge7" class="edge">
<g id="edge7_Node000003_Node000008" class="edge">
<title>Node3&#45;&gt;Node8</title>
<g id="a_edge7_Node000003_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M427.86,-93.71C446.36,-98.12 468.66,-103.45 489.87,-108.51"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="488.97,-112.13 499.51,-111.05 490.6,-105.33 488.97,-112.13"/>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node2 -->
<g id="edge9" class="edge">
<g id="edge9_Node000009_Node000002" class="edge">
<title>Node9&#45;&gt;Node2</title>
<g id="a_edge9_Node000009_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M324.95,-127.12C310.8,-127.43 295.62,-127.46 281.3,-127.2"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="281.63,-123.68 271.55,-126.94 281.46,-130.68 281.63,-123.68"/>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node4 -->
<g id="edge10" class="edge">
<g id="edge10_Node000009_Node000004" class="edge">
<title>Node9&#45;&gt;Node4</title>
<g id="a_edge10_Node000009_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M420.29,-130.73C440.87,-136.66 467.51,-144.23 491.25,-150.62 503.49,-153.92 516.89,-157.39 528.92,-160.44"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="527.95,-164.06 538.5,-163.11 529.66,-157.27 527.95,-164.06"/>
</a>
</g>
</g>
<!-- Node10&#45;&gt;Node4 -->
<g id="edge12" class="edge">
<g id="edge12_Node000010_Node000004" class="edge">
<title>Node10&#45;&gt;Node4</title>
<g id="a_edge12_Node000010_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M278.11,-192.01C349.92,-186.43 468.73,-177.18 528.7,-172.51"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="528.83,-175.93 538.53,-171.67 528.29,-168.95 528.83,-175.93"/>
</a>
</g>
</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="namespacedouble__hashing_a9c652b2e467e5d250dfe3bed83b12560_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>
<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()"/>
<use id="arrowup" xlink:href="#arrowUp" x="0" y="0" onmousedown="handlePan(0,-1)"/>
<use id="arrowright" xlink:href="#arrowRight" x="0" y="0" onmousedown="handlePan(1,0)"/>
<use id="arrowdown" xlink:href="#arrowDown" x="0" y="0" onmousedown="handlePan(0,1)"/>
<use id="arrowleft" xlink:href="#arrowLeft" x="0" y="0" onmousedown="handlePan(-1,0)"/>
</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="namespacedouble__hashing_a9c652b2e467e5d250dfe3bed83b12560_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>
<style type='text/css'>
<![CDATA[
[data-mouse-over-selected='false'] { opacity: 0.7; }
[data-mouse-over-selected='true'] { opacity: 1.0; }
]]>
</style>
<script type="application/ecmascript"><![CDATA[
document.addEventListener('DOMContentLoaded', (event) => {
highlightEdges();
highlightAdjacentNodes();
});
]]></script>
</svg>

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -9,150 +9,180 @@
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 210.25)">
<title>double_hashing::addInfo</title>
<!-- Node1 -->
<g id="node1" class="node">
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="121.75,-149.25 0,-149.25 0,-130 121.75,-130 121.75,-149.25"/>
<text text-anchor="middle" x="60.88" y="-135.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::addInfo</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a79a9c914a6c68275b3640303d7faad8a" target="_top" xlink:title=" ">
<g id="a_Node000002"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a79a9c914a6c68275b3640303d7faad8a" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="270.5,-130.25 165.25,-130.25 165.25,-111 270.5,-111 270.5,-130.25"/>
<text text-anchor="middle" x="217.88" y="-116.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::add</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M122.25,-132.22C132.72,-130.94 143.63,-129.6 154.16,-128.31"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="154.47,-131.68 163.97,-126.99 153.62,-124.73 154.47,-131.68"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_node4"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<g id="a_Node000004"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="593.5,-179.25 540,-179.25 540,-160 593.5,-160 593.5,-179.25"/>
<text text-anchor="middle" x="566.75" y="-165.75" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge13" class="edge">
<g id="edge13_Node000001_Node000004" class="edge">
<title>Node1&#45;&gt;Node4</title>
<g id="a_edge13_Node000001_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M122.15,-143.21C227.65,-149.5 442.73,-162.3 528.87,-167.43"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="528.48,-170.97 538.67,-168.07 528.89,-163.98 528.48,-170.97"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<g id="a_Node000005"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="#666666" points="630.25,-19.25 503.25,-19.25 503.25,0 630.25,0 630.25,-19.25"/>
<text text-anchor="middle" x="566.75" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::hashFxn</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge14" class="edge">
<g id="edge14_Node000001_Node000005" class="edge">
<title>Node1&#45;&gt;Node5</title>
<g id="a_edge14_Node000001_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M84.4,-129.62C103.62,-121.35 132.13,-109.69 157.75,-101.62 274.41,-64.9 414.18,-36.68 496.15,-21.66"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="496.62,-24.95 505.83,-19.72 495.37,-18.07 496.62,-24.95"/>
</a>
</g>
</g>
<!-- Node10 -->
<g id="node10" class="node">
<g id="Node000010" class="node">
<title>Node10</title>
<g id="a_node10"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a1e901418c759627557eff359b8db38cd" target="_top" xlink:title=" ">
<g id="a_Node000010"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a1e901418c759627557eff359b8db38cd" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="278,-206.25 157.75,-206.25 157.75,-187 278,-187 278,-206.25"/>
<text text-anchor="middle" x="217.88" y="-192.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::display</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node10 -->
<g id="edge11" class="edge">
<g id="edge11_Node000001_Node000010" class="edge">
<title>Node1&#45;&gt;Node10</title>
<g id="a_edge11_Node000001_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M89.23,-149.68C114.27,-158.89 151.57,-172.61 179.38,-182.84"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="177.94,-186.4 188.53,-186.57 180.36,-179.83 177.94,-186.4"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_node3"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<g id="a_Node000003"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<polygon fill="white" stroke="#666666" points="455.25,-93.25 314,-93.25 314,-74 455.25,-74 455.25,-93.25"/>
<text text-anchor="middle" x="384.62" y="-79.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::doubleHash</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M263.89,-110.51C283.69,-106.07 307.14,-100.8 328.01,-96.11"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="328.67,-99.33 337.66,-93.72 327.14,-92.5 328.67,-99.33"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="node9" class="node">
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_node9"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#af4981819aae8bc7e7beeaef02615e30d" target="_top" xlink:title=" ">
<g id="a_Node000009"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#af4981819aae8bc7e7beeaef02615e30d" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="444,-130.25 325.25,-130.25 325.25,-111 444,-111 444,-130.25"/>
<text text-anchor="middle" x="384.62" y="-116.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::rehash</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node9 -->
<g id="edge8" class="edge">
<g id="edge8_Node000002_Node000009" class="edge">
<title>Node2&#45;&gt;Node9</title>
<g id="a_edge8_Node000002_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M270.55,-114.31C284.31,-113.9 299.41,-113.78 313.96,-113.95"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="313.9,-117.46 323.95,-114.13 314.01,-110.46 313.9,-117.46"/>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<g id="edge3_Node000003_Node000004" class="edge">
<title>Node3&#45;&gt;Node4</title>
<g id="a_edge3_Node000003_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M440.07,-93.73C445.43,-95.88 450.6,-98.48 455.25,-101.62 477.63,-116.77 468.85,-135.51 491.25,-150.62 502.38,-158.13 516.26,-162.67 529.01,-165.42"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="528.36,-169.04 538.83,-167.4 529.62,-162.16 528.36,-169.04"/>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<g id="edge4_Node000003_Node000005" class="edge">
<title>Node3&#45;&gt;Node5</title>
<g id="a_edge4_Node000003_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M401.5,-73.58C421.66,-61.21 457.87,-40.28 491.25,-27.62 495.98,-25.83 500.94,-24.18 505.97,-22.65"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="506.66,-25.81 515.33,-19.72 504.75,-19.08 506.66,-25.81"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<g id="a_Node000006"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<polygon fill="white" stroke="#666666" points="642.25,-93.25 491.25,-93.25 491.25,-74 642.25,-74 642.25,-93.25"/>
<text text-anchor="middle" x="566.75" y="-79.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::otherHashFxn</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<g id="edge5_Node000003_Node000006" class="edge">
<title>Node3&#45;&gt;Node6</title>
<g id="a_edge5_Node000003_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M455.52,-83.62C463.57,-83.62 471.84,-83.62 480.06,-83.62"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="479.82,-87.13 489.82,-83.62 479.82,-80.13 479.82,-87.13"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="node7" class="node">
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_node7"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<g id="a_Node000007"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="632.5,-56.25 501,-56.25 501,-37 632.5,-37 632.5,-56.25"/>
<text text-anchor="middle" x="566.75" y="-42.75" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::putProber</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node7 -->
<g id="edge6" class="edge">
<g id="edge6_Node000003_Node000007" class="edge">
<title>Node3&#45;&gt;Node7</title>
<g id="a_edge6_Node000003_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M434.84,-73.51C456.79,-69.01 482.83,-63.66 505.89,-58.92"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="506.5,-62.16 515.59,-56.72 505.09,-55.31 506.5,-62.16"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="node8" class="node">
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_node8"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<g id="a_Node000008"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="632.5,-141.88 501,-141.88 501,-111.38 632.5,-111.38 632.5,-141.88"/>
<text text-anchor="start" x="509" y="-128.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::searching</text>
<text text-anchor="middle" x="566.75" y="-117.12" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
@@ -160,28 +190,40 @@
</g>
</g>
<!-- Node3&#45;&gt;Node8 -->
<g id="edge7" class="edge">
<g id="edge7_Node000003_Node000008" class="edge">
<title>Node3&#45;&gt;Node8</title>
<g id="a_edge7_Node000003_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M427.86,-93.71C446.36,-98.12 468.66,-103.45 489.87,-108.51"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="488.97,-112.13 499.51,-111.05 490.6,-105.33 488.97,-112.13"/>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node2 -->
<g id="edge9" class="edge">
<g id="edge9_Node000009_Node000002" class="edge">
<title>Node9&#45;&gt;Node2</title>
<g id="a_edge9_Node000009_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M324.95,-127.12C310.8,-127.43 295.62,-127.46 281.3,-127.2"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="281.63,-123.68 271.55,-126.94 281.46,-130.68 281.63,-123.68"/>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node4 -->
<g id="edge10" class="edge">
<g id="edge10_Node000009_Node000004" class="edge">
<title>Node9&#45;&gt;Node4</title>
<g id="a_edge10_Node000009_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M420.29,-130.73C440.87,-136.66 467.51,-144.23 491.25,-150.62 503.49,-153.92 516.89,-157.39 528.92,-160.44"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="527.95,-164.06 538.5,-163.11 529.66,-157.27 527.95,-164.06"/>
</a>
</g>
</g>
<!-- Node10&#45;&gt;Node4 -->
<g id="edge12" class="edge">
<g id="edge12_Node000010_Node000004" class="edge">
<title>Node10&#45;&gt;Node4</title>
<g id="a_edge12_Node000010_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M278.11,-192.01C349.92,-186.43 468.73,-177.18 528.7,-172.51"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="528.83,-175.93 538.53,-171.67 528.29,-168.95 528.83,-175.93"/>
</a>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 9.6 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -1,10 +1,19 @@
<map id="double_hashing::rehash" name="double_hashing::rehash">
<area shape="rect" id="node1" title=" " alt="" coords="5,68,164,94"/>
<area shape="rect" id="node2" href="$d0/d65/namespacedouble__hashing.html#a79a9c914a6c68275b3640303d7faad8a" title=" " alt="" coords="212,68,352,94"/>
<area shape="rect" id="node4" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="701,5,773,31"/>
<area shape="rect" id="node3" href="$d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" title="Performs double hashing to resolve collisions." alt="" coords="400,80,588,106"/>
<area shape="rect" id="node5" href="$d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="652,55,822,80"/>
<area shape="rect" id="node6" href="$d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" title="Used for second hash function." alt="" coords="636,104,838,130"/>
<area shape="rect" id="node7" href="$d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" title=" " alt="" coords="649,153,825,179"/>
<area shape="rect" id="node8" href="$d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" title=" " alt="" coords="649,203,825,244"/>
<area shape="rect" id="Node000001" title=" " alt="" coords="5,68,164,94"/>
<area shape="rect" id="Node000002" href="$d0/d65/namespacedouble__hashing.html#a79a9c914a6c68275b3640303d7faad8a" title=" " alt="" coords="212,68,352,94"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="164,87,197,87,197,92,164,92"/>
<area shape="rect" id="Node000004" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="701,5,773,31"/>
<area shape="poly" id="edge9_Node000001_Node000004" title=" " alt="" coords="144,65,211,53,346,38,479,27,687,17,687,22,480,33,346,43,212,58,145,70"/>
<area shape="poly" id="edge8_Node000002_Node000001" title=" " alt="" coords="211,75,178,75,178,69,211,70"/>
<area shape="rect" id="Node000003" href="$d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" title="Performs double hashing to resolve collisions." alt="" coords="400,80,588,106"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="353,82,385,84,385,89,352,87"/>
<area shape="poly" id="edge3_Node000003_Node000004" title=" " alt="" coords="528,77,636,40,686,26,687,31,637,45,530,82"/>
<area shape="rect" id="Node000005" href="$d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="652,55,822,80"/>
<area shape="poly" id="edge4_Node000003_Node000005" title=" " alt="" coords="588,80,637,75,638,81,589,86"/>
<area shape="rect" id="Node000006" href="$d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" title="Used for second hash function." alt="" coords="636,104,838,130"/>
<area shape="poly" id="edge5_Node000003_Node000006" title=" " alt="" coords="589,99,622,103,621,108,588,105"/>
<area shape="rect" id="Node000007" href="$d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" title=" " alt="" coords="649,153,825,179"/>
<area shape="poly" id="edge6_Node000003_Node000007" title=" " alt="" coords="531,104,637,140,663,147,662,152,636,145,530,109"/>
<area shape="rect" id="Node000008" href="$d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" title=" " alt="" coords="649,203,825,244"/>
<area shape="poly" id="edge7_Node000003_Node000008" title=" " alt="" coords="513,104,566,145,638,189,650,195,647,200,635,194,563,150,509,108"/>
</map>

View File

@@ -1 +1 @@
7644cd44774c0ad0e94a498a3bdfe9d2
ac5a0476f7b57aa6864f23dd8cf83e61

View File

@@ -5,170 +5,194 @@
-->
<!-- Title: double_hashing::rehash Pages: 1 -->
<!--zoomable 187 -->
<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[
.node, .edge {opacity: 0.7;}
.node.selected, .edge.selected {opacity: 1;}
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<script type="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">
<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="arrowUp" transform="translate(30 24)">
<use xlink:href="#rim"/>
<path pointer-events="none" 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" transform="rotate(90) translate(36 -43)">
<use xlink:href="#rim"/>
<path pointer-events="none" 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" transform="rotate(180) translate(-30 -48)">
<use xlink:href="#rim"/>
<path pointer-events="none" 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" transform="rotate(270) translate(-36 17)">
<use xlink:href="#rim"/>
<path pointer-events="none" 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="application/ecmascript">
var viewWidth = 632;
var viewHeight = 187;
var sectionId = 'dynsection-4';
</script>
<script xlink:href="../../svgpan.js"/>
<script type="application/ecmascript" xlink:href="../../svg.min.js"/>
<svg id="graph" class="graph">
<g id="viewport">
<title>double_hashing::rehash</title>
<!-- Node1 -->
<g id="node1" class="node">
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="118.75,-131.88 0,-131.88 0,-112.62 118.75,-112.62 118.75,-131.88"/>
<text text-anchor="middle" x="59.38" y="-118.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::rehash</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a79a9c914a6c68275b3640303d7faad8a" target="_top" xlink:title=" ">
<g id="a_Node000002"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a79a9c914a6c68275b3640303d7faad8a" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="260,-131.88 154.75,-131.88 154.75,-112.62 260,-112.62 260,-131.88"/>
<text text-anchor="middle" x="207.38" y="-118.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::add</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M118.92,-115.62C126.99,-115.48 135.31,-115.46 143.45,-115.56"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="143.36,-119.07 153.42,-115.76 143.48,-112.08 143.36,-119.07"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_node4"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<g id="a_Node000004"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="575.5,-178.88 522,-178.88 522,-159.62 575.5,-159.62 575.5,-178.88"/>
<text text-anchor="middle" x="548.75" y="-165.38" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge9" class="edge">
<g id="edge9_Node000001_Node000004" class="edge">
<title>Node1&#45;&gt;Node4</title>
<g id="a_edge9_Node000001_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M104.35,-132.31C120.17,-135.61 138.19,-139 154.75,-141.25 285.09,-158.94 441.36,-165.85 511.07,-168.2"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="510.78,-171.72 520.88,-168.55 511,-164.73 510.78,-171.72"/>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node1 -->
<g id="edge8" class="edge">
<g id="edge8_Node000002_Node000001" class="edge">
<title>Node2&#45;&gt;Node1</title>
<g id="a_edge8_Node000002_Node000001"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M154.42,-128.74C146.42,-128.94 138.06,-129.03 129.76,-128.99"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="129.95,-125.48 119.92,-128.88 129.88,-132.48 129.95,-125.48"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_node3"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<g id="a_Node000003"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<polygon fill="white" stroke="#666666" points="437.25,-122.88 296,-122.88 296,-103.62 437.25,-103.62 437.25,-122.88"/>
<text text-anchor="middle" x="366.62" y="-109.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::doubleHash</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M260.3,-119.28C268.14,-118.83 276.38,-118.36 284.65,-117.88"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="284.73,-121.33 294.52,-117.26 284.33,-114.34 284.73,-121.33"/>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<g id="edge3_Node000003_Node000004" class="edge">
<title>Node3&#45;&gt;Node4</title>
<g id="a_edge3_Node000003_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M392.98,-123.25C414.22,-131.41 445.43,-142.91 473.25,-151.25 485.45,-154.91 498.94,-158.34 511.05,-161.22"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="510.17,-164.84 520.71,-163.69 511.75,-158.02 510.17,-164.84"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<g id="a_Node000005"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="#666666" points="612.25,-141.88 485.25,-141.88 485.25,-122.62 612.25,-122.62 612.25,-141.88"/>
<text text-anchor="middle" x="548.75" y="-128.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::hashFxn</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<g id="edge4_Node000003_Node000005" class="edge">
<title>Node3&#45;&gt;Node5</title>
<g id="a_edge4_Node000003_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M437.52,-120.62C449.49,-121.88 461.95,-123.2 474.01,-124.47"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="473.63,-128.06 483.94,-125.63 474.37,-121.1 473.63,-128.06"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<g id="a_Node000006"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<polygon fill="white" stroke="#666666" points="624.25,-104.88 473.25,-104.88 473.25,-85.62 624.25,-85.62 624.25,-104.88"/>
<text text-anchor="middle" x="548.75" y="-91.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::otherHashFxn</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<g id="edge5_Node000003_Node000006" class="edge">
<title>Node3&#45;&gt;Node6</title>
<g id="a_edge5_Node000003_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M437.52,-106.26C445.57,-105.46 453.84,-104.63 462.06,-103.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="462.22,-107.21 471.82,-102.74 461.52,-100.25 462.22,-107.21"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="node7" class="node">
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_node7"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<g id="a_Node000007"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="614.5,-67.88 483,-67.88 483,-48.62 614.5,-48.62 614.5,-67.88"/>
<text text-anchor="middle" x="548.75" y="-54.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::putProber</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node7 -->
<g id="edge6" class="edge">
<g id="edge6_Node000003_Node000007" class="edge">
<title>Node3&#45;&gt;Node7</title>
<g id="a_edge6_Node000003_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M393.87,-103.24C415.09,-95.34 445.86,-84.34 473.25,-76.25 479.53,-74.4 486.15,-72.59 492.75,-70.88"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="493.2,-74.12 502.04,-68.28 491.49,-67.34 493.2,-74.12"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="node8" class="node">
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_node8"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<g id="a_Node000008"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="614.5,-30.5 483,-30.5 483,0 614.5,0 614.5,-30.5"/>
<text text-anchor="start" x="491" y="-17" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::searching</text>
<text text-anchor="middle" x="548.75" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
@@ -176,52 +200,49 @@ var sectionId = 'dynsection-4';
</g>
</g>
<!-- Node3&#45;&gt;Node8 -->
<g id="edge7" class="edge">
<g id="edge7_Node000003_Node000008" class="edge">
<title>Node3&#45;&gt;Node8</title>
<g id="a_edge7_Node000003_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M379.24,-103.33C397.93,-87.8 436.36,-57.59 473.25,-39.25 476.2,-37.78 479.25,-36.38 482.37,-35.04"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="483.51,-37.96 491.48,-30.99 480.9,-31.46 483.51,-37.96"/>
</a>
</g>
</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="namespacedouble__hashing_af4981819aae8bc7e7beeaef02615e30d_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>
<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()"/>
<use id="arrowup" xlink:href="#arrowUp" x="0" y="0" onmousedown="handlePan(0,-1)"/>
<use id="arrowright" xlink:href="#arrowRight" x="0" y="0" onmousedown="handlePan(1,0)"/>
<use id="arrowdown" xlink:href="#arrowDown" x="0" y="0" onmousedown="handlePan(0,1)"/>
<use id="arrowleft" xlink:href="#arrowLeft" x="0" y="0" onmousedown="handlePan(-1,0)"/>
</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="namespacedouble__hashing_af4981819aae8bc7e7beeaef02615e30d_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>
<style type='text/css'>
<![CDATA[
[data-mouse-over-selected='false'] { opacity: 0.7; }
[data-mouse-over-selected='true'] { opacity: 1.0; }
]]>
</style>
<script type="application/ecmascript"><![CDATA[
document.addEventListener('DOMContentLoaded', (event) => {
highlightEdges();
highlightAdjacentNodes();
});
]]></script>
</svg>

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View File

@@ -9,120 +9,144 @@
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 182.88)">
<title>double_hashing::rehash</title>
<!-- Node1 -->
<g id="node1" class="node">
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="118.75,-131.88 0,-131.88 0,-112.62 118.75,-112.62 118.75,-131.88"/>
<text text-anchor="middle" x="59.38" y="-118.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::rehash</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a79a9c914a6c68275b3640303d7faad8a" target="_top" xlink:title=" ">
<g id="a_Node000002"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a79a9c914a6c68275b3640303d7faad8a" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="260,-131.88 154.75,-131.88 154.75,-112.62 260,-112.62 260,-131.88"/>
<text text-anchor="middle" x="207.38" y="-118.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::add</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M118.92,-115.62C126.99,-115.48 135.31,-115.46 143.45,-115.56"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="143.36,-119.07 153.42,-115.76 143.48,-112.08 143.36,-119.07"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_node4"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<g id="a_Node000004"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="575.5,-178.88 522,-178.88 522,-159.62 575.5,-159.62 575.5,-178.88"/>
<text text-anchor="middle" x="548.75" y="-165.38" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge9" class="edge">
<g id="edge9_Node000001_Node000004" class="edge">
<title>Node1&#45;&gt;Node4</title>
<g id="a_edge9_Node000001_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M104.35,-132.31C120.17,-135.61 138.19,-139 154.75,-141.25 285.09,-158.94 441.36,-165.85 511.07,-168.2"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="510.78,-171.72 520.88,-168.55 511,-164.73 510.78,-171.72"/>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node1 -->
<g id="edge8" class="edge">
<g id="edge8_Node000002_Node000001" class="edge">
<title>Node2&#45;&gt;Node1</title>
<g id="a_edge8_Node000002_Node000001"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M154.42,-128.74C146.42,-128.94 138.06,-129.03 129.76,-128.99"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="129.95,-125.48 119.92,-128.88 129.88,-132.48 129.95,-125.48"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_node3"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<g id="a_Node000003"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a8f8ff4fb018e1bb32d67d8a1885d3200" target="_top" xlink:title="Performs double hashing to resolve collisions.">
<polygon fill="white" stroke="#666666" points="437.25,-122.88 296,-122.88 296,-103.62 437.25,-103.62 437.25,-122.88"/>
<text text-anchor="middle" x="366.62" y="-109.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::doubleHash</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M260.3,-119.28C268.14,-118.83 276.38,-118.36 284.65,-117.88"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="284.73,-121.33 294.52,-117.26 284.33,-114.34 284.73,-121.33"/>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<g id="edge3_Node000003_Node000004" class="edge">
<title>Node3&#45;&gt;Node4</title>
<g id="a_edge3_Node000003_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M392.98,-123.25C414.22,-131.41 445.43,-142.91 473.25,-151.25 485.45,-154.91 498.94,-158.34 511.05,-161.22"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="510.17,-164.84 520.71,-163.69 511.75,-158.02 510.17,-164.84"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<g id="a_Node000005"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a0d90726ed1de7b3d2ae261baed048003" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="#666666" points="612.25,-141.88 485.25,-141.88 485.25,-122.62 612.25,-122.62 612.25,-141.88"/>
<text text-anchor="middle" x="548.75" y="-128.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::hashFxn</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<g id="edge4_Node000003_Node000005" class="edge">
<title>Node3&#45;&gt;Node5</title>
<g id="a_edge4_Node000003_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M437.52,-120.62C449.49,-121.88 461.95,-123.2 474.01,-124.47"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="473.63,-128.06 483.94,-125.63 474.37,-121.1 473.63,-128.06"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<g id="a_Node000006"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a33968a1178289ab61445dd4000df7082" target="_top" xlink:title="Used for second hash function.">
<polygon fill="white" stroke="#666666" points="624.25,-104.88 473.25,-104.88 473.25,-85.62 624.25,-85.62 624.25,-104.88"/>
<text text-anchor="middle" x="548.75" y="-91.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::otherHashFxn</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<g id="edge5_Node000003_Node000006" class="edge">
<title>Node3&#45;&gt;Node6</title>
<g id="a_edge5_Node000003_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M437.52,-106.26C445.57,-105.46 453.84,-104.63 462.06,-103.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="462.22,-107.21 471.82,-102.74 461.52,-100.25 462.22,-107.21"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="node7" class="node">
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_node7"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<g id="a_Node000007"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#ac2adfce49ac57f6dbd1778d2c1ce0d2b" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="614.5,-67.88 483,-67.88 483,-48.62 614.5,-48.62 614.5,-67.88"/>
<text text-anchor="middle" x="548.75" y="-54.38" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::putProber</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node7 -->
<g id="edge6" class="edge">
<g id="edge6_Node000003_Node000007" class="edge">
<title>Node3&#45;&gt;Node7</title>
<g id="a_edge6_Node000003_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M393.87,-103.24C415.09,-95.34 445.86,-84.34 473.25,-76.25 479.53,-74.4 486.15,-72.59 492.75,-70.88"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="493.2,-74.12 502.04,-68.28 491.49,-67.34 493.2,-74.12"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="node8" class="node">
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_node8"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<g id="a_Node000008"><a xlink:href="../../d0/d65/namespacedouble__hashing.html#a29f543e2626bad58907661e1e45028a6" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="614.5,-30.5 483,-30.5 483,0 614.5,0 614.5,-30.5"/>
<text text-anchor="start" x="491" y="-17" font-family="Helvetica,sans-Serif" font-size="10.00">double_hashing::searching</text>
<text text-anchor="middle" x="548.75" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
@@ -130,10 +154,13 @@
</g>
</g>
<!-- Node3&#45;&gt;Node8 -->
<g id="edge7" class="edge">
<g id="edge7_Node000003_Node000008" class="edge">
<title>Node3&#45;&gt;Node8</title>
<g id="a_edge7_Node000003_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M379.24,-103.33C397.93,-87.8 436.36,-57.59 473.25,-39.25 476.2,-37.78 479.25,-36.38 482.37,-35.04"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="483.51,-37.96 491.48,-30.99 480.9,-31.46 483.51,-37.96"/>
</a>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 7.2 KiB

After

Width:  |  Height:  |  Size: 8.0 KiB