mirror of
https://github.com/TheAlgorithms/C-Plus-Plus.git
synced 2026-05-01 05:53:30 +08:00
Documentation for 8bde3ea612
This commit is contained in:
@@ -149,6 +149,8 @@ Functions</h2></td></tr>
|
||||
<tr class="memitem:a70ca8d0267008e09cfa50b4e2ddfbe53" id="r_a70ca8d0267008e09cfa50b4e2ddfbe53"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../da/d61/structsearch_1_1sublist__search_1_1_node.html">Node</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="#a70ca8d0267008e09cfa50b4e2ddfbe53">search::sublist_search::makeLinkedList</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< uint64_t > &<a class="el" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>)</td></tr>
|
||||
<tr class="memdesc:a70ca8d0267008e09cfa50b4e2ddfbe53"><td class="mdescLeft"> </td><td class="mdescRight">Give a vector of data, it adds each element of vector in the linked list and return the address of head pointer. <br /></td></tr>
|
||||
<tr class="separator:a70ca8d0267008e09cfa50b4e2ddfbe53"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:aac16d28231a07fadec189f80937ac10d" id="r_aac16d28231a07fadec189f80937ac10d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#aac16d28231a07fadec189f80937ac10d">search::sublist_search::deleteList</a> (<a class="el" href="../../da/d61/structsearch_1_1sublist__search_1_1_node.html">Node</a> *const root)</td></tr>
|
||||
<tr class="separator:aac16d28231a07fadec189f80937ac10d"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a4faee403e2758aaab682ed6622ae218c" id="r_a4faee403e2758aaab682ed6622ae218c"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#a4faee403e2758aaab682ed6622ae218c">search::sublist_search::sublistSearch</a> (<a class="el" href="../../da/d61/structsearch_1_1sublist__search_1_1_node.html">Node</a> *sublist, <a class="el" href="../../da/d61/structsearch_1_1sublist__search_1_1_node.html">Node</a> *mainList)</td></tr>
|
||||
<tr class="memdesc:a4faee403e2758aaab682ed6622ae218c"><td class="mdescLeft"> </td><td class="mdescRight">Main searching function. <br /></td></tr>
|
||||
<tr class="separator:a4faee403e2758aaab682ed6622ae218c"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
@@ -176,6 +178,29 @@ Working</h3>
|
||||
</ul>
|
||||
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/foo290" target="_blank">Nitin Sharma</a> </dd></dl>
|
||||
</div><h2 class="groupheader">Function Documentation</h2>
|
||||
<a id="aac16d28231a07fadec189f80937ac10d" name="aac16d28231a07fadec189f80937ac10d"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#aac16d28231a07fadec189f80937ac10d">◆ </a></span>deleteList()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void search::sublist_search::deleteList </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype"><a class="el" href="../../da/d61/structsearch_1_1sublist__search_1_1_node.html">Node</a> *const</td> <td class="paramname"><span class="paramname"><em>root</em></span></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<div class="fragment"><div class="line"><span class="lineno"> 100</span> {</div>
|
||||
<div class="line"><span class="lineno"> 101</span> <span class="keywordflow">if</span> (root != NULL) {</div>
|
||||
<div class="line"><span class="lineno"> 102</span> deleteList(root->next);</div>
|
||||
<div class="line"><span class="lineno"> 103</span> <span class="keyword">delete</span> root;</div>
|
||||
<div class="line"><span class="lineno"> 104</span> }</div>
|
||||
<div class="line"><span class="lineno"> 105</span>}</div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
<a id="a0ddf1224851353fc92bfbff6f499fa97" name="a0ddf1224851353fc92bfbff6f499fa97"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a0ddf1224851353fc92bfbff6f499fa97">◆ </a></span>main()</h2>
|
||||
|
||||
@@ -208,44 +233,47 @@ Working</h3>
|
||||
<p>< Sublist to be searched</p>
|
||||
<p>< Main list in which sublist is to be searched</p>
|
||||
<p>< boolean to check if the sublist exists or not</p>
|
||||
<div class="fragment"><div class="line"><span class="lineno"> 339</span> {</div>
|
||||
<div class="line"><span class="lineno"> 340</span> <a class="code hl_function" href="#aa8dca7b867074164d5f45b0f3851269d">test</a>(); <span class="comment">// run self-test implementations</span></div>
|
||||
<div class="line"><span class="lineno"> 341</span> </div>
|
||||
<div class="line"><span class="lineno"> 342</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<uint64_t></a> mainlistData = {</div>
|
||||
<div class="line"><span class="lineno"> 343</span> 2, 5, 6, 7, 8}; <span class="comment">///< Main list in which sublist is to be searched</span></div>
|
||||
<div class="line"><span class="lineno"> 344</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<uint64_t></a> sublistData = {6, 8}; <span class="comment">///< Sublist to be searched</span></div>
|
||||
<div class="line"><span class="lineno"> 345</span> </div>
|
||||
<div class="line"><span class="lineno"> 346</span> <a class="code hl_struct" href="../../da/d61/structsearch_1_1sublist__search_1_1_node.html">search::sublist_search::Node</a> *mainlistLL =</div>
|
||||
<div class="line"><span class="lineno"> 347</span> <a class="code hl_function" href="#a70ca8d0267008e09cfa50b4e2ddfbe53">search::sublist_search::makeLinkedList</a>(mainlistData);</div>
|
||||
<div class="line"><span class="lineno"> 348</span> <a class="code hl_struct" href="../../da/d61/structsearch_1_1sublist__search_1_1_node.html">search::sublist_search::Node</a> *sublistLL =</div>
|
||||
<div class="line"><span class="lineno"> 349</span> <a class="code hl_function" href="#a70ca8d0267008e09cfa50b4e2ddfbe53">search::sublist_search::makeLinkedList</a>(</div>
|
||||
<div class="line"><span class="lineno"> 350</span> sublistData); <span class="comment">///< Main list in which sublist is to be</span><span class="comment"></span></div>
|
||||
<div class="line"><span class="lineno"> 351</span><span class="comment"> ///< searched</span></div>
|
||||
<div class="line"><span class="lineno"> 352</span><span class="comment"></span> </div>
|
||||
<div class="line"><span class="lineno"> 353</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="../../d3/d84/word__break_8cpp.html#a1cc9dd6e6190d10a010fdcdfe7a21a81">exists</a> = <a class="code hl_function" href="#a4faee403e2758aaab682ed6622ae218c">search::sublist_search::sublistSearch</a>(</div>
|
||||
<div class="line"><span class="lineno"> 354</span> sublistLL,</div>
|
||||
<div class="line"><span class="lineno"> 355</span> mainlistLL); <span class="comment">///< boolean to check if the sublist exists or not</span></div>
|
||||
<div class="line"><span class="lineno"> 356</span> </div>
|
||||
<div class="line"><span class="lineno"> 357</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Sublist: "</span> << <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><span class="lineno"> 358</span> <a class="code hl_function" href="#ad1028bc215281d62e344af99da57fab2">search::sublist_search::printLinkedList</a>(sublistLL);</div>
|
||||
<div class="line"><span class="lineno"> 359</span> </div>
|
||||
<div class="line"><span class="lineno"> 360</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Main list: "</span> << <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><span class="lineno"> 361</span> <a class="code hl_function" href="#ad1028bc215281d62e344af99da57fab2">search::sublist_search::printLinkedList</a>(mainlistLL);</div>
|
||||
<div class="line"><span class="lineno"> 362</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><span class="lineno"> 363</span> </div>
|
||||
<div class="line"><span class="lineno"> 364</span> <span class="keywordflow">if</span> (exists) {</div>
|
||||
<div class="line"><span class="lineno"> 365</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"[TRUE] - sublist found in main list\n"</span>;</div>
|
||||
<div class="line"><span class="lineno"> 366</span> } <span class="keywordflow">else</span> {</div>
|
||||
<div class="line"><span class="lineno"> 367</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"[FALSE] - sublist NOT found in main list\n"</span>;</div>
|
||||
<div class="line"><span class="lineno"> 368</span> }</div>
|
||||
<div class="line"><span class="lineno"> 369</span> <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><span class="lineno"> 370</span>}</div>
|
||||
<div class="fragment"><div class="line"><span class="lineno"> 359</span> {</div>
|
||||
<div class="line"><span class="lineno"> 360</span> <a class="code hl_function" href="#aa8dca7b867074164d5f45b0f3851269d">test</a>(); <span class="comment">// run self-test implementations</span></div>
|
||||
<div class="line"><span class="lineno"> 361</span> </div>
|
||||
<div class="line"><span class="lineno"> 362</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<uint64_t></a> mainlistData = {</div>
|
||||
<div class="line"><span class="lineno"> 363</span> 2, 5, 6, 7, 8}; <span class="comment">///< Main list in which sublist is to be searched</span></div>
|
||||
<div class="line"><span class="lineno"> 364</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<uint64_t></a> sublistData = {6, 8}; <span class="comment">///< Sublist to be searched</span></div>
|
||||
<div class="line"><span class="lineno"> 365</span> </div>
|
||||
<div class="line"><span class="lineno"> 366</span> <a class="code hl_struct" href="../../da/d61/structsearch_1_1sublist__search_1_1_node.html">search::sublist_search::Node</a> *mainlistLL =</div>
|
||||
<div class="line"><span class="lineno"> 367</span> <a class="code hl_function" href="#a70ca8d0267008e09cfa50b4e2ddfbe53">search::sublist_search::makeLinkedList</a>(mainlistData);</div>
|
||||
<div class="line"><span class="lineno"> 368</span> <a class="code hl_struct" href="../../da/d61/structsearch_1_1sublist__search_1_1_node.html">search::sublist_search::Node</a> *sublistLL =</div>
|
||||
<div class="line"><span class="lineno"> 369</span> <a class="code hl_function" href="#a70ca8d0267008e09cfa50b4e2ddfbe53">search::sublist_search::makeLinkedList</a>(</div>
|
||||
<div class="line"><span class="lineno"> 370</span> sublistData); <span class="comment">///< Main list in which sublist is to be</span><span class="comment"></span></div>
|
||||
<div class="line"><span class="lineno"> 371</span><span class="comment"> ///< searched</span></div>
|
||||
<div class="line"><span class="lineno"> 372</span><span class="comment"></span> </div>
|
||||
<div class="line"><span class="lineno"> 373</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="../../d3/d84/word__break_8cpp.html#a1cc9dd6e6190d10a010fdcdfe7a21a81">exists</a> = <a class="code hl_function" href="#a4faee403e2758aaab682ed6622ae218c">search::sublist_search::sublistSearch</a>(</div>
|
||||
<div class="line"><span class="lineno"> 374</span> sublistLL,</div>
|
||||
<div class="line"><span class="lineno"> 375</span> mainlistLL); <span class="comment">///< boolean to check if the sublist exists or not</span></div>
|
||||
<div class="line"><span class="lineno"> 376</span> </div>
|
||||
<div class="line"><span class="lineno"> 377</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Sublist: "</span> << <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><span class="lineno"> 378</span> <a class="code hl_function" href="#ad1028bc215281d62e344af99da57fab2">search::sublist_search::printLinkedList</a>(sublistLL);</div>
|
||||
<div class="line"><span class="lineno"> 379</span> </div>
|
||||
<div class="line"><span class="lineno"> 380</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Main list: "</span> << <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><span class="lineno"> 381</span> <a class="code hl_function" href="#ad1028bc215281d62e344af99da57fab2">search::sublist_search::printLinkedList</a>(mainlistLL);</div>
|
||||
<div class="line"><span class="lineno"> 382</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><span class="lineno"> 383</span> </div>
|
||||
<div class="line"><span class="lineno"> 384</span> <span class="keywordflow">if</span> (exists) {</div>
|
||||
<div class="line"><span class="lineno"> 385</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"[TRUE] - sublist found in main list\n"</span>;</div>
|
||||
<div class="line"><span class="lineno"> 386</span> } <span class="keywordflow">else</span> {</div>
|
||||
<div class="line"><span class="lineno"> 387</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"[FALSE] - sublist NOT found in main list\n"</span>;</div>
|
||||
<div class="line"><span class="lineno"> 388</span> }</div>
|
||||
<div class="line"><span class="lineno"> 389</span> </div>
|
||||
<div class="line"><span class="lineno"> 390</span> deleteList(mainlistLL);</div>
|
||||
<div class="line"><span class="lineno"> 391</span> deleteList(sublistLL);</div>
|
||||
<div class="line"><span class="lineno"> 392</span> <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><span class="lineno"> 393</span>}</div>
|
||||
<div class="ttc" id="abasic_ostream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div></div>
|
||||
<div class="ttc" id="aendl_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a></div><div class="ttdeci">T endl(T... args)</div></div>
|
||||
<div class="ttc" id="astructsearch_1_1sublist__search_1_1_node_html"><div class="ttname"><a href="../../da/d61/structsearch_1_1sublist__search_1_1_node.html">search::sublist_search::Node</a></div><div class="ttdoc">A Node structure representing a single link Node in a linked list.</div><div class="ttdef"><b>Definition</b> sublist_search.cpp:47</div></div>
|
||||
<div class="ttc" id="asublist__search_8cpp_html_a4faee403e2758aaab682ed6622ae218c"><div class="ttname"><a href="#a4faee403e2758aaab682ed6622ae218c">search::sublist_search::sublistSearch</a></div><div class="ttdeci">bool sublistSearch(Node *sublist, Node *mainList)</div><div class="ttdoc">Main searching function.</div><div class="ttdef"><b>Definition</b> sublist_search.cpp:100</div></div>
|
||||
<div class="ttc" id="asublist__search_8cpp_html_a4faee403e2758aaab682ed6622ae218c"><div class="ttname"><a href="#a4faee403e2758aaab682ed6622ae218c">search::sublist_search::sublistSearch</a></div><div class="ttdeci">bool sublistSearch(Node *sublist, Node *mainList)</div><div class="ttdoc">Main searching function.</div><div class="ttdef"><b>Definition</b> sublist_search.cpp:114</div></div>
|
||||
<div class="ttc" id="asublist__search_8cpp_html_a70ca8d0267008e09cfa50b4e2ddfbe53"><div class="ttname"><a href="#a70ca8d0267008e09cfa50b4e2ddfbe53">search::sublist_search::makeLinkedList</a></div><div class="ttdeci">Node * makeLinkedList(const std::vector< uint64_t > &data)</div><div class="ttdoc">Give a vector of data, it adds each element of vector in the linked list and return the address of he...</div><div class="ttdef"><b>Definition</b> sublist_search.cpp:73</div></div>
|
||||
<div class="ttc" id="asublist__search_8cpp_html_aa8dca7b867074164d5f45b0f3851269d"><div class="ttname"><a href="#aa8dca7b867074164d5f45b0f3851269d">test</a></div><div class="ttdeci">static void test()</div><div class="ttdoc">Self-test implementations.</div><div class="ttdef"><b>Definition</b> sublist_search.cpp:328</div></div>
|
||||
<div class="ttc" id="asublist__search_8cpp_html_aa8dca7b867074164d5f45b0f3851269d"><div class="ttname"><a href="#aa8dca7b867074164d5f45b0f3851269d">test</a></div><div class="ttdeci">static void test()</div><div class="ttdoc">Self-test implementations.</div><div class="ttdef"><b>Definition</b> sublist_search.cpp:348</div></div>
|
||||
<div class="ttc" id="asublist__search_8cpp_html_ad1028bc215281d62e344af99da57fab2"><div class="ttname"><a href="#ad1028bc215281d62e344af99da57fab2">search::sublist_search::printLinkedList</a></div><div class="ttdeci">void printLinkedList(Node *start)</div><div class="ttdoc">A simple function to print the linked list.</div><div class="ttdef"><b>Definition</b> sublist_search.cpp:57</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>
|
||||
<div class="ttc" id="aword__break_8cpp_html_a1cc9dd6e6190d10a010fdcdfe7a21a81"><div class="ttname"><a href="../../d3/d84/word__break_8cpp.html#a1cc9dd6e6190d10a010fdcdfe7a21a81">dynamic_programming::word_break::exists</a></div><div class="ttdeci">bool exists(const std::string &str, const std::unordered_set< std::string > &strSet)</div><div class="ttdoc">Function that checks if the string passed in param is present in the the unordered_set passed.</div><div class="ttdef"><b>Definition</b> word_break.cpp:60</div></div>
|
||||
@@ -387,52 +415,52 @@ false if the sublist is NOT found </dd></dl>
|
||||
<p>set the target pointer again to stating point of target list.</p>
|
||||
<p>set the main pointer to the next element of the main list and repeat the algo.</p>
|
||||
<p>If the main list is exhausted, means sublist does not found, return false</p>
|
||||
<div class="fragment"><div class="line"><span class="lineno"> 100</span> {</div>
|
||||
<div class="line"><span class="lineno"> 101</span> <span class="keywordflow">if</span> (sublist == <span class="keyword">nullptr</span> || mainList == <span class="keyword">nullptr</span>) {</div>
|
||||
<div class="line"><span class="lineno"> 102</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
||||
<div class="line"><span class="lineno"> 103</span> }</div>
|
||||
<div class="line"><span class="lineno"> 104</span><span class="comment"></span> </div>
|
||||
<div class="line"><span class="lineno"> 105</span><span class="comment"> /// Initialize target pointer to the head node of sublist.</span></div>
|
||||
<div class="line"><span class="lineno"> 106</span><span class="comment"></span> <a class="code hl_class" href="../../db/d8b/struct_node.html">Node</a> *target_ptr = sublist;</div>
|
||||
<div class="line"><span class="lineno"> 107</span> </div>
|
||||
<div class="line"><span class="lineno"> 108</span> <span class="keywordflow">while</span> (mainList != <span class="keyword">nullptr</span>) {<span class="comment"></span></div>
|
||||
<div class="line"><span class="lineno"> 109</span><span class="comment"> /// Initialize main pointer to the current node of main list.</span></div>
|
||||
<div class="line"><span class="lineno"> 110</span><span class="comment"></span> <a class="code hl_class" href="../../db/d8b/struct_node.html">Node</a> *main_ptr = mainList;</div>
|
||||
<div class="line"><span class="lineno"> 111</span> </div>
|
||||
<div class="line"><span class="lineno"> 112</span> <span class="keywordflow">while</span> (target_ptr != <span class="keyword">nullptr</span>) {</div>
|
||||
<div class="line"><span class="lineno"> 113</span> <span class="keywordflow">if</span> (main_ptr == <span class="keyword">nullptr</span>) {</div>
|
||||
<div class="line"><span class="lineno"> 114</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
||||
<div class="line"><span class="lineno"> 115</span> </div>
|
||||
<div class="line"><span class="lineno"> 116</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (main_ptr->data == target_ptr->data) {<span class="comment"></span></div>
|
||||
<div class="line"><span class="lineno"> 117</span><span class="comment"> /// If the data of target node and main node is equal then move</span></div>
|
||||
<div class="line"><span class="lineno"> 118</span><span class="comment"> /// to the next node of both lists.</span></div>
|
||||
<div class="line"><span class="lineno"> 119</span><span class="comment"></span> target_ptr = target_ptr->next;</div>
|
||||
<div class="line"><span class="lineno"> 120</span> main_ptr = main_ptr->next;</div>
|
||||
<div class="fragment"><div class="line"><span class="lineno"> 114</span> {</div>
|
||||
<div class="line"><span class="lineno"> 115</span> <span class="keywordflow">if</span> (sublist == <span class="keyword">nullptr</span> || mainList == <span class="keyword">nullptr</span>) {</div>
|
||||
<div class="line"><span class="lineno"> 116</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
||||
<div class="line"><span class="lineno"> 117</span> }</div>
|
||||
<div class="line"><span class="lineno"> 118</span><span class="comment"></span> </div>
|
||||
<div class="line"><span class="lineno"> 119</span><span class="comment"> /// Initialize target pointer to the head node of sublist.</span></div>
|
||||
<div class="line"><span class="lineno"> 120</span><span class="comment"></span> <a class="code hl_class" href="../../db/d8b/struct_node.html">Node</a> *target_ptr = sublist;</div>
|
||||
<div class="line"><span class="lineno"> 121</span> </div>
|
||||
<div class="line"><span class="lineno"> 122</span> } <span class="keywordflow">else</span> {</div>
|
||||
<div class="line"><span class="lineno"> 123</span> <span class="keywordflow">break</span>;</div>
|
||||
<div class="line"><span class="lineno"> 124</span> }</div>
|
||||
<div class="line"><span class="lineno"> 125</span> }</div>
|
||||
<div class="line"><span class="lineno"> 126</span> </div>
|
||||
<div class="line"><span class="lineno"> 127</span> <span class="keywordflow">if</span> (target_ptr == <span class="keyword">nullptr</span>) {<span class="comment"></span></div>
|
||||
<div class="line"><span class="lineno"> 128</span><span class="comment"> /// Is target pointer becomes null that means the target list is</span></div>
|
||||
<div class="line"><span class="lineno"> 129</span><span class="comment"> /// been traversed without returning false. Which means the sublist</span></div>
|
||||
<div class="line"><span class="lineno"> 130</span><span class="comment"> /// has been found and return ture.</span></div>
|
||||
<div class="line"><span class="lineno"> 131</span><span class="comment"></span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
||||
<div class="line"><span class="lineno"> 132</span> }</div>
|
||||
<div class="line"><span class="lineno"> 133</span><span class="comment"></span> </div>
|
||||
<div class="line"><span class="lineno"> 134</span><span class="comment"> /// set the target pointer again to stating point of target list.</span></div>
|
||||
<div class="line"><span class="lineno"> 135</span><span class="comment"></span> target_ptr = sublist;</div>
|
||||
<div class="line"><span class="lineno"> 136</span><span class="comment"></span> </div>
|
||||
<div class="line"><span class="lineno"> 137</span><span class="comment"> /// set the main pointer to the next element of the main list and repeat</span></div>
|
||||
<div class="line"><span class="lineno"> 138</span><span class="comment"> /// the algo.</span></div>
|
||||
<div class="line"><span class="lineno"> 139</span><span class="comment"></span> mainList = mainList->next;</div>
|
||||
<div class="line"><span class="lineno"> 140</span> }</div>
|
||||
<div class="line"><span class="lineno"> 141</span><span class="comment"></span> </div>
|
||||
<div class="line"><span class="lineno"> 142</span><span class="comment"> /// If the main list is exhausted, means sublist does not found, return</span></div>
|
||||
<div class="line"><span class="lineno"> 143</span><span class="comment"> /// false</span></div>
|
||||
<div class="line"><span class="lineno"> 144</span><span class="comment"></span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
||||
<div class="line"><span class="lineno"> 145</span>}</div>
|
||||
<div class="line"><span class="lineno"> 122</span> <span class="keywordflow">while</span> (mainList != <span class="keyword">nullptr</span>) {<span class="comment"></span></div>
|
||||
<div class="line"><span class="lineno"> 123</span><span class="comment"> /// Initialize main pointer to the current node of main list.</span></div>
|
||||
<div class="line"><span class="lineno"> 124</span><span class="comment"></span> <a class="code hl_class" href="../../db/d8b/struct_node.html">Node</a> *main_ptr = mainList;</div>
|
||||
<div class="line"><span class="lineno"> 125</span> </div>
|
||||
<div class="line"><span class="lineno"> 126</span> <span class="keywordflow">while</span> (target_ptr != <span class="keyword">nullptr</span>) {</div>
|
||||
<div class="line"><span class="lineno"> 127</span> <span class="keywordflow">if</span> (main_ptr == <span class="keyword">nullptr</span>) {</div>
|
||||
<div class="line"><span class="lineno"> 128</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
||||
<div class="line"><span class="lineno"> 129</span> </div>
|
||||
<div class="line"><span class="lineno"> 130</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (main_ptr->data == target_ptr->data) {<span class="comment"></span></div>
|
||||
<div class="line"><span class="lineno"> 131</span><span class="comment"> /// If the data of target node and main node is equal then move</span></div>
|
||||
<div class="line"><span class="lineno"> 132</span><span class="comment"> /// to the next node of both lists.</span></div>
|
||||
<div class="line"><span class="lineno"> 133</span><span class="comment"></span> target_ptr = target_ptr->next;</div>
|
||||
<div class="line"><span class="lineno"> 134</span> main_ptr = main_ptr->next;</div>
|
||||
<div class="line"><span class="lineno"> 135</span> </div>
|
||||
<div class="line"><span class="lineno"> 136</span> } <span class="keywordflow">else</span> {</div>
|
||||
<div class="line"><span class="lineno"> 137</span> <span class="keywordflow">break</span>;</div>
|
||||
<div class="line"><span class="lineno"> 138</span> }</div>
|
||||
<div class="line"><span class="lineno"> 139</span> }</div>
|
||||
<div class="line"><span class="lineno"> 140</span> </div>
|
||||
<div class="line"><span class="lineno"> 141</span> <span class="keywordflow">if</span> (target_ptr == <span class="keyword">nullptr</span>) {<span class="comment"></span></div>
|
||||
<div class="line"><span class="lineno"> 142</span><span class="comment"> /// Is target pointer becomes null that means the target list is</span></div>
|
||||
<div class="line"><span class="lineno"> 143</span><span class="comment"> /// been traversed without returning false. Which means the sublist</span></div>
|
||||
<div class="line"><span class="lineno"> 144</span><span class="comment"> /// has been found and return ture.</span></div>
|
||||
<div class="line"><span class="lineno"> 145</span><span class="comment"></span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
||||
<div class="line"><span class="lineno"> 146</span> }</div>
|
||||
<div class="line"><span class="lineno"> 147</span><span class="comment"></span> </div>
|
||||
<div class="line"><span class="lineno"> 148</span><span class="comment"> /// set the target pointer again to stating point of target list.</span></div>
|
||||
<div class="line"><span class="lineno"> 149</span><span class="comment"></span> target_ptr = sublist;</div>
|
||||
<div class="line"><span class="lineno"> 150</span><span class="comment"></span> </div>
|
||||
<div class="line"><span class="lineno"> 151</span><span class="comment"> /// set the main pointer to the next element of the main list and repeat</span></div>
|
||||
<div class="line"><span class="lineno"> 152</span><span class="comment"> /// the algo.</span></div>
|
||||
<div class="line"><span class="lineno"> 153</span><span class="comment"></span> mainList = mainList->next;</div>
|
||||
<div class="line"><span class="lineno"> 154</span> }</div>
|
||||
<div class="line"><span class="lineno"> 155</span><span class="comment"></span> </div>
|
||||
<div class="line"><span class="lineno"> 156</span><span class="comment"> /// If the main list is exhausted, means sublist does not found, return</span></div>
|
||||
<div class="line"><span class="lineno"> 157</span><span class="comment"> /// false</span></div>
|
||||
<div class="line"><span class="lineno"> 158</span><span class="comment"></span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
||||
<div class="line"><span class="lineno"> 159</span>}</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -466,10 +494,10 @@ Here is the call graph for this function:</div>
|
||||
|
||||
<p>Self-test implementations. </p>
|
||||
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
|
||||
<div class="fragment"><div class="line"><span class="lineno"> 328</span> {</div>
|
||||
<div class="line"><span class="lineno"> 329</span> <a class="code hl_class" href="../../d5/d58/class_test_cases.html">TestCases</a> tc;</div>
|
||||
<div class="line"><span class="lineno"> 330</span> tc.<a class="code hl_function" href="../../d5/d58/class_test_cases.html#aeabea90c02f9159e4a784bbf736e1e23">runTests</a>();</div>
|
||||
<div class="line"><span class="lineno"> 331</span>}</div>
|
||||
<div class="fragment"><div class="line"><span class="lineno"> 348</span> {</div>
|
||||
<div class="line"><span class="lineno"> 349</span> <a class="code hl_class" href="../../d5/d58/class_test_cases.html">TestCases</a> tc;</div>
|
||||
<div class="line"><span class="lineno"> 350</span> tc.<a class="code hl_function" href="../../d5/d58/class_test_cases.html#aeabea90c02f9159e4a784bbf736e1e23">runTests</a>();</div>
|
||||
<div class="line"><span class="lineno"> 351</span>}</div>
|
||||
<div class="ttc" id="aclass_test_cases_html"><div class="ttname"><a href="../../d5/d58/class_test_cases.html">TestCases</a></div><div class="ttdoc">class encapsulating the necessary test cases</div><div class="ttdef"><b>Definition</b> inorder_successor_of_bst.cpp:225</div></div>
|
||||
<div class="ttc" id="aclass_test_cases_html_aeabea90c02f9159e4a784bbf736e1e23"><div class="ttname"><a href="../../d5/d58/class_test_cases.html#aeabea90c02f9159e4a784bbf736e1e23">TestCases::runTests</a></div><div class="ttdeci">void runTests()</div><div class="ttdoc">Executes test cases.</div><div class="ttdef"><b>Definition</b> inorder_successor_of_bst.cpp:243</div></div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
|
||||
Reference in New Issue
Block a user