{"componentChunkName":"component---src-templates-post-template-jsx","path":"/algo/posts/2021-03-19--003","result":{"data":{"site":{"siteMetadata":{"title":"Blog by Eunyoung","subtitle":"작업 기록 블로그","copyright":"© All rights reserved.","author":{"name":"EunYoung","twitter":"#"},"disqusShortname":"","url":"https://ssongey.github.io"}},"markdownRemark":{"id":"3c7014af-7a55-50d9-b4bd-2483e79658cf","html":"<h2>문제</h2>\n<p>\n  <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/devHistoryBlog/static/2ac8a0a358a28a2b088e60f2c6f546d3/58fee/003-01.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n  \n  <span\n    class=\"gatsby-resp-image-wrapper\"\n    style=\"position: relative; display: block;  max-width: 960px; margin-left: auto; margin-right: auto;\"\n  >\n    <span\n      class=\"gatsby-resp-image-background-image\"\n      style=\"padding-bottom: 42.91666666666667%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAJCAYAAAAywQxIAAAACXBIWXMAABJ0AAASdAHeZh94AAABcklEQVQoz42Ru27cMBRE+f8/ki6diwDpYgMGEsQxbOtBiiLFl7Qi9Vgh/eSS6y0WTuHigJeEOJwZseeXVzSco25aNC2H0gPWbUdKCyLRuQmVDuBDwEtn8MR1oVIOz2JArT1+tg6PtYEZT2BZSHQSLRfgooPsFQZjSVijVxpcKjRdX9aaS1SZtkNLZ5Xosa4Jd78svv22OM4r2FtVgWeHdUPUqGjf0CN6GKBJNGMtvf6+d9aWOWONwbEteHgbyeGIv8cOptTlUhYQQpBTDkOXQgiFcZzK6r2/rIRzHs4HbHHClx8D7l8Dvv/x+PpowbJAhlPkpm0hZY9pmhBjLKSU/jtnliVBukjdJeiQoHwC65VCdmnJlaJZdB11aLBt26c4zhvO+4WDYNlRFs2xe/ohnGI757Dv+6cE13W9gWWha48D9SilLH3Oc7yJF+Nt3HmeKfJyI5pndi08F32dLwSqwVH5vtRRvnmfcwJDtZxOpw+C/wAS1JPBa5+jMAAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n    >\n      <img\n        class=\"gatsby-resp-image-image\"\n        style=\"width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;\"\n        alt=\"003 01\"\n        title=\"\"\n        src=\"/devHistoryBlog/static/2ac8a0a358a28a2b088e60f2c6f546d3/d9199/003-01.png\"\n        srcset=\"/devHistoryBlog/static/2ac8a0a358a28a2b088e60f2c6f546d3/8ff5a/003-01.png 240w,\n/devHistoryBlog/static/2ac8a0a358a28a2b088e60f2c6f546d3/e85cb/003-01.png 480w,\n/devHistoryBlog/static/2ac8a0a358a28a2b088e60f2c6f546d3/d9199/003-01.png 960w,\n/devHistoryBlog/static/2ac8a0a358a28a2b088e60f2c6f546d3/58fee/003-01.png 1051w\"\n        sizes=\"(max-width: 960px) 100vw, 960px\"\n      />\n    </span>\n  </span>\n  \n  </a>\n    </p>\n<ul>\n<li>주어진 코드</li>\n</ul>\n<div class=\"gatsby-highlight\" data-language=\"java\"><pre class=\"language-java\"><code class=\"language-java\"><span class=\"token keyword\">class</span> <span class=\"token class-name\">Node</span> <span class=\"token punctuation\">{</span>\n    <span class=\"token keyword\">public</span> <span class=\"token keyword\">int</span> value<span class=\"token punctuation\">;</span>\n    <span class=\"token keyword\">public</span> <span class=\"token class-name\">Node</span> left<span class=\"token punctuation\">,</span> right<span class=\"token punctuation\">;</span>\n\n    <span class=\"token keyword\">public</span> <span class=\"token class-name\">Node</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">int</span> value<span class=\"token punctuation\">,</span> <span class=\"token class-name\">Node</span> left<span class=\"token punctuation\">,</span> <span class=\"token class-name\">Node</span> right<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n        <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>value <span class=\"token operator\">=</span> value<span class=\"token punctuation\">;</span>\n        <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>left <span class=\"token operator\">=</span> left<span class=\"token punctuation\">;</span>\n        <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>right <span class=\"token operator\">=</span> right<span class=\"token punctuation\">;</span>\n    <span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">}</span>\n\n<span class=\"token keyword\">public</span> <span class=\"token keyword\">class</span> <span class=\"token class-name\">BinarySearchTree</span> <span class=\"token punctuation\">{</span>\n    <span class=\"token keyword\">public</span> <span class=\"token keyword\">static</span> <span class=\"token keyword\">boolean</span> <span class=\"token function\">contains</span><span class=\"token punctuation\">(</span><span class=\"token class-name\">Node</span> root<span class=\"token punctuation\">,</span> <span class=\"token keyword\">int</span> value<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n        <span class=\"token keyword\">throw</span> <span class=\"token keyword\">new</span> <span class=\"token class-name\">UnsupportedOperationException</span><span class=\"token punctuation\">(</span><span class=\"token string\">\"Waiting to be implemented.\"</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n    <span class=\"token punctuation\">}</span>\n    \n    <span class=\"token keyword\">public</span> <span class=\"token keyword\">static</span> <span class=\"token keyword\">void</span> <span class=\"token function\">main</span><span class=\"token punctuation\">(</span><span class=\"token class-name\">String</span><span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span> args<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n        <span class=\"token class-name\">Node</span> n1 <span class=\"token operator\">=</span> <span class=\"token keyword\">new</span> <span class=\"token class-name\">Node</span><span class=\"token punctuation\">(</span><span class=\"token number\">1</span><span class=\"token punctuation\">,</span> <span class=\"token keyword\">null</span><span class=\"token punctuation\">,</span> <span class=\"token keyword\">null</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n        <span class=\"token class-name\">Node</span> n3 <span class=\"token operator\">=</span> <span class=\"token keyword\">new</span> <span class=\"token class-name\">Node</span><span class=\"token punctuation\">(</span><span class=\"token number\">3</span><span class=\"token punctuation\">,</span> <span class=\"token keyword\">null</span><span class=\"token punctuation\">,</span> <span class=\"token keyword\">null</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n        <span class=\"token class-name\">Node</span> n2 <span class=\"token operator\">=</span> <span class=\"token keyword\">new</span> <span class=\"token class-name\">Node</span><span class=\"token punctuation\">(</span><span class=\"token number\">2</span><span class=\"token punctuation\">,</span> n1<span class=\"token punctuation\">,</span> n3<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n        \n        <span class=\"token class-name\">System</span><span class=\"token punctuation\">.</span>out<span class=\"token punctuation\">.</span><span class=\"token function\">println</span><span class=\"token punctuation\">(</span><span class=\"token function\">contains</span><span class=\"token punctuation\">(</span>n2<span class=\"token punctuation\">,</span> <span class=\"token number\">3</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n    <span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<hr>\n<h2>결과 및 풀이</h2>\n<ul>\n<li>결과 </li>\n</ul>\n<p>\n  <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/devHistoryBlog/static/c7c856e4521d257a292fd0e2d7e4030d/1ac29/003-02.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n  \n  <span\n    class=\"gatsby-resp-image-wrapper\"\n    style=\"position: relative; display: block;  max-width: 960px; margin-left: auto; margin-right: auto;\"\n  >\n    <span\n      class=\"gatsby-resp-image-background-image\"\n      style=\"padding-bottom: 23.75%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAFCAYAAABFA8wzAAAACXBIWXMAABJ0AAASdAHeZh94AAAAr0lEQVQY042Q2w6DIBQE+f+vpLaiIChCVW66BVKTtg+NJ5ksyQJDIC0XEFJV+kHmHMG6DkopOOewriu2bcOyLJVuUBjGCfdewhgLaw3mea5dSSIlxzQqzHqCyTyNBqUUk9YocxxHZd/3ig8RMSY4H5BSqsQYc3dUMWlYC8Y69PmlXAg8WgZ6a6Czzdpnthrw3F0Z7z3Ip/1cl6zmtz1kLl9YDpyEEL7yt/tH2VP++wUkiYTg/Cj+dQAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n    >\n      <img\n        class=\"gatsby-resp-image-image\"\n        style=\"width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;\"\n        alt=\"003 02\"\n        title=\"\"\n        src=\"/devHistoryBlog/static/c7c856e4521d257a292fd0e2d7e4030d/d9199/003-02.png\"\n        srcset=\"/devHistoryBlog/static/c7c856e4521d257a292fd0e2d7e4030d/8ff5a/003-02.png 240w,\n/devHistoryBlog/static/c7c856e4521d257a292fd0e2d7e4030d/e85cb/003-02.png 480w,\n/devHistoryBlog/static/c7c856e4521d257a292fd0e2d7e4030d/d9199/003-02.png 960w,\n/devHistoryBlog/static/c7c856e4521d257a292fd0e2d7e4030d/1ac29/003-02.png 1022w\"\n        sizes=\"(max-width: 960px) 100vw, 960px\"\n      />\n    </span>\n  </span>\n  \n  </a>\n    </p>\n<ul>\n<li>풀이</li>\n</ul>\n<div class=\"gatsby-highlight\" data-language=\"java\"><pre class=\"language-java\"><code class=\"language-java\"><span class=\"token keyword\">public</span> <span class=\"token keyword\">boolean</span> <span class=\"token function\">contains</span><span class=\"token punctuation\">(</span><span class=\"token class-name\">Node</span> root<span class=\"token punctuation\">,</span> <span class=\"token keyword\">int</span> value<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n    <span class=\"token class-name\">Node</span> currentNode <span class=\"token operator\">=</span> root<span class=\"token punctuation\">;</span>\n    \n    <span class=\"token keyword\">while</span><span class=\"token punctuation\">(</span>currentNode <span class=\"token operator\">!=</span> <span class=\"token keyword\">null</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n        <span class=\"token keyword\">int</span> currentValue <span class=\"token operator\">=</span> currentNode<span class=\"token punctuation\">.</span>value<span class=\"token punctuation\">;</span>\n    \n        <span class=\"token keyword\">if</span><span class=\"token punctuation\">(</span>currentValue <span class=\"token operator\">==</span> value<span class=\"token punctuation\">)</span> <span class=\"token keyword\">return</span> <span class=\"token boolean\">true</span><span class=\"token punctuation\">;</span>\n        <span class=\"token keyword\">else</span> <span class=\"token keyword\">if</span><span class=\"token punctuation\">(</span>currentValue <span class=\"token operator\">></span> value<span class=\"token punctuation\">)</span> currentNode <span class=\"token operator\">=</span> currentNode<span class=\"token punctuation\">.</span>left<span class=\"token punctuation\">;</span>\n        <span class=\"token keyword\">else</span> currentNode <span class=\"token operator\">=</span> currentNode<span class=\"token punctuation\">.</span>right<span class=\"token punctuation\">;</span>\n    <span class=\"token punctuation\">}</span>\n    \n    <span class=\"token keyword\">return</span> <span class=\"token boolean\">false</span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<hr>\n<h2>배웠다</h2>","fields":{"tagSlugs":["/tags/recursion/","/tags/tree/"],"slug":"/algo/posts/2021-03-19--003"},"frontmatter":{"title":"[TESTDOME] Binary Search Tree","tags":["recursion","tree"],"date":"2021-03-19","description":"recursion, 이진 탐색 트리"}}},"pageContext":{"slug":"/algo/posts/2021-03-19--003"}},"staticQueryHashes":[]}