mirror of
https://github.com/TheAlgorithms/C-Plus-Plus.git
synced 2026-07-11 14:36:12 +08:00
Documentation for c26eea874d
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||
<meta name="generator" content="Doxygen 1.12.0"/>
|
||||
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>TheAlgorithms/C++: machine_learning/k_nearest_neighbors.cpp Source File</title>
|
||||
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
|
||||
@@ -60,7 +60,7 @@ window.MathJax = {
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.12.0 -->
|
||||
<!-- Generated by Doxygen 1.13.2 -->
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||
@@ -124,7 +124,8 @@ $(function(){initNavTree('d4/d3e/k__nearest__neighbors_8cpp_source.html','../../
|
||||
<div class="headertitle"><div class="title">k_nearest_neighbors.cpp</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<a href="../../d4/d3e/k__nearest__neighbors_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
|
||||
<a href="../../d4/d3e/k__nearest__neighbors_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
|
||||
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
|
||||
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include <algorithm></span> </div>
|
||||
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#include <cassert></span> </div>
|
||||
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#include <cmath></span> </div>
|
||||
@@ -132,11 +133,11 @@ $(function(){initNavTree('d4/d3e/k__nearest__neighbors_8cpp_source.html','../../
|
||||
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#include <numeric></span> </div>
|
||||
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include <unordered_map></span> </div>
|
||||
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#include <vector></span> </div>
|
||||
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
|
||||
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span></div>
|
||||
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="keyword">namespace </span><a class="code hl_namespace" href="../../d8/d77/namespacemachine__learning.html">machine_learning</a> {</div>
|
||||
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> </div>
|
||||
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span></div>
|
||||
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span><span class="keyword">namespace </span><a class="code hl_namespace" href="../../d7/d4c/namespacek__nearest__neighbors.html">k_nearest_neighbors</a> {</div>
|
||||
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
|
||||
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span></div>
|
||||
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span><span class="keyword">template</span> <<span class="keyword">typename</span> T></div>
|
||||
<div class="foldopen" id="foldopen00043" data-start="{" data-end="}">
|
||||
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"><a class="line" href="../../d4/d3e/k__nearest__neighbors_8cpp.html#ad6ae16e50bb153ebaa7251d0aaa97b69"> 43</a></span><span class="keywordtype">double</span> <a class="code hl_function" href="../../d4/d3e/k__nearest__neighbors_8cpp.html#ad6ae16e50bb153ebaa7251d0aaa97b69">euclidean_distance</a>(<span class="keyword">const</span> std::vector<T>& a, <span class="keyword">const</span> std::vector<T>& b) {</div>
|
||||
@@ -147,9 +148,9 @@ $(function(){initNavTree('d4/d3e/k__nearest__neighbors_8cpp_source.html','../../
|
||||
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">return</span> std::sqrt(std::accumulate(aux.begin(), aux.end(), 0.0));</div>
|
||||
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span>}</div>
|
||||
</div>
|
||||
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> </div>
|
||||
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span></div>
|
||||
<div class="foldopen" id="foldopen00055" data-start="{" data-end="};">
|
||||
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"><a class="line" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html"> 55</a></span><span class="keyword">class </span><a class="code hl_class" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html">Knn</a> {</div>
|
||||
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"><a class="line" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html"> 55</a></span><span class="keyword">class </span><a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a188d29ffcefdb5900a8cd41eccd89200">Knn</a> {</div>
|
||||
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="keyword">private</span>:</div>
|
||||
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"><a class="line" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a16ddc13621eec6ac5f83658b3401a581"> 57</a></span> std::vector<std::vector<double>> <a class="code hl_variable" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a16ddc13621eec6ac5f83658b3401a581">X_</a>{}; </div>
|
||||
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"><a class="line" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a209383503fb6c03afac405a80bace964"> 58</a></span> std::vector<int> <a class="code hl_variable" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a209383503fb6c03afac405a80bace964">Y_</a>{}; </div>
|
||||
@@ -159,17 +160,17 @@ $(function(){initNavTree('d4/d3e/k__nearest__neighbors_8cpp_source.html','../../
|
||||
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"><a class="line" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a188d29ffcefdb5900a8cd41eccd89200"> 67</a></span> <span class="keyword">explicit</span> <a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a188d29ffcefdb5900a8cd41eccd89200">Knn</a>(std::vector<std::vector<double>>& X, std::vector<int>& Y)</div>
|
||||
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> : <a class="code hl_variable" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a16ddc13621eec6ac5f83658b3401a581">X_</a>(X), <a class="code hl_variable" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a209383503fb6c03afac405a80bace964">Y_</a>(Y){};</div>
|
||||
</div>
|
||||
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> </div>
|
||||
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"><a class="line" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a9f5885c40112481ae5b588fe81d7910b"> 75</a></span> <a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a9f5885c40112481ae5b588fe81d7910b">Knn</a>(<span class="keyword">const</span> <a class="code hl_class" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html">Knn</a>& model) = <span class="keywordflow">default</span>;</div>
|
||||
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> </div>
|
||||
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"><a class="line" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a080f5b1742832a03c1cbba596a48bd1a"> 80</a></span> <a class="code hl_class" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html">Knn</a>& <a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a080f5b1742832a03c1cbba596a48bd1a">operator=</a>(<span class="keyword">const</span> <a class="code hl_class" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html">Knn</a>& model) = <span class="keywordflow">default</span>;</div>
|
||||
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> </div>
|
||||
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"><a class="line" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a4b17dcf17c847f0295b60029512c120e"> 85</a></span> <a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a4b17dcf17c847f0295b60029512c120e">Knn</a>(<a class="code hl_class" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html">Knn</a>&&) = <span class="keywordflow">default</span>;</div>
|
||||
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> </div>
|
||||
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"><a class="line" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#ac06986d5afddc767ddba4da738f75563"> 90</a></span> <a class="code hl_class" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html">Knn</a>& <a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#ac06986d5afddc767ddba4da738f75563">operator=</a>(<a class="code hl_class" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html">Knn</a>&&) = <span class="keywordflow">default</span>;</div>
|
||||
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> </div>
|
||||
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span></div>
|
||||
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"><a class="line" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a9f5885c40112481ae5b588fe81d7910b"> 75</a></span> <a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a9f5885c40112481ae5b588fe81d7910b">Knn</a>(<span class="keyword">const</span> <a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a188d29ffcefdb5900a8cd41eccd89200">Knn</a>& model) = <span class="keywordflow">default</span>;</div>
|
||||
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span></div>
|
||||
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"><a class="line" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a080f5b1742832a03c1cbba596a48bd1a"> 80</a></span> <a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a188d29ffcefdb5900a8cd41eccd89200">Knn</a>& <a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a080f5b1742832a03c1cbba596a48bd1a">operator=</a>(<span class="keyword">const</span> <a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a188d29ffcefdb5900a8cd41eccd89200">Knn</a>& model) = <span class="keywordflow">default</span>;</div>
|
||||
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span></div>
|
||||
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"><a class="line" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a4b17dcf17c847f0295b60029512c120e"> 85</a></span> <a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a4b17dcf17c847f0295b60029512c120e">Knn</a>(<a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a188d29ffcefdb5900a8cd41eccd89200">Knn</a>&&) = <span class="keywordflow">default</span>;</div>
|
||||
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span></div>
|
||||
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"><a class="line" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#ac06986d5afddc767ddba4da738f75563"> 90</a></span> <a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a188d29ffcefdb5900a8cd41eccd89200">Knn</a>& <a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#ac06986d5afddc767ddba4da738f75563">operator=</a>(<a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a188d29ffcefdb5900a8cd41eccd89200">Knn</a>&&) = <span class="keywordflow">default</span>;</div>
|
||||
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span></div>
|
||||
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"><a class="line" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#afe732a33112b457b738f403622d226e5"> 95</a></span> <a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#afe732a33112b457b738f403622d226e5">~Knn</a>() = <span class="keywordflow">default</span>;</div>
|
||||
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> </div>
|
||||
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span></div>
|
||||
<div class="foldopen" id="foldopen00103" data-start="{" data-end="}">
|
||||
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"><a class="line" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a62e152db014cd4de675fa906e5ef2861"> 103</a></span> <span class="keywordtype">int</span> <a class="code hl_function" href="../../da/d94/classmachine__learning_1_1k__nearest__neighbors_1_1_knn.html#a62e152db014cd4de675fa906e5ef2861">predict</a>(std::vector<double>& sample, <span class="keywordtype">int</span> k) {</div>
|
||||
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> std::vector<int> neighbors;</div>
|
||||
@@ -205,7 +206,7 @@ $(function(){initNavTree('d4/d3e/k__nearest__neighbors_8cpp_source.html','../../
|
||||
</div>
|
||||
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span>} <span class="comment">// namespace k_nearest_neighbors</span></div>
|
||||
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span>} <span class="comment">// namespace machine_learning</span></div>
|
||||
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> </div>
|
||||
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span></div>
|
||||
<div class="foldopen" id="foldopen00140" data-start="{" data-end="}">
|
||||
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"><a class="line" href="../../d4/d3e/k__nearest__neighbors_8cpp.html#aa8dca7b867074164d5f45b0f3851269d"> 140</a></span><span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code hl_function" href="../../d4/d3e/k__nearest__neighbors_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>() {</div>
|
||||
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> std::cout << <span class="stringliteral">"------- Test 1 -------"</span> << std::endl;</div>
|
||||
@@ -254,7 +255,7 @@ $(function(){initNavTree('d4/d3e/k__nearest__neighbors_8cpp_source.html','../../
|
||||
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> std::cout << <span class="stringliteral">"... Passed"</span> << std::endl;</div>
|
||||
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span>}</div>
|
||||
</div>
|
||||
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> </div>
|
||||
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span></div>
|
||||
<div class="foldopen" id="foldopen00193" data-start="{" data-end="}">
|
||||
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"><a class="line" href="../../d4/d3e/k__nearest__neighbors_8cpp.html#a0ddf1224851353fc92bfbff6f499fa97"> 193</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="../../dd/d1e/generate__parentheses_8cpp.html#gae66f6b31b5ad750f1fe042a706a4e3d4">main</a>(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span>* argv[]) {</div>
|
||||
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> <a class="code hl_function" href="../../d4/d3e/k__nearest__neighbors_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>(); <span class="comment">// run self-test implementations</span></div>
|
||||
@@ -282,7 +283,7 @@ $(function(){initNavTree('d4/d3e/k__nearest__neighbors_8cpp_source.html','../../
|
||||
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="../../dir_3343723ae086de42ee4ca9774da3a13f.html">machine_learning</a></li><li class="navelem"><a class="el" href="../../d4/d3e/k__nearest__neighbors_8cpp.html">k_nearest_neighbors.cpp</a></li>
|
||||
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
|
||||
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||
</ul>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
Reference in New Issue
Block a user