Documentation for 62562abce3

This commit is contained in:
github-actions
2020-07-31 09:51:29 +00:00
parent 5eba000e6f
commit 930e001204
415 changed files with 18569 additions and 12110 deletions

View File

@@ -0,0 +1,624 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Algorithms_in_C++: linear_probing Namespace Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../navtreedata.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Algorithms_in_C++
&#160;<span id="projectnumber">1.0.0</span>
</div>
<div id="projectbrief">Set of algorithms implemented in C++.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('d8/d89/namespacelinear__probing.html','../../'); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">linear_probing Namespace Reference<div class="ingroups"><a class="el" href="../../d4/d39/group__open__addressing.html">Open Addressing</a></div></div> </div>
</div><!--header-->
<div class="contents">
<p>An implementation of hash table using <a href="https://en.wikipedia.org/wiki/Linear_probing">linear probing</a> algorithm.
<a href="../../d8/d89/namespacelinear__probing.html#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d19/structlinear__probing_1_1_entry.html">Entry</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a2de838f453df67b72411eefb7faf833c"><td class="memItemLeft" align="right" valign="top"><a id="a2de838f453df67b72411eefb7faf833c"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><b>Entry</b> = struct <a class="el" href="../../db/d19/structlinear__probing_1_1_entry.html">Entry</a></td></tr>
<tr class="separator:a2de838f453df67b72411eefb7faf833c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a75d779938df7ebc68581d922b60a2541"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541">putProber</a> (const <a class="el" href="../../db/d19/structlinear__probing_1_1_entry.html">Entry</a> &amp;entry, int key)</td></tr>
<tr class="separator:a75d779938df7ebc68581d922b60a2541"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a942fc8407b8001890ea26830cdcd9d77"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77">searchingProber</a> (const <a class="el" href="../../db/d19/structlinear__probing_1_1_entry.html">Entry</a> &amp;entry, int key)</td></tr>
<tr class="separator:a942fc8407b8001890ea26830cdcd9d77"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16d34fd3511626a83ab00665d7bc34d1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d89/namespacelinear__probing.html#a16d34fd3511626a83ab00665d7bc34d1">add</a> (int key)</td></tr>
<tr class="separator:a16d34fd3511626a83ab00665d7bc34d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4bde7a47f98dd1ad24c84038e2608527"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527">hashFxn</a> (int key)</td></tr>
<tr class="memdesc:a4bde7a47f98dd1ad24c84038e2608527"><td class="mdescLeft">&#160;</td><td class="mdescRight">Hash a key. Uses the STL library's <code><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/utility/hash.html">std::hash()</a></code> function. <a href="../../d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527">More...</a><br /></td></tr>
<tr class="separator:a4bde7a47f98dd1ad24c84038e2608527"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6322209aaa91b7bbf16f96e1cc52b746"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d89/namespacelinear__probing.html#a6322209aaa91b7bbf16f96e1cc52b746">linearProbe</a> (int key, bool searching)</td></tr>
<tr class="separator:a6322209aaa91b7bbf16f96e1cc52b746"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad87b71d810901fab69c4ad9d4d0fa635"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d89/namespacelinear__probing.html#ad87b71d810901fab69c4ad9d4d0fa635">display</a> ()</td></tr>
<tr class="separator:ad87b71d810901fab69c4ad9d4d0fa635"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6a082dc1426a79f866cee6b370df37b0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d89/namespacelinear__probing.html#a6a082dc1426a79f866cee6b370df37b0">rehash</a> ()</td></tr>
<tr class="separator:a6a082dc1426a79f866cee6b370df37b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abcf8d033f8115f39f3c93cfb6cee0b28"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d89/namespacelinear__probing.html#abcf8d033f8115f39f3c93cfb6cee0b28">remove</a> (int key)</td></tr>
<tr class="separator:abcf8d033f8115f39f3c93cfb6cee0b28"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16680b8a37d442c2f208faa286e33908"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d89/namespacelinear__probing.html#a16680b8a37d442c2f208faa286e33908">addInfo</a> (int key)</td></tr>
<tr class="separator:a16680b8a37d442c2f208faa286e33908"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75854f5aa216e61219154c62167ce8f0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d89/namespacelinear__probing.html#a75854f5aa216e61219154c62167ce8f0">removalInfo</a> (int key)</td></tr>
<tr class="separator:a75854f5aa216e61219154c62167ce8f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:addfce7597f6a42f796fa597ae40eecc9"><td class="memItemLeft" align="right" valign="top"><a id="addfce7597f6a42f796fa597ae40eecc9"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>notPresent</b></td></tr>
<tr class="separator:addfce7597f6a42f796fa597ae40eecc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb1dc3f09cf07c2633580a1c46c9f0a8"><td class="memItemLeft" align="right" valign="top"><a id="acb1dc3f09cf07c2633580a1c46c9f0a8"></a>
<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt; <a class="el" href="../../db/d19/structlinear__probing_1_1_entry.html">Entry</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>table</b></td></tr>
<tr class="separator:acb1dc3f09cf07c2633580a1c46c9f0a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4fdb68db9f02ae4156e1845563004f8e"><td class="memItemLeft" align="right" valign="top"><a id="a4fdb68db9f02ae4156e1845563004f8e"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>totalSize</b></td></tr>
<tr class="separator:a4fdb68db9f02ae4156e1845563004f8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62fbd519adacd4e05706f34a7e551288"><td class="memItemLeft" align="right" valign="top"><a id="a62fbd519adacd4e05706f34a7e551288"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>tomb</b> = -1</td></tr>
<tr class="separator:a62fbd519adacd4e05706f34a7e551288"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8e81b17f2f8403c982368da3dac1ae87"><td class="memItemLeft" align="right" valign="top"><a id="a8e81b17f2f8403c982368da3dac1ae87"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>size</b></td></tr>
<tr class="separator:a8e81b17f2f8403c982368da3dac1ae87"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ff22c1a04290e24ef3ba3d6a3a06386"><td class="memItemLeft" align="right" valign="top"><a id="a5ff22c1a04290e24ef3ba3d6a3a06386"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>rehashing</b></td></tr>
<tr class="separator:a5ff22c1a04290e24ef3ba3d6a3a06386"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>An implementation of hash table using <a href="https://en.wikipedia.org/wiki/Linear_probing">linear probing</a> algorithm. </p>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="a16d34fd3511626a83ab00665d7bc34d1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a16d34fd3511626a83ab00665d7bc34d1">&#9670;&nbsp;</a></span>add()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void linear_probing::add </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>key</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds entry using linear probing. Checks for load factor here </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">key</td><td>key value to hash and add </td></tr>
</table>
</dd>
</dl>
<div class="fragment"><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; {</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordtype">int</span> index = <a class="code" href="../../d8/d89/namespacelinear__probing.html#a6322209aaa91b7bbf16f96e1cc52b746">linearProbe</a>(key, <span class="keyword">false</span>);</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; table[index].key = key;</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="comment">// Load factor greater than 0.5 causes resizing</span></div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">if</span> (++size / <span class="keyword">static_cast&lt;</span><span class="keywordtype">double</span><span class="keyword">&gt;</span>(totalSize) &gt;= 0.5) {</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="../../d8/d89/namespacelinear__probing.html#a6a082dc1426a79f866cee6b370df37b0">rehash</a>();</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; }</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;}</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="../../d8/d89/namespacelinear__probing_a16d34fd3511626a83ab00665d7bc34d1_cgraph.svg" width="579" height="206"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</div>
</div>
</div>
<a id="a16680b8a37d442c2f208faa286e33908"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a16680b8a37d442c2f208faa286e33908">&#9670;&nbsp;</a></span>addInfo()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void linear_probing::addInfo </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>key</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Information about the adding process </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">key</td><td>key value to hash and add </td></tr>
</table>
</dd>
</dl>
<div class="fragment"><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; {</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Initial table: &quot;</span>;</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <a class="code" href="../../d8/d89/namespacelinear__probing.html#ad87b71d810901fab69c4ad9d4d0fa635">display</a>();</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;hash of &quot;</span> &lt;&lt; key &lt;&lt; <span class="stringliteral">&quot; is &quot;</span> &lt;&lt; <a class="code" href="../../d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527">hashFxn</a>(key) &lt;&lt; <span class="stringliteral">&quot; % &quot;</span></div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; &lt;&lt; totalSize &lt;&lt; <span class="stringliteral">&quot; == &quot;</span> &lt;&lt; <a class="code" href="../../d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527">hashFxn</a>(key) % totalSize;</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <a class="code" href="../../de/d47/string__fibonacci_8cpp.html#a28052eee05d43c2ebc5147c52bd50c35">add</a>(key);</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;New table: &quot;</span>;</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <a class="code" href="../../d8/d89/namespacelinear__probing.html#ad87b71d810901fab69c4ad9d4d0fa635">display</a>();</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;}</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="../../d8/d89/namespacelinear__probing_a16680b8a37d442c2f208faa286e33908_cgraph.svg" width="100%" height="472"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
</div>
</div>
<a id="ad87b71d810901fab69c4ad9d4d0fa635"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad87b71d810901fab69c4ad9d4d0fa635">&#9670;&nbsp;</a></span>display()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void linear_probing::display </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Function to displays the table </p><dl class="section return"><dt>Returns</dt><dd>none </dd></dl>
<div class="fragment"><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; {</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; totalSize; i++) {</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">if</span> (table[i].key == notPresent) {</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot; Empty &quot;</span>;</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (table[i].key == tomb) {</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot; Tomb &quot;</span>;</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; table[i].key;</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; }</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; }</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;}</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="../../d8/d89/namespacelinear__probing_ad87b71d810901fab69c4ad9d4d0fa635_cgraph.svg" width="282" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</div>
</div>
</div>
<a id="a4bde7a47f98dd1ad24c84038e2608527"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4bde7a47f98dd1ad24c84038e2608527">&#9670;&nbsp;</a></span>hashFxn()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">size_t linear_probing::hashFxn </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>key</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Hash a key. Uses the STL library's <code><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/utility/hash.html">std::hash()</a></code> function. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">key</td><td>value to hash </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>hash value of the key </dd></dl>
<div class="fragment"><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; {</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/utility/hash.html">std::hash&lt;int&gt;</a> hash;</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordflow">return</span> hash(key);</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a6322209aaa91b7bbf16f96e1cc52b746"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6322209aaa91b7bbf16f96e1cc52b746">&#9670;&nbsp;</a></span>linearProbe()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int linear_probing::linearProbe </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>key</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>searching</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Performs linear probing to resolve collisions </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">key</td><td>key value to hash </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>hash value of the key </dd></dl>
<div class="fragment"><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; {</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordtype">int</span> hash = <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(<a class="code" href="../../d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527">hashFxn</a>(key));</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordtype">int</span> i = 0;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="../../db/d19/structlinear__probing_1_1_entry.html">Entry</a> entry;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">do</span> {</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordtype">int</span> index = <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>((hash + i) % totalSize);</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; entry = table[index];</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">if</span> (searching) {</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">if</span> (entry.<a class="code" href="../../db/d19/structlinear__probing_1_1_entry.html#a4d84e90b73022083761f85f8586c4c2a">key</a> == notPresent) {</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordflow">return</span> notPresent;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; }</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="../../d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77">searchingProber</a>(entry, key)) {</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Found key!&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">return</span> index;</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; }</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Found tombstone or equal hash, checking next&quot;</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; i++;</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="../../d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541">putProber</a>(entry, key)) {</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">if</span> (!rehashing) {</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Spot found!&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; }</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">return</span> index;</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; }</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">if</span> (!rehashing) {</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Spot taken, looking at next&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; }</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; i++;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; }</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">if</span> (i == totalSize) {</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Linear probe failed&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">return</span> notPresent;</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; }</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; } <span class="keywordflow">while</span> (entry.<a class="code" href="../../db/d19/structlinear__probing_1_1_entry.html#a4d84e90b73022083761f85f8586c4c2a">key</a> != notPresent);</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">return</span> notPresent;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;}</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="../../d8/d89/namespacelinear__probing_a6322209aaa91b7bbf16f96e1cc52b746_cgraph.svg" width="400" height="206"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</div>
</div>
</div>
<a id="a75d779938df7ebc68581d922b60a2541"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a75d779938df7ebc68581d922b60a2541">&#9670;&nbsp;</a></span>putProber()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool linear_probing::putProber </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="../../db/d19/structlinear__probing_1_1_entry.html">Entry</a> &amp;&#160;</td>
<td class="paramname"><em>entry</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>key</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Finds empty spot </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entry</td><td>instance to check in </td></tr>
<tr><td class="paramname">key</td><td>key value to hash </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>hash value of the key </dd></dl>
<div class="fragment"><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; {</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">if</span> (entry.<a class="code" href="../../db/d19/structlinear__probing_1_1_entry.html#a4d84e90b73022083761f85f8586c4c2a">key</a> == notPresent || entry.<a class="code" href="../../db/d19/structlinear__probing_1_1_entry.html#a4d84e90b73022083761f85f8586c4c2a">key</a> == tomb) {</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; }</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a6a082dc1426a79f866cee6b370df37b0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6a082dc1426a79f866cee6b370df37b0">&#9670;&nbsp;</a></span>rehash()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void linear_probing::rehash </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Rehashes the table into a bigger table </p><dl class="section return"><dt>Returns</dt><dd>None </dd></dl>
<div class="fragment"><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; {</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="comment">// Necessary so wall of add info isn&#39;t printed all at once</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; rehashing = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordtype">int</span> oldSize = totalSize;</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;Entry&gt;</a> oldTable(table);</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="comment">// Really this should use the next prime number greater than totalSize *</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="comment">// 2</span></div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; totalSize *= 2;</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; table = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;Entry&gt;</a>(totalSize);</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; oldSize; i++) {</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">if</span> (oldTable[i].key != -1 &amp;&amp; oldTable[i].key != notPresent) {</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; size--; <span class="comment">// Size stays the same (add increments size)</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <a class="code" href="../../de/d47/string__fibonacci_8cpp.html#a28052eee05d43c2ebc5147c52bd50c35">add</a>(oldTable[i].key);</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; }</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; }</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="comment">// delete[] oldTable;</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; rehashing = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Table was rehashed, new size is: &quot;</span> &lt;&lt; totalSize &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;}</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="../../d8/d89/namespacelinear__probing_a6a082dc1426a79f866cee6b370df37b0_cgraph.svg" width="100%" height="454"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
</div>
</div>
<a id="a75854f5aa216e61219154c62167ce8f0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a75854f5aa216e61219154c62167ce8f0">&#9670;&nbsp;</a></span>removalInfo()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void linear_probing::removalInfo </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>key</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Information about removal process </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">key</td><td>key value to hash and remove </td></tr>
</table>
</dd>
</dl>
<div class="fragment"><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; {</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Initial table: &quot;</span>;</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <a class="code" href="../../d8/d89/namespacelinear__probing.html#ad87b71d810901fab69c4ad9d4d0fa635">display</a>();</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;hash of &quot;</span> &lt;&lt; key &lt;&lt; <span class="stringliteral">&quot; is &quot;</span> &lt;&lt; <a class="code" href="../../d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527">hashFxn</a>(key) &lt;&lt; <span class="stringliteral">&quot; % &quot;</span></div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; &lt;&lt; totalSize &lt;&lt; <span class="stringliteral">&quot; == &quot;</span> &lt;&lt; <a class="code" href="../../d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527">hashFxn</a>(key) % totalSize;</div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <a class="code" href="../../d8/d89/namespacelinear__probing.html#abcf8d033f8115f39f3c93cfb6cee0b28">remove</a>(key);</div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;New table: &quot;</span>;</div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <a class="code" href="../../d8/d89/namespacelinear__probing.html#ad87b71d810901fab69c4ad9d4d0fa635">display</a>();</div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;}</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="../../d8/d89/namespacelinear__probing_a75854f5aa216e61219154c62167ce8f0_cgraph.svg" width="100%" height="465"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
</div>
</div>
<a id="abcf8d033f8115f39f3c93cfb6cee0b28"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abcf8d033f8115f39f3c93cfb6cee0b28">&#9670;&nbsp;</a></span>remove()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void linear_probing::remove </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>key</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Removes key. Leaves tombstone upon removal. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">key</td><td>key value to hash and remove </td></tr>
</table>
</dd>
</dl>
<div class="fragment"><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; {</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordtype">int</span> index = <a class="code" href="../../d8/d89/namespacelinear__probing.html#a6322209aaa91b7bbf16f96e1cc52b746">linearProbe</a>(key, <span class="keyword">true</span>);</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordflow">if</span> (index == notPresent) {</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;key not found&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; }</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> &lt;&lt; <span class="stringliteral">&quot;Removal Successful, leaving tomb&quot;</span> &lt;&lt; <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; table[index].key = tomb;</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; size--;</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;}</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="../../d8/d89/namespacelinear__probing_abcf8d033f8115f39f3c93cfb6cee0b28_cgraph.svg" width="602" height="206"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</div>
</div>
</div>
<a id="a942fc8407b8001890ea26830cdcd9d77"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a942fc8407b8001890ea26830cdcd9d77">&#9670;&nbsp;</a></span>searchingProber()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool linear_probing::searchingProber </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="../../db/d19/structlinear__probing_1_1_entry.html">Entry</a> &amp;&#160;</td>
<td class="paramname"><em>entry</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>key</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Looks for a matching key </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entry</td><td>instance to check in </td></tr>
<tr><td class="paramname">key</td><td>key value to hash </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>hash value of the key </dd></dl>
<div class="fragment"><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; {</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">if</span> (entry.<a class="code" href="../../db/d19/structlinear__probing_1_1_entry.html#a4d84e90b73022083761f85f8586c4c2a">key</a> == key) {</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; }</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="astructlinear__probing_1_1_entry_html_a4d84e90b73022083761f85f8586c4c2a"><div class="ttname"><a href="../../db/d19/structlinear__probing_1_1_entry.html#a4d84e90b73022083761f85f8586c4c2a">linear_probing::Entry::key</a></div><div class="ttdeci">int key</div><div class="ttdoc">key value</div><div class="ttdef"><b>Definition:</b> linear_probing_hash_table.cpp:37</div></div>
<div class="ttc" id="anamespacelinear__probing_html_a75d779938df7ebc68581d922b60a2541"><div class="ttname"><a href="../../d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541">linear_probing::putProber</a></div><div class="ttdeci">bool putProber(const Entry &amp;entry, int key)</div><div class="ttdef"><b>Definition:</b> linear_probing_hash_table.cpp:98</div></div>
<div class="ttc" id="astructlinear__probing_1_1_entry_html"><div class="ttname"><a href="../../db/d19/structlinear__probing_1_1_entry.html">linear_probing::Entry</a></div><div class="ttdef"><b>Definition:</b> linear_probing_hash_table.cpp:35</div></div>
<div class="ttc" id="anamespacelinear__probing_html_a6a082dc1426a79f866cee6b370df37b0"><div class="ttname"><a href="../../d8/d89/namespacelinear__probing.html#a6a082dc1426a79f866cee6b370df37b0">linear_probing::rehash</a></div><div class="ttdeci">void rehash()</div><div class="ttdef"><b>Definition:</b> linear_probing_hash_table.cpp:138</div></div>
<div class="ttc" id="avector_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a></div><div class="ttdoc">STL class.</div></div>
<div class="ttc" id="anamespacelinear__probing_html_a942fc8407b8001890ea26830cdcd9d77"><div class="ttname"><a href="../../d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77">linear_probing::searchingProber</a></div><div class="ttdeci">bool searchingProber(const Entry &amp;entry, int key)</div><div class="ttdef"><b>Definition:</b> linear_probing_hash_table.cpp:110</div></div>
<div class="ttc" id="anamespacelinear__probing_html_a4bde7a47f98dd1ad24c84038e2608527"><div class="ttname"><a href="../../d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527">linear_probing::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> linear_probing_hash_table.cpp:46</div></div>
<div class="ttc" id="anamespacelinear__probing_html_abcf8d033f8115f39f3c93cfb6cee0b28"><div class="ttname"><a href="../../d8/d89/namespacelinear__probing.html#abcf8d033f8115f39f3c93cfb6cee0b28">linear_probing::remove</a></div><div class="ttdeci">void remove(int key)</div><div class="ttdef"><b>Definition:</b> linear_probing_hash_table.cpp:173</div></div>
<div class="ttc" id="anamespacelinear__probing_html_a6322209aaa91b7bbf16f96e1cc52b746"><div class="ttname"><a href="../../d8/d89/namespacelinear__probing.html#a6322209aaa91b7bbf16f96e1cc52b746">linear_probing::linearProbe</a></div><div class="ttdeci">int linearProbe(int key, bool searching)</div><div class="ttdef"><b>Definition:</b> linear_probing_hash_table.cpp:55</div></div>
<div class="ttc" id="abasic_ostream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div></div>
<div class="ttc" id="aendl_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a></div><div class="ttdeci">T endl(T... args)</div></div>
<div class="ttc" id="astring__fibonacci_8cpp_html_a28052eee05d43c2ebc5147c52bd50c35"><div class="ttname"><a href="../../de/d47/string__fibonacci_8cpp.html#a28052eee05d43c2ebc5147c52bd50c35">add</a></div><div class="ttdeci">std::string add(std::string a, std::string b)</div><div class="ttdef"><b>Definition:</b> string_fibonacci.cpp:24</div></div>
<div class="ttc" id="anamespacelinear__probing_html_ad87b71d810901fab69c4ad9d4d0fa635"><div class="ttname"><a href="../../d8/d89/namespacelinear__probing.html#ad87b71d810901fab69c4ad9d4d0fa635">linear_probing::display</a></div><div class="ttdeci">void display()</div><div class="ttdef"><b>Definition:</b> linear_probing_hash_table.cpp:120</div></div>
<div class="ttc" id="ahash_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/utility/hash.html">std::hash</a></div></div>
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="../../d8/d89/namespacelinear__probing.html">linear_probing</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var namespacelinear__probing =
[
[ "Entry", "db/d19/structlinear__probing_1_1_entry.html", "db/d19/structlinear__probing_1_1_entry" ]
];

View File

@@ -0,0 +1,11 @@
<map id="linear_probing::addInfo" name="linear_probing::addInfo">
<area shape="rect" id="node1" title=" " alt="" coords="5,58,159,85"/>
<area shape="rect" id="node2" href="$d8/d89/namespacelinear__probing.html#a16d34fd3511626a83ab00665d7bc34d1" title=" " alt="" coords="217,84,347,110"/>
<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="675,29,747,56"/>
<area shape="rect" id="node5" href="$d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="631,197,791,224"/>
<area shape="rect" id="node9" href="$d8/d89/namespacelinear__probing.html#ad87b71d810901fab69c4ad9d4d0fa635" title=" " alt="" coords="207,33,357,60"/>
<area shape="rect" id="node3" href="$d8/d89/namespacelinear__probing.html#a6322209aaa91b7bbf16f96e1cc52b746" title=" " alt="" coords="405,134,580,161"/>
<area shape="rect" id="node8" href="$d8/d89/namespacelinear__probing.html#a6a082dc1426a79f866cee6b370df37b0" title=" " alt="" coords="418,84,567,110"/>
<area shape="rect" id="node6" href="$d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541" title=" " alt="" coords="628,80,795,106"/>
<area shape="rect" id="node7" href="$d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77" title=" " alt="" coords="628,131,795,172"/>
</map>

View File

@@ -0,0 +1 @@
ed6e485562ff8f812df74f8f10e35b9d

View File

@@ -0,0 +1,261 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
-->
<!-- Title: linear_probing::addInfo Pages: 1 -->
<!--zoomable 172 -->
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
<style type="text/css"><![CDATA[
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<script type="text/javascript"><![CDATA[
var edges = document.getElementsByTagName('g');
if (edges && edges.length) {
for (var i=0;i<edges.length;i++) {
if (edges[i].id.substr(0,4)=='edge') {
edges[i].setAttribute('class','edge');
}
}
}
]]></script>
<defs>
<circle id="rim" cx="0" cy="0" r="7"/>
<circle id="rim2" cx="0" cy="0" r="3.5"/>
<g id="zoomPlus">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/>
</use>
<path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="zoomMin">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/>
</use>
<path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="dirArrow">
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="resetDef">
<use xlink:href="#rim2" fill="#404040">
<set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/>
</use>
</g>
</defs>
<script type="text/javascript">
var viewWidth = 600;
var viewHeight = 172;
var sectionId = 'dynsection-1';
</script>
<script xlink:href="../../svgpan.js"/>
<svg id="graph" class="graph">
<g id="viewport">
<title>linear_probing::addInfo</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-167.85 596,-167.85 596,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<polygon fill="#bfbfbf" stroke="black" points="0,-104.5 0,-123.5 115,-123.5 115,-104.5 0,-104.5"/>
<text text-anchor="middle" x="57.5" y="-111.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::addInfo</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a16d34fd3511626a83ab00665d7bc34d1" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="158.5,-85.5 158.5,-104.5 256.5,-104.5 256.5,-85.5 158.5,-85.5"/>
<text text-anchor="middle" x="207.5" y="-92.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::add</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M115.3,-106.71C126.05,-105.33 137.31,-103.88 148.1,-102.5"/>
<polygon fill="midnightblue" stroke="midnightblue" points="148.81,-105.94 158.28,-101.19 147.92,-98.99 148.81,-105.94"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="502.5,-126.5 502.5,-145.5 556.5,-145.5 556.5,-126.5 502.5,-126.5"/>
<text text-anchor="middle" x="529.5" y="-133.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge12" class="edge">
<title>Node1&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M75.93,-123.58C94.06,-132.95 123.58,-146.59 151,-152 274.09,-176.3 423.98,-155.36 491.91,-143.21"/>
<polygon fill="midnightblue" stroke="midnightblue" points="492.88,-146.59 502.09,-141.35 491.62,-139.71 492.88,-146.59"/>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="black" points="469.5,-0.5 469.5,-19.5 589.5,-19.5 589.5,-0.5 469.5,-0.5"/>
<text text-anchor="middle" x="529.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::hashFxn</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge13" class="edge">
<title>Node1&#45;&gt;Node5</title>
<path fill="none" stroke="midnightblue" d="M79.49,-104.39C98.04,-96.14 125.95,-84.29 151,-76 215.88,-54.52 232.83,-50.63 300,-38 353.13,-28.01 413.91,-20.76 459.42,-16.14"/>
<polygon fill="midnightblue" stroke="midnightblue" points="459.87,-19.62 469.48,-15.14 459.18,-12.65 459.87,-19.62"/>
</g>
<!-- Node9 -->
<g id="node9" class="node">
<title>Node9</title>
<g id="a_node9"><a xlink:href="../../d8/d89/namespacelinear__probing.html#ad87b71d810901fab69c4ad9d4d0fa635" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="151,-123.5 151,-142.5 264,-142.5 264,-123.5 151,-123.5"/>
<text text-anchor="middle" x="207.5" y="-130.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::display</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node9 -->
<g id="edge10" class="edge">
<title>Node1&#45;&gt;Node9</title>
<path fill="none" stroke="midnightblue" d="M115.3,-121.29C123.53,-122.35 132.06,-123.44 140.45,-124.52"/>
<polygon fill="midnightblue" stroke="midnightblue" points="140.22,-128.02 150.59,-125.82 141.11,-121.08 140.22,-128.02"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a6322209aaa91b7bbf16f96e1cc52b746" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="300,-47.5 300,-66.5 431,-66.5 431,-47.5 300,-47.5"/>
<text text-anchor="middle" x="365.5" y="-54.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::linearProbe</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node2&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M247.87,-85.41C268.45,-80.4 293.84,-74.21 315.67,-68.89"/>
<polygon fill="midnightblue" stroke="midnightblue" points="316.53,-72.29 325.42,-66.52 314.87,-65.49 316.53,-72.29"/>
</g>
<!-- Node8 -->
<g id="node8" class="node">
<title>Node8</title>
<g id="a_node8"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a6a082dc1426a79f866cee6b370df37b0" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="309.5,-85.5 309.5,-104.5 421.5,-104.5 421.5,-85.5 309.5,-85.5"/>
<text text-anchor="middle" x="365.5" y="-92.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::rehash</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node8 -->
<g id="edge7" class="edge">
<title>Node2&#45;&gt;Node8</title>
<path fill="none" stroke="midnightblue" d="M256.58,-88.71C270.05,-88.28 284.92,-88.15 299.21,-88.33"/>
<polygon fill="midnightblue" stroke="midnightblue" points="299.43,-91.83 309.49,-88.52 299.55,-84.84 299.43,-91.83"/>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node3&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M411.31,-66.61C418.2,-69.08 425,-72.17 431,-76 451.44,-89.05 446.65,-103.81 467,-117 474.7,-121.99 483.79,-125.73 492.58,-128.52"/>
<polygon fill="midnightblue" stroke="midnightblue" points="491.71,-131.91 502.29,-131.27 493.62,-125.17 491.71,-131.91"/>
</g>
<!-- Node3&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<title>Node3&#45;&gt;Node5</title>
<path fill="none" stroke="midnightblue" d="M399.28,-47.49C424.23,-40.25 458.78,-30.23 485.87,-22.37"/>
<polygon fill="midnightblue" stroke="midnightblue" points="486.86,-25.73 495.49,-19.58 484.91,-19 486.86,-25.73"/>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="467,-88.5 467,-107.5 592,-107.5 592,-88.5 467,-88.5"/>
<text text-anchor="middle" x="529.5" y="-95.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::putProber</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<title>Node3&#45;&gt;Node6</title>
<path fill="none" stroke="midnightblue" d="M404.07,-66.51C426.99,-72.31 456.5,-79.78 481.03,-85.99"/>
<polygon fill="midnightblue" stroke="midnightblue" points="480.3,-89.41 490.85,-88.47 482.01,-82.62 480.3,-89.41"/>
</g>
<!-- Node7 -->
<g id="node7" class="node">
<title>Node7</title>
<g id="a_node7"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="467,-39 467,-69 592,-69 592,-39 467,-39"/>
<text text-anchor="start" x="475" y="-57" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::searching</text>
<text text-anchor="middle" x="529.5" y="-46" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node7 -->
<g id="edge6" class="edge">
<title>Node3&#45;&gt;Node7</title>
<path fill="none" stroke="midnightblue" d="M431.46,-55.8C439.78,-55.64 448.34,-55.48 456.76,-55.33"/>
<polygon fill="midnightblue" stroke="midnightblue" points="457.01,-58.82 466.95,-55.14 456.88,-51.83 457.01,-58.82"/>
</g>
<!-- Node8&#45;&gt;Node2 -->
<g id="edge8" class="edge">
<title>Node8&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M309.49,-101.48C295.6,-101.81 280.64,-101.84 266.61,-101.55"/>
<polygon fill="midnightblue" stroke="midnightblue" points="266.67,-98.05 256.58,-101.29 266.48,-105.05 266.67,-98.05"/>
</g>
<!-- Node8&#45;&gt;Node4 -->
<g id="edge9" class="edge">
<title>Node8&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M404.07,-104.51C430.64,-111.23 466.06,-120.2 492.32,-126.84"/>
<polygon fill="midnightblue" stroke="midnightblue" points="491.69,-130.3 502.25,-129.36 493.41,-123.51 491.69,-130.3"/>
</g>
<!-- Node9&#45;&gt;Node4 -->
<g id="edge11" class="edge">
<title>Node9&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M264.24,-133.52C329.68,-134.14 436.33,-135.14 492.03,-135.66"/>
<polygon fill="midnightblue" stroke="midnightblue" points="492.1,-139.16 502.13,-135.75 492.17,-132.16 492.1,-139.16"/>
</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="namespacelinear__probing_a16680b8a37d442c2f208faa286e33908_cgraph_org.svg" target="_base">
<rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
<path id="arrow"
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
style="fill:#404040;"/>
</a>
</g>
</svg>
</svg>

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -0,0 +1,173 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
-->
<!-- Title: linear_probing::addInfo Pages: 1 -->
<svg width="600pt" height="172pt"
viewBox="0.00 0.00 600.00 171.85" 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 167.85)">
<title>linear_probing::addInfo</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-167.85 596,-167.85 596,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<polygon fill="#bfbfbf" stroke="black" points="0,-104.5 0,-123.5 115,-123.5 115,-104.5 0,-104.5"/>
<text text-anchor="middle" x="57.5" y="-111.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::addInfo</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a16d34fd3511626a83ab00665d7bc34d1" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="158.5,-85.5 158.5,-104.5 256.5,-104.5 256.5,-85.5 158.5,-85.5"/>
<text text-anchor="middle" x="207.5" y="-92.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::add</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M115.3,-106.71C126.05,-105.33 137.31,-103.88 148.1,-102.5"/>
<polygon fill="midnightblue" stroke="midnightblue" points="148.81,-105.94 158.28,-101.19 147.92,-98.99 148.81,-105.94"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="502.5,-126.5 502.5,-145.5 556.5,-145.5 556.5,-126.5 502.5,-126.5"/>
<text text-anchor="middle" x="529.5" y="-133.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge12" class="edge">
<title>Node1&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M75.93,-123.58C94.06,-132.95 123.58,-146.59 151,-152 274.09,-176.3 423.98,-155.36 491.91,-143.21"/>
<polygon fill="midnightblue" stroke="midnightblue" points="492.88,-146.59 502.09,-141.35 491.62,-139.71 492.88,-146.59"/>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="black" points="469.5,-0.5 469.5,-19.5 589.5,-19.5 589.5,-0.5 469.5,-0.5"/>
<text text-anchor="middle" x="529.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::hashFxn</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge13" class="edge">
<title>Node1&#45;&gt;Node5</title>
<path fill="none" stroke="midnightblue" d="M79.49,-104.39C98.04,-96.14 125.95,-84.29 151,-76 215.88,-54.52 232.83,-50.63 300,-38 353.13,-28.01 413.91,-20.76 459.42,-16.14"/>
<polygon fill="midnightblue" stroke="midnightblue" points="459.87,-19.62 469.48,-15.14 459.18,-12.65 459.87,-19.62"/>
</g>
<!-- Node9 -->
<g id="node9" class="node">
<title>Node9</title>
<g id="a_node9"><a xlink:href="../../d8/d89/namespacelinear__probing.html#ad87b71d810901fab69c4ad9d4d0fa635" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="151,-123.5 151,-142.5 264,-142.5 264,-123.5 151,-123.5"/>
<text text-anchor="middle" x="207.5" y="-130.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::display</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node9 -->
<g id="edge10" class="edge">
<title>Node1&#45;&gt;Node9</title>
<path fill="none" stroke="midnightblue" d="M115.3,-121.29C123.53,-122.35 132.06,-123.44 140.45,-124.52"/>
<polygon fill="midnightblue" stroke="midnightblue" points="140.22,-128.02 150.59,-125.82 141.11,-121.08 140.22,-128.02"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a6322209aaa91b7bbf16f96e1cc52b746" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="300,-47.5 300,-66.5 431,-66.5 431,-47.5 300,-47.5"/>
<text text-anchor="middle" x="365.5" y="-54.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::linearProbe</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node2&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M247.87,-85.41C268.45,-80.4 293.84,-74.21 315.67,-68.89"/>
<polygon fill="midnightblue" stroke="midnightblue" points="316.53,-72.29 325.42,-66.52 314.87,-65.49 316.53,-72.29"/>
</g>
<!-- Node8 -->
<g id="node8" class="node">
<title>Node8</title>
<g id="a_node8"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a6a082dc1426a79f866cee6b370df37b0" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="309.5,-85.5 309.5,-104.5 421.5,-104.5 421.5,-85.5 309.5,-85.5"/>
<text text-anchor="middle" x="365.5" y="-92.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::rehash</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node8 -->
<g id="edge7" class="edge">
<title>Node2&#45;&gt;Node8</title>
<path fill="none" stroke="midnightblue" d="M256.58,-88.71C270.05,-88.28 284.92,-88.15 299.21,-88.33"/>
<polygon fill="midnightblue" stroke="midnightblue" points="299.43,-91.83 309.49,-88.52 299.55,-84.84 299.43,-91.83"/>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node3&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M411.31,-66.61C418.2,-69.08 425,-72.17 431,-76 451.44,-89.05 446.65,-103.81 467,-117 474.7,-121.99 483.79,-125.73 492.58,-128.52"/>
<polygon fill="midnightblue" stroke="midnightblue" points="491.71,-131.91 502.29,-131.27 493.62,-125.17 491.71,-131.91"/>
</g>
<!-- Node3&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<title>Node3&#45;&gt;Node5</title>
<path fill="none" stroke="midnightblue" d="M399.28,-47.49C424.23,-40.25 458.78,-30.23 485.87,-22.37"/>
<polygon fill="midnightblue" stroke="midnightblue" points="486.86,-25.73 495.49,-19.58 484.91,-19 486.86,-25.73"/>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="467,-88.5 467,-107.5 592,-107.5 592,-88.5 467,-88.5"/>
<text text-anchor="middle" x="529.5" y="-95.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::putProber</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<title>Node3&#45;&gt;Node6</title>
<path fill="none" stroke="midnightblue" d="M404.07,-66.51C426.99,-72.31 456.5,-79.78 481.03,-85.99"/>
<polygon fill="midnightblue" stroke="midnightblue" points="480.3,-89.41 490.85,-88.47 482.01,-82.62 480.3,-89.41"/>
</g>
<!-- Node7 -->
<g id="node7" class="node">
<title>Node7</title>
<g id="a_node7"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="467,-39 467,-69 592,-69 592,-39 467,-39"/>
<text text-anchor="start" x="475" y="-57" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::searching</text>
<text text-anchor="middle" x="529.5" y="-46" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node7 -->
<g id="edge6" class="edge">
<title>Node3&#45;&gt;Node7</title>
<path fill="none" stroke="midnightblue" d="M431.46,-55.8C439.78,-55.64 448.34,-55.48 456.76,-55.33"/>
<polygon fill="midnightblue" stroke="midnightblue" points="457.01,-58.82 466.95,-55.14 456.88,-51.83 457.01,-58.82"/>
</g>
<!-- Node8&#45;&gt;Node2 -->
<g id="edge8" class="edge">
<title>Node8&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M309.49,-101.48C295.6,-101.81 280.64,-101.84 266.61,-101.55"/>
<polygon fill="midnightblue" stroke="midnightblue" points="266.67,-98.05 256.58,-101.29 266.48,-105.05 266.67,-98.05"/>
</g>
<!-- Node8&#45;&gt;Node4 -->
<g id="edge9" class="edge">
<title>Node8&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M404.07,-104.51C430.64,-111.23 466.06,-120.2 492.32,-126.84"/>
<polygon fill="midnightblue" stroke="midnightblue" points="491.69,-130.3 502.25,-129.36 493.41,-123.51 491.69,-130.3"/>
</g>
<!-- Node9&#45;&gt;Node4 -->
<g id="edge11" class="edge">
<title>Node9&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M264.24,-133.52C329.68,-134.14 436.33,-135.14 492.03,-135.66"/>
<polygon fill="midnightblue" stroke="midnightblue" points="492.1,-139.16 502.13,-135.75 492.17,-132.16 492.1,-139.16"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 8.9 KiB

View File

@@ -0,0 +1,9 @@
<map id="linear_probing::add" name="linear_probing::add">
<area shape="rect" id="node1" title=" " alt="" coords="5,5,136,32"/>
<area shape="rect" id="node2" href="$d8/d89/namespacelinear__probing.html#a6322209aaa91b7bbf16f96e1cc52b746" title=" " alt="" coords="184,56,359,83"/>
<area shape="rect" id="node7" href="$d8/d89/namespacelinear__probing.html#a6a082dc1426a79f866cee6b370df37b0" title=" " alt="" coords="197,5,346,32"/>
<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="454,5,526,32"/>
<area shape="rect" id="node4" href="$d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="410,56,570,83"/>
<area shape="rect" id="node5" href="$d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541" title=" " alt="" coords="407,107,573,133"/>
<area shape="rect" id="node6" href="$d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77" title=" " alt="" coords="407,158,573,199"/>
</map>

View File

@@ -0,0 +1 @@
1c3896266704b6477280c1a5714a8b08

View File

@@ -0,0 +1,125 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
-->
<!-- Title: linear_probing::add Pages: 1 -->
<svg width="434pt" height="154pt"
viewBox="0.00 0.00 434.00 153.50" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 149.5)">
<title>linear_probing::add</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-149.5 430,-149.5 430,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<polygon fill="#bfbfbf" stroke="black" points="0,-126 0,-145 98,-145 98,-126 0,-126"/>
<text text-anchor="middle" x="49" y="-133" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::add</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a6322209aaa91b7bbf16f96e1cc52b746" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="134,-88 134,-107 265,-107 265,-88 134,-88"/>
<text text-anchor="middle" x="199.5" y="-95" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::linearProbe</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M87.47,-125.91C106.89,-120.94 130.8,-114.82 151.45,-109.54"/>
<polygon fill="midnightblue" stroke="midnightblue" points="152.48,-112.89 161.3,-107.02 150.74,-106.11 152.48,-112.89"/>
</g>
<!-- Node7 -->
<g id="node7" class="node">
<title>Node7</title>
<g id="a_node7"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a6a082dc1426a79f866cee6b370df37b0" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="143.5,-126 143.5,-145 255.5,-145 255.5,-126 143.5,-126"/>
<text text-anchor="middle" x="199.5" y="-133" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::rehash</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node7 -->
<g id="edge6" class="edge">
<title>Node1&#45;&gt;Node7</title>
<path fill="none" stroke="midnightblue" d="M98.21,-129.13C109.35,-128.79 121.38,-128.68 133.11,-128.79"/>
<polygon fill="midnightblue" stroke="midnightblue" points="133.26,-132.3 143.31,-128.95 133.37,-125.3 133.26,-132.3"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="336.5,-126 336.5,-145 390.5,-145 390.5,-126 336.5,-126"/>
<text text-anchor="middle" x="363.5" y="-133" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node2&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M241.38,-107.09C267.58,-113.23 301.27,-121.14 326.46,-127.05"/>
<polygon fill="midnightblue" stroke="midnightblue" points="325.81,-130.49 336.35,-129.37 327.41,-123.67 325.81,-130.49"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="black" points="303.5,-88 303.5,-107 423.5,-107 423.5,-88 303.5,-88"/>
<text text-anchor="middle" x="363.5" y="-95" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::hashFxn</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node2&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M265.46,-97.5C274.54,-97.5 283.9,-97.5 293.06,-97.5"/>
<polygon fill="midnightblue" stroke="midnightblue" points="293.29,-101 303.29,-97.5 293.29,-94 293.29,-101"/>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="301,-50 301,-69 426,-69 426,-50 301,-50"/>
<text text-anchor="middle" x="363.5" y="-57" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::putProber</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<title>Node2&#45;&gt;Node5</title>
<path fill="none" stroke="midnightblue" d="M241.38,-87.91C262.85,-82.87 289.36,-76.66 312.1,-71.32"/>
<polygon fill="midnightblue" stroke="midnightblue" points="312.98,-74.71 321.91,-69.02 311.38,-67.9 312.98,-74.71"/>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="301,-0.5 301,-30.5 426,-30.5 426,-0.5 301,-0.5"/>
<text text-anchor="start" x="309" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::searching</text>
<text text-anchor="middle" x="363.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<title>Node2&#45;&gt;Node6</title>
<path fill="none" stroke="midnightblue" d="M215.83,-87.97C235.26,-76.1 269.95,-55.54 301,-40.5 305.08,-38.53 309.35,-36.57 313.67,-34.67"/>
<polygon fill="midnightblue" stroke="midnightblue" points="315.31,-37.77 323.12,-30.62 312.55,-31.34 315.31,-37.77"/>
</g>
<!-- Node7&#45;&gt;Node1 -->
<g id="edge7" class="edge">
<title>Node7&#45;&gt;Node1</title>
<path fill="none" stroke="midnightblue" d="M143.31,-142.05C131.97,-142.29 120,-142.32 108.55,-142.11"/>
<polygon fill="midnightblue" stroke="midnightblue" points="108.29,-138.61 98.21,-141.87 108.13,-145.61 108.29,-138.61"/>
</g>
<!-- Node7&#45;&gt;Node3 -->
<g id="edge8" class="edge">
<title>Node7&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M255.8,-135.5C279.06,-135.5 305.47,-135.5 326.2,-135.5"/>
<polygon fill="midnightblue" stroke="midnightblue" points="326.48,-139 336.48,-135.5 326.48,-132 326.48,-139"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.2 KiB

View File

@@ -0,0 +1,7 @@
<map id="linear_probing::linearProbe" name="linear_probing::linearProbe">
<area shape="rect" id="node1" title=" " alt="" coords="5,81,180,108"/>
<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="275,5,347,32"/>
<area shape="rect" id="node3" href="$d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="231,56,391,83"/>
<area shape="rect" id="node4" href="$d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541" title=" " alt="" coords="228,107,395,133"/>
<area shape="rect" id="node5" href="$d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77" title=" " alt="" coords="228,158,395,199"/>
</map>

View File

@@ -0,0 +1 @@
fa59d30a6fedf471602fec17d8531f1f

View File

@@ -0,0 +1,83 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
-->
<!-- Title: linear_probing::linearProbe Pages: 1 -->
<svg width="300pt" height="154pt"
viewBox="0.00 0.00 300.00 153.50" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 149.5)">
<title>linear_probing::linearProbe</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-149.5 296,-149.5 296,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<polygon fill="#bfbfbf" stroke="black" points="0,-69 0,-88 131,-88 131,-69 0,-69"/>
<text text-anchor="middle" x="65.5" y="-76" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::linearProbe</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="202.5,-126 202.5,-145 256.5,-145 256.5,-126 202.5,-126"/>
<text text-anchor="middle" x="229.5" y="-133" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M90.72,-88.14C110.98,-96.09 140.71,-107.48 167,-116.5 175.28,-119.34 184.25,-122.22 192.72,-124.85"/>
<polygon fill="midnightblue" stroke="midnightblue" points="191.76,-128.22 202.35,-127.81 193.82,-121.53 191.76,-128.22"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="black" points="169.5,-88 169.5,-107 289.5,-107 289.5,-88 169.5,-88"/>
<text text-anchor="middle" x="229.5" y="-95" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::hashFxn</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node1&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M131.46,-86.12C140.64,-87.2 150.1,-88.31 159.36,-89.39"/>
<polygon fill="midnightblue" stroke="midnightblue" points="158.95,-92.87 169.29,-90.56 159.77,-85.92 158.95,-92.87"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="167,-50 167,-69 292,-69 292,-50 167,-50"/>
<text text-anchor="middle" x="229.5" y="-57" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::putProber</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node1&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M131.46,-70.88C139.78,-69.91 148.34,-68.9 156.76,-67.91"/>
<polygon fill="midnightblue" stroke="midnightblue" points="157.42,-71.36 166.95,-66.72 156.61,-64.41 157.42,-71.36"/>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="167,-0.5 167,-30.5 292,-30.5 292,-0.5 167,-0.5"/>
<text text-anchor="start" x="175" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::searching</text>
<text text-anchor="middle" x="229.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<title>Node1&#45;&gt;Node5</title>
<path fill="none" stroke="midnightblue" d="M91.1,-68.93C114.64,-59.78 150.8,-45.72 180.11,-34.32"/>
<polygon fill="midnightblue" stroke="midnightblue" points="181.71,-37.45 189.76,-30.57 179.17,-30.93 181.71,-37.45"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.1 KiB

View File

@@ -0,0 +1,9 @@
<map id="linear_probing::rehash" name="linear_probing::rehash">
<area shape="rect" id="node1" title=" " alt="" coords="5,56,155,83"/>
<area shape="rect" id="node2" href="$d8/d89/namespacelinear__probing.html#a16d34fd3511626a83ab00665d7bc34d1" title=" " alt="" coords="203,56,333,83"/>
<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="651,5,723,32"/>
<area shape="rect" id="node3" href="$d8/d89/namespacelinear__probing.html#a6322209aaa91b7bbf16f96e1cc52b746" title=" " alt="" coords="381,56,556,83"/>
<area shape="rect" id="node5" href="$d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="607,56,767,83"/>
<area shape="rect" id="node6" href="$d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541" title=" " alt="" coords="604,107,771,133"/>
<area shape="rect" id="node7" href="$d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77" title=" " alt="" coords="604,158,771,199"/>
</map>

View File

@@ -0,0 +1 @@
c898350363750456f64ef636d8162f8b

View File

@@ -0,0 +1,213 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
-->
<!-- Title: linear_probing::rehash Pages: 1 -->
<!--zoomable 154 -->
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
<style type="text/css"><![CDATA[
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<script type="text/javascript"><![CDATA[
var edges = document.getElementsByTagName('g');
if (edges && edges.length) {
for (var i=0;i<edges.length;i++) {
if (edges[i].id.substr(0,4)=='edge') {
edges[i].setAttribute('class','edge');
}
}
}
]]></script>
<defs>
<circle id="rim" cx="0" cy="0" r="7"/>
<circle id="rim2" cx="0" cy="0" r="3.5"/>
<g id="zoomPlus">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/>
</use>
<path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="zoomMin">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/>
</use>
<path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="dirArrow">
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="resetDef">
<use xlink:href="#rim2" fill="#404040">
<set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/>
</use>
</g>
</defs>
<script type="text/javascript">
var viewWidth = 582;
var viewHeight = 154;
var sectionId = 'dynsection-4';
</script>
<script xlink:href="../../svgpan.js"/>
<svg id="graph" class="graph">
<g id="viewport">
<title>linear_probing::rehash</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-149.5 578,-149.5 578,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<polygon fill="#bfbfbf" stroke="black" points="0,-88 0,-107 112,-107 112,-88 0,-88"/>
<text text-anchor="middle" x="56" y="-95" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::rehash</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a16d34fd3511626a83ab00665d7bc34d1" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="148,-88 148,-107 246,-107 246,-88 148,-88"/>
<text text-anchor="middle" x="197" y="-95" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::add</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M112.34,-90.88C120.62,-90.73 129.19,-90.71 137.55,-90.83"/>
<polygon fill="midnightblue" stroke="midnightblue" points="137.52,-94.33 147.59,-91.03 137.66,-87.33 137.52,-94.33"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="484.5,-126 484.5,-145 538.5,-145 538.5,-126 484.5,-126"/>
<text text-anchor="middle" x="511.5" y="-133" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge8" class="edge">
<title>Node1&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M96.19,-107.06C112.17,-110.59 130.87,-114.28 148,-116.5 266.7,-131.91 408.8,-134.91 474.24,-135.44"/>
<polygon fill="midnightblue" stroke="midnightblue" points="474.42,-138.94 484.44,-135.5 474.47,-131.94 474.42,-138.94"/>
</g>
<!-- Node2&#45;&gt;Node1 -->
<g id="edge7" class="edge">
<title>Node2&#45;&gt;Node1</title>
<path fill="none" stroke="midnightblue" d="M147.59,-103.97C139.5,-104.19 130.99,-104.28 122.55,-104.24"/>
<polygon fill="midnightblue" stroke="midnightblue" points="122.38,-100.74 112.34,-104.12 122.3,-107.74 122.38,-100.74"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a6322209aaa91b7bbf16f96e1cc52b746" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="282,-88 282,-107 413,-107 413,-88 282,-88"/>
<text text-anchor="middle" x="347.5" y="-95" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::linearProbe</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node2&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M246.21,-97.5C254.37,-97.5 263.01,-97.5 271.65,-97.5"/>
<polygon fill="midnightblue" stroke="midnightblue" points="271.78,-101 281.78,-97.5 271.78,-94 271.78,-101"/>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node3&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M389.38,-107.09C415.58,-113.23 449.27,-121.14 474.46,-127.05"/>
<polygon fill="midnightblue" stroke="midnightblue" points="473.81,-130.49 484.35,-129.37 475.41,-123.67 473.81,-130.49"/>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="black" points="451.5,-88 451.5,-107 571.5,-107 571.5,-88 451.5,-88"/>
<text text-anchor="middle" x="511.5" y="-95" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::hashFxn</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<title>Node3&#45;&gt;Node5</title>
<path fill="none" stroke="midnightblue" d="M413.46,-97.5C422.54,-97.5 431.9,-97.5 441.06,-97.5"/>
<polygon fill="midnightblue" stroke="midnightblue" points="441.29,-101 451.29,-97.5 441.29,-94 441.29,-101"/>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="449,-50 449,-69 574,-69 574,-50 449,-50"/>
<text text-anchor="middle" x="511.5" y="-57" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::putProber</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<title>Node3&#45;&gt;Node6</title>
<path fill="none" stroke="midnightblue" d="M389.38,-87.91C410.85,-82.87 437.36,-76.66 460.1,-71.32"/>
<polygon fill="midnightblue" stroke="midnightblue" points="460.98,-74.71 469.91,-69.02 459.38,-67.9 460.98,-74.71"/>
</g>
<!-- Node7 -->
<g id="node7" class="node">
<title>Node7</title>
<g id="a_node7"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="449,-0.5 449,-30.5 574,-30.5 574,-0.5 449,-0.5"/>
<text text-anchor="start" x="457" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::searching</text>
<text text-anchor="middle" x="511.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node7 -->
<g id="edge6" class="edge">
<title>Node3&#45;&gt;Node7</title>
<path fill="none" stroke="midnightblue" d="M363.83,-87.97C383.26,-76.1 417.95,-55.54 449,-40.5 453.08,-38.53 457.35,-36.57 461.67,-34.67"/>
<polygon fill="midnightblue" stroke="midnightblue" points="463.31,-37.77 471.12,-30.62 460.55,-31.34 463.31,-37.77"/>
</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="namespacelinear__probing_a6a082dc1426a79f866cee6b370df37b0_cgraph_org.svg" target="_base">
<rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
<path id="arrow"
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
style="fill:#404040;"/>
</a>
</g>
</svg>
</svg>

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -0,0 +1,125 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
-->
<!-- Title: linear_probing::rehash Pages: 1 -->
<svg width="582pt" height="154pt"
viewBox="0.00 0.00 582.00 153.50" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 149.5)">
<title>linear_probing::rehash</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-149.5 578,-149.5 578,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<polygon fill="#bfbfbf" stroke="black" points="0,-88 0,-107 112,-107 112,-88 0,-88"/>
<text text-anchor="middle" x="56" y="-95" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::rehash</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a16d34fd3511626a83ab00665d7bc34d1" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="148,-88 148,-107 246,-107 246,-88 148,-88"/>
<text text-anchor="middle" x="197" y="-95" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::add</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M112.34,-90.88C120.62,-90.73 129.19,-90.71 137.55,-90.83"/>
<polygon fill="midnightblue" stroke="midnightblue" points="137.52,-94.33 147.59,-91.03 137.66,-87.33 137.52,-94.33"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="484.5,-126 484.5,-145 538.5,-145 538.5,-126 484.5,-126"/>
<text text-anchor="middle" x="511.5" y="-133" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge8" class="edge">
<title>Node1&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M96.19,-107.06C112.17,-110.59 130.87,-114.28 148,-116.5 266.7,-131.91 408.8,-134.91 474.24,-135.44"/>
<polygon fill="midnightblue" stroke="midnightblue" points="474.42,-138.94 484.44,-135.5 474.47,-131.94 474.42,-138.94"/>
</g>
<!-- Node2&#45;&gt;Node1 -->
<g id="edge7" class="edge">
<title>Node2&#45;&gt;Node1</title>
<path fill="none" stroke="midnightblue" d="M147.59,-103.97C139.5,-104.19 130.99,-104.28 122.55,-104.24"/>
<polygon fill="midnightblue" stroke="midnightblue" points="122.38,-100.74 112.34,-104.12 122.3,-107.74 122.38,-100.74"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a6322209aaa91b7bbf16f96e1cc52b746" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="282,-88 282,-107 413,-107 413,-88 282,-88"/>
<text text-anchor="middle" x="347.5" y="-95" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::linearProbe</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node2&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M246.21,-97.5C254.37,-97.5 263.01,-97.5 271.65,-97.5"/>
<polygon fill="midnightblue" stroke="midnightblue" points="271.78,-101 281.78,-97.5 271.78,-94 271.78,-101"/>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node3&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M389.38,-107.09C415.58,-113.23 449.27,-121.14 474.46,-127.05"/>
<polygon fill="midnightblue" stroke="midnightblue" points="473.81,-130.49 484.35,-129.37 475.41,-123.67 473.81,-130.49"/>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="black" points="451.5,-88 451.5,-107 571.5,-107 571.5,-88 451.5,-88"/>
<text text-anchor="middle" x="511.5" y="-95" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::hashFxn</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<title>Node3&#45;&gt;Node5</title>
<path fill="none" stroke="midnightblue" d="M413.46,-97.5C422.54,-97.5 431.9,-97.5 441.06,-97.5"/>
<polygon fill="midnightblue" stroke="midnightblue" points="441.29,-101 451.29,-97.5 441.29,-94 441.29,-101"/>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="449,-50 449,-69 574,-69 574,-50 449,-50"/>
<text text-anchor="middle" x="511.5" y="-57" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::putProber</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<title>Node3&#45;&gt;Node6</title>
<path fill="none" stroke="midnightblue" d="M389.38,-87.91C410.85,-82.87 437.36,-76.66 460.1,-71.32"/>
<polygon fill="midnightblue" stroke="midnightblue" points="460.98,-74.71 469.91,-69.02 459.38,-67.9 460.98,-74.71"/>
</g>
<!-- Node7 -->
<g id="node7" class="node">
<title>Node7</title>
<g id="a_node7"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="449,-0.5 449,-30.5 574,-30.5 574,-0.5 449,-0.5"/>
<text text-anchor="start" x="457" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::searching</text>
<text text-anchor="middle" x="511.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node7 -->
<g id="edge6" class="edge">
<title>Node3&#45;&gt;Node7</title>
<path fill="none" stroke="midnightblue" d="M363.83,-87.97C383.26,-76.1 417.95,-55.54 449,-40.5 453.08,-38.53 457.35,-36.57 461.67,-34.67"/>
<polygon fill="midnightblue" stroke="midnightblue" points="463.31,-37.77 471.12,-30.62 460.55,-31.34 463.31,-37.77"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.2 KiB

View File

@@ -0,0 +1,10 @@
<map id="linear_probing::removalInfo" name="linear_probing::removalInfo">
<area shape="rect" id="node1" title=" " alt="" coords="5,50,184,77"/>
<area shape="rect" id="node2" href="$d8/d89/namespacelinear__probing.html#ad87b71d810901fab69c4ad9d4d0fa635" title=" " alt="" coords="445,25,596,51"/>
<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="703,21,775,47"/>
<area shape="rect" id="node4" href="$d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="659,189,819,215"/>
<area shape="rect" id="node5" href="$d8/d89/namespacelinear__probing.html#abcf8d033f8115f39f3c93cfb6cee0b28" title=" " alt="" coords="232,75,385,102"/>
<area shape="rect" id="node6" href="$d8/d89/namespacelinear__probing.html#a6322209aaa91b7bbf16f96e1cc52b746" title=" " alt="" coords="433,126,608,153"/>
<area shape="rect" id="node7" href="$d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541" title=" " alt="" coords="656,71,823,98"/>
<area shape="rect" id="node8" href="$d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77" title=" " alt="" coords="656,123,823,164"/>
</map>

View File

@@ -0,0 +1 @@
76f406586f207174e06115d9d25b3aa5

View File

@@ -0,0 +1,240 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
-->
<!-- Title: linear_probing::removalInfo Pages: 1 -->
<!--zoomable 165 -->
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
<style type="text/css"><![CDATA[
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<script type="text/javascript"><![CDATA[
var edges = document.getElementsByTagName('g');
if (edges && edges.length) {
for (var i=0;i<edges.length;i++) {
if (edges[i].id.substr(0,4)=='edge') {
edges[i].setAttribute('class','edge');
}
}
}
]]></script>
<defs>
<circle id="rim" cx="0" cy="0" r="7"/>
<circle id="rim2" cx="0" cy="0" r="3.5"/>
<g id="zoomPlus">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/>
</use>
<path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="zoomMin">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/>
</use>
<path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="dirArrow">
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="resetDef">
<use xlink:href="#rim2" fill="#404040">
<set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/>
</use>
</g>
</defs>
<script type="text/javascript">
var viewWidth = 621;
var viewHeight = 165;
var sectionId = 'dynsection-5';
</script>
<script xlink:href="../../svgpan.js"/>
<svg id="graph" class="graph">
<g id="viewport">
<title>linear_probing::removalInfo</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-161.41 617,-161.41 617,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<polygon fill="#bfbfbf" stroke="black" points="0,-104.5 0,-123.5 134,-123.5 134,-104.5 0,-104.5"/>
<text text-anchor="middle" x="67" y="-111.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::removalInfo</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../d8/d89/namespacelinear__probing.html#ad87b71d810901fab69c4ad9d4d0fa635" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="330,-123.5 330,-142.5 443,-142.5 443,-123.5 330,-123.5"/>
<text text-anchor="middle" x="386.5" y="-130.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::display</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M134.17,-117.96C188.55,-121.21 265.21,-125.8 319.53,-129.05"/>
<polygon fill="midnightblue" stroke="midnightblue" points="319.55,-132.56 329.74,-129.66 319.97,-125.57 319.55,-132.56"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="523.5,-126.5 523.5,-145.5 577.5,-145.5 577.5,-126.5 523.5,-126.5"/>
<text text-anchor="middle" x="550.5" y="-133.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge3" class="edge">
<title>Node1&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M105.09,-123.52C124.34,-128.16 148.32,-133.49 170,-137 293.9,-157.05 326.9,-162.2 452,-152 472.39,-150.34 494.94,-146.75 513.22,-143.4"/>
<polygon fill="midnightblue" stroke="midnightblue" points="513.98,-146.81 523.16,-141.52 512.68,-139.93 513.98,-146.81"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="black" points="490.5,-0.5 490.5,-19.5 610.5,-19.5 610.5,-0.5 490.5,-0.5"/>
<text text-anchor="middle" x="550.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::hashFxn</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge4" class="edge">
<title>Node1&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M91.65,-104.34C112.16,-96.17 142.75,-84.48 170,-76 236.08,-55.44 252.97,-50.68 321,-38 374.15,-28.1 434.93,-20.84 480.43,-16.2"/>
<polygon fill="midnightblue" stroke="midnightblue" points="480.89,-19.67 490.49,-15.19 480.19,-12.71 480.89,-19.67"/>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d8/d89/namespacelinear__probing.html#abcf8d033f8115f39f3c93cfb6cee0b28" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="170,-85.5 170,-104.5 285,-104.5 285,-85.5 170,-85.5"/>
<text text-anchor="middle" x="227.5" y="-92.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::remove</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge5" class="edge">
<title>Node1&#45;&gt;Node5</title>
<path fill="none" stroke="midnightblue" d="M134.3,-106.05C142.62,-105.05 151.14,-104.03 159.47,-103.03"/>
<polygon fill="midnightblue" stroke="midnightblue" points="160.01,-106.5 169.52,-101.83 159.18,-99.55 160.01,-106.5"/>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node2&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M443.25,-134.03C466.32,-134.46 492.43,-134.94 512.99,-135.32"/>
<polygon fill="midnightblue" stroke="midnightblue" points="513.13,-138.83 523.19,-135.51 513.26,-131.83 513.13,-138.83"/>
</g>
<!-- Node5&#45;&gt;Node3 -->
<g id="edge6" class="edge">
<title>Node5&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M285.25,-97.67C330.57,-100.32 395.62,-105.28 452,-114 472.45,-117.16 495.01,-122.15 513.27,-126.58"/>
<polygon fill="midnightblue" stroke="midnightblue" points="512.66,-130.03 523.2,-129.04 514.34,-123.24 512.66,-130.03"/>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a6322209aaa91b7bbf16f96e1cc52b746" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="321,-47.5 321,-66.5 452,-66.5 452,-47.5 321,-47.5"/>
<text text-anchor="middle" x="386.5" y="-54.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::linearProbe</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node6 -->
<g id="edge7" class="edge">
<title>Node5&#45;&gt;Node6</title>
<path fill="none" stroke="midnightblue" d="M268.12,-85.41C288.84,-80.4 314.39,-74.21 336.36,-68.89"/>
<polygon fill="midnightblue" stroke="midnightblue" points="337.27,-72.27 346.17,-66.52 335.62,-65.47 337.27,-72.27"/>
</g>
<!-- Node6&#45;&gt;Node3 -->
<g id="edge8" class="edge">
<title>Node6&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M421.61,-66.62C431.82,-70.29 442.75,-75.06 452,-81 471.04,-93.23 468.62,-105.32 488,-117 495.86,-121.74 505,-125.39 513.8,-128.17"/>
<polygon fill="midnightblue" stroke="midnightblue" points="512.92,-131.56 523.49,-130.94 514.84,-124.83 512.92,-131.56"/>
</g>
<!-- Node6&#45;&gt;Node4 -->
<g id="edge9" class="edge">
<title>Node6&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M420.28,-47.49C445.23,-40.25 479.78,-30.23 506.87,-22.37"/>
<polygon fill="midnightblue" stroke="midnightblue" points="507.86,-25.73 516.49,-19.58 505.91,-19 507.86,-25.73"/>
</g>
<!-- Node7 -->
<g id="node7" class="node">
<title>Node7</title>
<g id="a_node7"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="488,-88.5 488,-107.5 613,-107.5 613,-88.5 488,-88.5"/>
<text text-anchor="middle" x="550.5" y="-95.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::putProber</text>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node7 -->
<g id="edge10" class="edge">
<title>Node6&#45;&gt;Node7</title>
<path fill="none" stroke="midnightblue" d="M425.07,-66.51C447.99,-72.31 477.5,-79.78 502.03,-85.99"/>
<polygon fill="midnightblue" stroke="midnightblue" points="501.3,-89.41 511.85,-88.47 503.01,-82.62 501.3,-89.41"/>
</g>
<!-- Node8 -->
<g id="node8" class="node">
<title>Node8</title>
<g id="a_node8"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="488,-39 488,-69 613,-69 613,-39 488,-39"/>
<text text-anchor="start" x="496" y="-57" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::searching</text>
<text text-anchor="middle" x="550.5" y="-46" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node8 -->
<g id="edge11" class="edge">
<title>Node6&#45;&gt;Node8</title>
<path fill="none" stroke="midnightblue" d="M452.46,-55.8C460.78,-55.64 469.34,-55.48 477.76,-55.33"/>
<polygon fill="midnightblue" stroke="midnightblue" points="478.01,-58.82 487.95,-55.14 477.88,-51.83 478.01,-58.82"/>
</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="namespacelinear__probing_a75854f5aa216e61219154c62167ce8f0_cgraph_org.svg" target="_base">
<rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
<path id="arrow"
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
style="fill:#404040;"/>
</a>
</g>
</svg>
</svg>

After

Width:  |  Height:  |  Size: 13 KiB

View File

@@ -0,0 +1,152 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
-->
<!-- Title: linear_probing::removalInfo Pages: 1 -->
<svg width="621pt" height="165pt"
viewBox="0.00 0.00 621.00 165.41" 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 161.41)">
<title>linear_probing::removalInfo</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-161.41 617,-161.41 617,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<polygon fill="#bfbfbf" stroke="black" points="0,-104.5 0,-123.5 134,-123.5 134,-104.5 0,-104.5"/>
<text text-anchor="middle" x="67" y="-111.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::removalInfo</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a xlink:href="../../d8/d89/namespacelinear__probing.html#ad87b71d810901fab69c4ad9d4d0fa635" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="330,-123.5 330,-142.5 443,-142.5 443,-123.5 330,-123.5"/>
<text text-anchor="middle" x="386.5" y="-130.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::display</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M134.17,-117.96C188.55,-121.21 265.21,-125.8 319.53,-129.05"/>
<polygon fill="midnightblue" stroke="midnightblue" points="319.55,-132.56 329.74,-129.66 319.97,-125.57 319.55,-132.56"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="523.5,-126.5 523.5,-145.5 577.5,-145.5 577.5,-126.5 523.5,-126.5"/>
<text text-anchor="middle" x="550.5" y="-133.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge3" class="edge">
<title>Node1&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M105.09,-123.52C124.34,-128.16 148.32,-133.49 170,-137 293.9,-157.05 326.9,-162.2 452,-152 472.39,-150.34 494.94,-146.75 513.22,-143.4"/>
<polygon fill="midnightblue" stroke="midnightblue" points="513.98,-146.81 523.16,-141.52 512.68,-139.93 513.98,-146.81"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="black" points="490.5,-0.5 490.5,-19.5 610.5,-19.5 610.5,-0.5 490.5,-0.5"/>
<text text-anchor="middle" x="550.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::hashFxn</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge4" class="edge">
<title>Node1&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M91.65,-104.34C112.16,-96.17 142.75,-84.48 170,-76 236.08,-55.44 252.97,-50.68 321,-38 374.15,-28.1 434.93,-20.84 480.43,-16.2"/>
<polygon fill="midnightblue" stroke="midnightblue" points="480.89,-19.67 490.49,-15.19 480.19,-12.71 480.89,-19.67"/>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d8/d89/namespacelinear__probing.html#abcf8d033f8115f39f3c93cfb6cee0b28" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="170,-85.5 170,-104.5 285,-104.5 285,-85.5 170,-85.5"/>
<text text-anchor="middle" x="227.5" y="-92.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::remove</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge5" class="edge">
<title>Node1&#45;&gt;Node5</title>
<path fill="none" stroke="midnightblue" d="M134.3,-106.05C142.62,-105.05 151.14,-104.03 159.47,-103.03"/>
<polygon fill="midnightblue" stroke="midnightblue" points="160.01,-106.5 169.52,-101.83 159.18,-99.55 160.01,-106.5"/>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node2&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M443.25,-134.03C466.32,-134.46 492.43,-134.94 512.99,-135.32"/>
<polygon fill="midnightblue" stroke="midnightblue" points="513.13,-138.83 523.19,-135.51 513.26,-131.83 513.13,-138.83"/>
</g>
<!-- Node5&#45;&gt;Node3 -->
<g id="edge6" class="edge">
<title>Node5&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M285.25,-97.67C330.57,-100.32 395.62,-105.28 452,-114 472.45,-117.16 495.01,-122.15 513.27,-126.58"/>
<polygon fill="midnightblue" stroke="midnightblue" points="512.66,-130.03 523.2,-129.04 514.34,-123.24 512.66,-130.03"/>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a6322209aaa91b7bbf16f96e1cc52b746" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="321,-47.5 321,-66.5 452,-66.5 452,-47.5 321,-47.5"/>
<text text-anchor="middle" x="386.5" y="-54.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::linearProbe</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node6 -->
<g id="edge7" class="edge">
<title>Node5&#45;&gt;Node6</title>
<path fill="none" stroke="midnightblue" d="M268.12,-85.41C288.84,-80.4 314.39,-74.21 336.36,-68.89"/>
<polygon fill="midnightblue" stroke="midnightblue" points="337.27,-72.27 346.17,-66.52 335.62,-65.47 337.27,-72.27"/>
</g>
<!-- Node6&#45;&gt;Node3 -->
<g id="edge8" class="edge">
<title>Node6&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M421.61,-66.62C431.82,-70.29 442.75,-75.06 452,-81 471.04,-93.23 468.62,-105.32 488,-117 495.86,-121.74 505,-125.39 513.8,-128.17"/>
<polygon fill="midnightblue" stroke="midnightblue" points="512.92,-131.56 523.49,-130.94 514.84,-124.83 512.92,-131.56"/>
</g>
<!-- Node6&#45;&gt;Node4 -->
<g id="edge9" class="edge">
<title>Node6&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M420.28,-47.49C445.23,-40.25 479.78,-30.23 506.87,-22.37"/>
<polygon fill="midnightblue" stroke="midnightblue" points="507.86,-25.73 516.49,-19.58 505.91,-19 507.86,-25.73"/>
</g>
<!-- Node7 -->
<g id="node7" class="node">
<title>Node7</title>
<g id="a_node7"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="488,-88.5 488,-107.5 613,-107.5 613,-88.5 488,-88.5"/>
<text text-anchor="middle" x="550.5" y="-95.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::putProber</text>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node7 -->
<g id="edge10" class="edge">
<title>Node6&#45;&gt;Node7</title>
<path fill="none" stroke="midnightblue" d="M425.07,-66.51C447.99,-72.31 477.5,-79.78 502.03,-85.99"/>
<polygon fill="midnightblue" stroke="midnightblue" points="501.3,-89.41 511.85,-88.47 503.01,-82.62 501.3,-89.41"/>
</g>
<!-- Node8 -->
<g id="node8" class="node">
<title>Node8</title>
<g id="a_node8"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="488,-39 488,-69 613,-69 613,-39 488,-39"/>
<text text-anchor="start" x="496" y="-57" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::searching</text>
<text text-anchor="middle" x="550.5" y="-46" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
</a>
</g>
</g>
<!-- Node6&#45;&gt;Node8 -->
<g id="edge11" class="edge">
<title>Node6&#45;&gt;Node8</title>
<path fill="none" stroke="midnightblue" d="M452.46,-55.8C460.78,-55.64 469.34,-55.48 477.76,-55.33"/>
<polygon fill="midnightblue" stroke="midnightblue" points="478.01,-58.82 487.95,-55.14 477.88,-51.83 478.01,-58.82"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 7.9 KiB

View File

@@ -0,0 +1,8 @@
<map id="linear_probing::remove" name="linear_probing::remove">
<area shape="rect" id="node1" title=" " alt="" coords="5,31,159,57"/>
<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="477,5,549,32"/>
<area shape="rect" id="node3" href="$d8/d89/namespacelinear__probing.html#a6322209aaa91b7bbf16f96e1cc52b746" title=" " alt="" coords="207,56,381,83"/>
<area shape="rect" id="node4" href="$d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527" title="Hash a key. Uses the STL library&#39;s std::hash() function." alt="" coords="433,56,593,83"/>
<area shape="rect" id="node5" href="$d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541" title=" " alt="" coords="429,107,596,133"/>
<area shape="rect" id="node6" href="$d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77" title=" " alt="" coords="429,158,596,199"/>
</map>

View File

@@ -0,0 +1 @@
432defc68e82abbb7827f83137a82d38

View File

@@ -0,0 +1,104 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
-->
<!-- Title: linear_probing::remove Pages: 1 -->
<svg width="451pt" height="154pt"
viewBox="0.00 0.00 451.00 153.50" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 149.5)">
<title>linear_probing::remove</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-149.5 447,-149.5 447,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<polygon fill="#bfbfbf" stroke="black" points="0,-107 0,-126 115,-126 115,-107 0,-107"/>
<text text-anchor="middle" x="57.5" y="-114" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::remove</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="353.5,-126 353.5,-145 407.5,-145 407.5,-126 353.5,-126"/>
<text text-anchor="middle" x="380.5" y="-133" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M115.15,-119.85C180.92,-123.75 287.48,-130.05 343.09,-133.34"/>
<polygon fill="midnightblue" stroke="midnightblue" points="342.99,-136.85 353.18,-133.94 343.41,-129.86 342.99,-136.85"/>
</g>
<!-- Node3 -->
<g id="node3" class="node">
<title>Node3</title>
<g id="a_node3"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a6322209aaa91b7bbf16f96e1cc52b746" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="151,-88 151,-107 282,-107 282,-88 151,-88"/>
<text text-anchor="middle" x="216.5" y="-95" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::linearProbe</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node1&#45;&gt;Node3</title>
<path fill="none" stroke="midnightblue" d="M115.18,-109.64C123.51,-108.63 132.2,-107.58 140.83,-106.54"/>
<polygon fill="midnightblue" stroke="midnightblue" points="141.4,-109.99 150.91,-105.32 140.56,-103.04 141.4,-109.99"/>
</g>
<!-- Node3&#45;&gt;Node2 -->
<g id="edge3" class="edge">
<title>Node3&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M258.38,-107.09C284.58,-113.23 318.27,-121.14 343.46,-127.05"/>
<polygon fill="midnightblue" stroke="midnightblue" points="342.81,-130.49 353.35,-129.37 344.41,-123.67 342.81,-130.49"/>
</g>
<!-- Node4 -->
<g id="node4" class="node">
<title>Node4</title>
<g id="a_node4"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a4bde7a47f98dd1ad24c84038e2608527" target="_top" xlink:title="Hash a key. Uses the STL library&#39;s std::hash() function.">
<polygon fill="white" stroke="black" points="320.5,-88 320.5,-107 440.5,-107 440.5,-88 320.5,-88"/>
<text text-anchor="middle" x="380.5" y="-95" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::hashFxn</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge4" class="edge">
<title>Node3&#45;&gt;Node4</title>
<path fill="none" stroke="midnightblue" d="M282.46,-97.5C291.54,-97.5 300.9,-97.5 310.06,-97.5"/>
<polygon fill="midnightblue" stroke="midnightblue" points="310.29,-101 320.29,-97.5 310.29,-94 310.29,-101"/>
</g>
<!-- Node5 -->
<g id="node5" class="node">
<title>Node5</title>
<g id="a_node5"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a75d779938df7ebc68581d922b60a2541" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="318,-50 318,-69 443,-69 443,-50 318,-50"/>
<text text-anchor="middle" x="380.5" y="-57" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::putProber</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node5 -->
<g id="edge5" class="edge">
<title>Node3&#45;&gt;Node5</title>
<path fill="none" stroke="midnightblue" d="M258.38,-87.91C279.85,-82.87 306.36,-76.66 329.1,-71.32"/>
<polygon fill="midnightblue" stroke="midnightblue" points="329.98,-74.71 338.91,-69.02 328.38,-67.9 329.98,-74.71"/>
</g>
<!-- Node6 -->
<g id="node6" class="node">
<title>Node6</title>
<g id="a_node6"><a xlink:href="../../d8/d89/namespacelinear__probing.html#a942fc8407b8001890ea26830cdcd9d77" target="_top" xlink:title=" ">
<polygon fill="white" stroke="black" points="318,-0.5 318,-30.5 443,-30.5 443,-0.5 318,-0.5"/>
<text text-anchor="start" x="326" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::searching</text>
<text text-anchor="middle" x="380.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">Prober</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node6 -->
<g id="edge6" class="edge">
<title>Node3&#45;&gt;Node6</title>
<path fill="none" stroke="midnightblue" d="M232.83,-87.97C252.26,-76.1 286.95,-55.54 318,-40.5 322.08,-38.53 326.35,-36.57 330.67,-34.67"/>
<polygon fill="midnightblue" stroke="midnightblue" points="332.31,-37.77 340.12,-30.62 329.55,-31.34 332.31,-37.77"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.2 KiB

View File

@@ -0,0 +1,4 @@
<map id="linear_probing::display" name="linear_probing::display">
<area shape="rect" id="node1" title=" " alt="" coords="5,5,156,32"/>
<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="204,5,276,32"/>
</map>

View File

@@ -0,0 +1 @@
12db28c16ccf50031901a745d926471f

View File

@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
-->
<!-- Title: linear_probing::display Pages: 1 -->
<svg width="211pt" height="28pt"
viewBox="0.00 0.00 211.00 28.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 24)">
<title>linear_probing::display</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-24 207,-24 207,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node">
<title>Node1</title>
<g id="a_node1"><a xlink:title=" ">
<polygon fill="#bfbfbf" stroke="black" points="0,-0.5 0,-19.5 113,-19.5 113,-0.5 0,-0.5"/>
<text text-anchor="middle" x="56.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">linear_probing::display</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="node2" class="node">
<title>Node2</title>
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
<polygon fill="white" stroke="black" points="149,-0.5 149,-19.5 203,-19.5 203,-0.5 149,-0.5"/>
<text text-anchor="middle" x="176" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1" class="edge">
<title>Node1&#45;&gt;Node2</title>
<path fill="none" stroke="midnightblue" d="M113.15,-10C121.81,-10 130.57,-10 138.65,-10"/>
<polygon fill="midnightblue" stroke="midnightblue" points="138.83,-13.5 148.83,-10 138.83,-6.5 138.83,-13.5"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB