{"componentChunkName":"component---src-templates-post-template-jsx","path":"/algo/posts/2023-06-10--008","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":"a35cefca-4b29-5ade-b2ae-cad4db6692d7","html":"<h2>문제</h2>\n<ul>\n<li>이진검색</li>\n</ul>\n<p>\n  <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/devHistoryBlog/static/452198a1bc5f21c93877181b326dcf77/2ed34/008-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: 120%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAYCAYAAAD6S912AAAACXBIWXMAABYlAAAWJQFJUiTwAAAB1UlEQVQ4y6VUB5LCMAz0/x9JjvTenQ46r8CZkHYHeGZT7GS9klYWRhTRNQwoSiLyfZ/CMKSu62gcR5qmie73+wYYe3d8L8wiI7tIqZIV1XVNspHU9/1MuDc0yZoQEFWRUBxHVEs576KhSZfva2XrZ9E0LTVNw+qKoqAsy6gsS8rznN/xjDuAOZAuFW0UpklCaZrSu2OpajmE53nkui7nLY5jVoSiJGojrTxShRuGYVa9F/ZMCJIgCDhU0zSZFHAch0lRecuymAhzWDslRLJvt9tLHjDws57X9z27bAiPFhDmcqMl4RkEwjQMg0O6XC5sbIRq29YcMuaRW9d1eKMjEawQPyEvbdsqgpSJpfIkKi9lQ1VVMTEKhTW8Q/kRVJV9ul5NVZhQqYuUglj9VKuqD2qTThH1L8/Aw7tbYE3k+cPMsMW6K44x7eDRVcK2bbYFCJEnhP7NEPAgjA3Toji6a/6q5mGVcYEqFGbpubNKnirEBW0Hu+wdR28r1CHDEuhr5PGrHMJjAIqC/OEwgMiPFcJ7juOqHCbPs7Bizx157QzsQ98PCNbRRFA6DONHgB8FlKE/YcyzlvoPOGTX9ZT/frjtiqLk/v0kXCmfIeMCH2rJ3wCt9wvQ4VTWJIfPuQAAAABJRU5ErkJggg=='); 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=\"008 01\"\n        title=\"\"\n        src=\"/devHistoryBlog/static/452198a1bc5f21c93877181b326dcf77/d9199/008-01.png\"\n        srcset=\"/devHistoryBlog/static/452198a1bc5f21c93877181b326dcf77/8ff5a/008-01.png 240w,\n/devHistoryBlog/static/452198a1bc5f21c93877181b326dcf77/e85cb/008-01.png 480w,\n/devHistoryBlog/static/452198a1bc5f21c93877181b326dcf77/d9199/008-01.png 960w,\n/devHistoryBlog/static/452198a1bc5f21c93877181b326dcf77/07a9c/008-01.png 1440w,\n/devHistoryBlog/static/452198a1bc5f21c93877181b326dcf77/2ed34/008-01.png 1776w\"\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\">ListNode</span> <span class=\"token punctuation\">{</span>\n    <span class=\"token keyword\">int</span> val<span class=\"token punctuation\">;</span>\n    <span class=\"token class-name\">ListNode</span> next<span class=\"token punctuation\">;</span>\n    <span class=\"token class-name\">ListNode</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span><span class=\"token punctuation\">}</span>\n    <span class=\"token class-name\">ListNode</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">int</span> val<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span> <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>val <span class=\"token operator\">=</span> val<span class=\"token punctuation\">;</span> <span class=\"token punctuation\">}</span>\n    <span class=\"token class-name\">ListNode</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">int</span> val<span class=\"token punctuation\">,</span> <span class=\"token class-name\">ListNode</span> next<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span> <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>val <span class=\"token operator\">=</span> val<span class=\"token punctuation\">;</span> <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>next <span class=\"token operator\">=</span> next<span class=\"token punctuation\">;</span> <span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">}</span>\n\n<span class=\"token keyword\">class</span> <span class=\"token class-name\">Solution</span> <span class=\"token punctuation\">{</span>\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\n        <span class=\"token class-name\">ListNode</span> head <span class=\"token operator\">=</span> <span class=\"token keyword\">new</span> <span class=\"token class-name\">ListNode</span><span class=\"token punctuation\">(</span><span class=\"token number\">1</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n        <span class=\"token class-name\">ListNode</span> cursor <span class=\"token operator\">=</span> head<span class=\"token punctuation\">;</span>\n        <span class=\"token keyword\">for</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">int</span> i <span class=\"token operator\">=</span> <span class=\"token number\">2</span><span class=\"token punctuation\">;</span> i <span class=\"token operator\">&lt;=</span> <span class=\"token number\">5</span><span class=\"token punctuation\">;</span> i<span class=\"token operator\">++</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n            <span class=\"token class-name\">ListNode</span> nextNode <span class=\"token operator\">=</span> <span class=\"token keyword\">new</span> <span class=\"token class-name\">ListNode</span><span class=\"token punctuation\">(</span>i<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n            cursor<span class=\"token punctuation\">.</span>next <span class=\"token operator\">=</span> nextNode<span class=\"token punctuation\">;</span>\n            cursor <span class=\"token operator\">=</span> nextNode<span class=\"token punctuation\">;</span>\n        <span class=\"token punctuation\">}</span>\n        <span class=\"token function\">printNode</span><span class=\"token punctuation\">(</span>head<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n        <span class=\"token function\">printNode</span><span class=\"token punctuation\">(</span><span class=\"token function\">reverseList</span><span class=\"token punctuation\">(</span>head<span class=\"token punctuation\">)</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\">printNode</span><span class=\"token punctuation\">(</span><span class=\"token class-name\">ListNode</span> head<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n        <span class=\"token keyword\">while</span> <span class=\"token punctuation\">(</span>head <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 class-name\">System</span><span class=\"token punctuation\">.</span>out<span class=\"token punctuation\">.</span><span class=\"token function\">print</span><span class=\"token punctuation\">(</span>head<span class=\"token punctuation\">.</span>val <span class=\"token operator\">+</span> <span class=\"token string\">\" \"</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n            head <span class=\"token operator\">=</span> head<span class=\"token punctuation\">.</span>next<span class=\"token punctuation\">;</span>\n        <span class=\"token punctuation\">}</span>\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 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 class-name\">ListNode</span> <span class=\"token function\">reverseList</span><span class=\"token punctuation\">(</span><span class=\"token class-name\">ListNode</span> head<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n        <span class=\"token comment\">//</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/11e5cbbc8c43150ecb8b08a4328f3684/764d7/008-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: 22.916666666666668%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAFCAYAAABFA8wzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAtklEQVQY03VQyw7CIBDk/3/Ek0dPnvwCYzybGB+pxqrUAm1hd0fAxqY1TjKZWWCWBXU431DpJ0IIEJEvE5IMXn6YYKyFqQ1W1zVm+yVUqR3axvUNczRzHP7fMATK2Uf3wsXdoRhjOD9MNWBa/19XRDSa7qgFxB/PzKgaQROQfTrnvQd5BrWxjqROohJs6VEXHsq5BsaYyT/1njrMt4xNETejN8ZCaw2Kz5R4qbBkZSHok8NuUeENjo6IIw4cfNEAAAAASUVORK5CYII='); 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=\"008 02\"\n        title=\"\"\n        src=\"/devHistoryBlog/static/11e5cbbc8c43150ecb8b08a4328f3684/d9199/008-02.png\"\n        srcset=\"/devHistoryBlog/static/11e5cbbc8c43150ecb8b08a4328f3684/8ff5a/008-02.png 240w,\n/devHistoryBlog/static/11e5cbbc8c43150ecb8b08a4328f3684/e85cb/008-02.png 480w,\n/devHistoryBlog/static/11e5cbbc8c43150ecb8b08a4328f3684/d9199/008-02.png 960w,\n/devHistoryBlog/static/11e5cbbc8c43150ecb8b08a4328f3684/07a9c/008-02.png 1440w,\n/devHistoryBlog/static/11e5cbbc8c43150ecb8b08a4328f3684/764d7/008-02.png 1782w\"\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\">static</span> <span class=\"token class-name\">ListNode</span> <span class=\"token function\">reverseList</span><span class=\"token punctuation\">(</span><span class=\"token class-name\">ListNode</span> head<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n    <span class=\"token class-name\">ListNode</span> cursor <span class=\"token operator\">=</span> <span class=\"token keyword\">null</span><span class=\"token punctuation\">;</span>\n    \n    <span class=\"token keyword\">while</span> <span class=\"token punctuation\">(</span>head <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 class-name\">ListNode</span> nextNode <span class=\"token operator\">=</span> head<span class=\"token punctuation\">.</span>next<span class=\"token punctuation\">;</span>\n        head<span class=\"token punctuation\">.</span>next <span class=\"token operator\">=</span> cursor<span class=\"token punctuation\">;</span>\n        cursor <span class=\"token operator\">=</span> head<span class=\"token punctuation\">;</span>\n        head <span class=\"token operator\">=</span> nextNode<span class=\"token punctuation\">;</span>\n    <span class=\"token punctuation\">}</span>\n    \n    <span class=\"token keyword\">return</span> cursor<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>","fields":{"tagSlugs":["/tags//"],"slug":"/algo/posts/2023-06-10--008"},"frontmatter":{"title":"Reverse Linked List (easy)","tags":[""],"date":"2023-06-10","description":"neetcode"}}},"pageContext":{"slug":"/algo/posts/2023-06-10--008"}},"staticQueryHashes":[]}