<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>nube-net.log</title>
        <link>https://velog.io/</link>
        <description>코딩초보</description>
        <lastBuildDate>Wed, 05 Feb 2025 05:00:55 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>nube-net.log</title>
            <url>https://velog.velcdn.com/images/nube-net/profile/e0eea230-08eb-40d8-aa88-2ac2561cb154/social_profile.png</url>
            <link>https://velog.io/</link>
        </image>
        <copyright>Copyright (C) 2019. nube-net.log. All rights reserved.</copyright>
        <atom:link href="https://v2.velog.io/rss/nube-net" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[5주차 ]]></title>
            <link>https://velog.io/@nube-net/5%EC%A3%BC%EC%B0%A8-6eos4e8f</link>
            <guid>https://velog.io/@nube-net/5%EC%A3%BC%EC%B0%A8-6eos4e8f</guid>
            <pubDate>Wed, 05 Feb 2025 05:00:55 GMT</pubDate>
            <description><![CDATA[<p>.세그트리에 대해 학습하였다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[4주차 결과]]></title>
            <link>https://velog.io/@nube-net/4%EC%A3%BC%EC%B0%A8-%EA%B2%B0%EA%B3%BC-5t6vr2z9</link>
            <guid>https://velog.io/@nube-net/4%EC%A3%BC%EC%B0%A8-%EA%B2%B0%EA%B3%BC-5t6vr2z9</guid>
            <pubDate>Wed, 22 Jan 2025 11:52:14 GMT</pubDate>
            <description><![CDATA[<p>스프링 입문 강좌 수강완료하였다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[4주차 목표]]></title>
            <link>https://velog.io/@nube-net/4%EC%A3%BC%EC%B0%A8-%EB%AA%A9%ED%91%9C</link>
            <guid>https://velog.io/@nube-net/4%EC%A3%BC%EC%B0%A8-%EB%AA%A9%ED%91%9C</guid>
            <pubDate>Wed, 22 Jan 2025 04:58:42 GMT</pubDate>
            <description><![CDATA[<p>스프링 이어서 공부하기</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[3주차 정리]]></title>
            <link>https://velog.io/@nube-net/3%EC%A3%BC%EC%B0%A8-%EC%A0%95%EB%A6%AC</link>
            <guid>https://velog.io/@nube-net/3%EC%A3%BC%EC%B0%A8-%EC%A0%95%EB%A6%AC</guid>
            <pubDate>Wed, 15 Jan 2025 08:20:04 GMT</pubDate>
            <description><![CDATA[<p>인프런에서 스프링 기초 강의를 들었다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[3주차 목표]]></title>
            <link>https://velog.io/@nube-net/3%EC%A3%BC%EC%B0%A8-%EB%AA%A9%ED%91%9C</link>
            <guid>https://velog.io/@nube-net/3%EC%A3%BC%EC%B0%A8-%EB%AA%A9%ED%91%9C</guid>
            <pubDate>Wed, 15 Jan 2025 04:53:23 GMT</pubDate>
            <description><![CDATA[<p>스프링에 대해 알아보기</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[2주차 결과]]></title>
            <link>https://velog.io/@nube-net/2%EC%A3%BC%EC%B0%A8-%EB%AA%A9%ED%91%9C-9zx07m63</link>
            <guid>https://velog.io/@nube-net/2%EC%A3%BC%EC%B0%A8-%EB%AA%A9%ED%91%9C-9zx07m63</guid>
            <pubDate>Wed, 08 Jan 2025 08:38:47 GMT</pubDate>
            <description><![CDATA[<p>http 웹 기본지식에 대한 강의를 모각코 시간동안 들었다.
<img src="https://velog.velcdn.com/images/nube-net/post/c0caec5b-3329-431b-b609-c1228766f4e1/image.png" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[2주차 목표]]></title>
            <link>https://velog.io/@nube-net/2%EC%A3%BC%EC%B0%A8-%EB%AA%A9%ED%91%9C</link>
            <guid>https://velog.io/@nube-net/2%EC%A3%BC%EC%B0%A8-%EB%AA%A9%ED%91%9C</guid>
            <pubDate>Wed, 08 Jan 2025 04:57:56 GMT</pubDate>
            <description><![CDATA[<p>http 기본 지식에 대해 정리하기</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[1주차 정리]]></title>
            <link>https://velog.io/@nube-net/1%EC%A3%BC%EC%B0%A8-%EC%A0%95%EB%A6%AC</link>
            <guid>https://velog.io/@nube-net/1%EC%A3%BC%EC%B0%A8-%EC%A0%95%EB%A6%AC</guid>
            <pubDate>Thu, 02 Jan 2025 08:30:29 GMT</pubDate>
            <description><![CDATA[<h3 id="kmp---string-matching-algorithm">kmp - string matching algorithm</h3>
<p>kmp는 π배열이라는 도구를 활용함.</p>
<h4 id="π배열-정의">π배열 정의</h4>
<p>π[i] = max{ k ∣ 1≤k&lt;i and S[0:k−1] ≡ S[i−(k−1):i] }
π[i]는 인덱스 i에서 끝나는 접두사의 접미사 중 전체 문자열 S의 접두사와 일치하는 가장 긴 접미사의 길이이다. (이 조건을 만족하는 문자열 중 하나는 위치 i에서 끝나는 접두사이다. 그러나 이 경우는 명백히 제외한다.)</p>
<p>aabaaab인 문자열 S가 있다고 할때, 파이 배열은 다음과 같다.
π = [0, 1, 0, 1, 2, 2, 3] 
a 0
<strong>aa</strong> 1
aab 0
<strong>a</strong>ab<strong>a</strong> 1
<strong>aa</strong>b<strong>aa</strong> 2
<strong>aa</strong>ba<strong>aa</strong> 2
<strong>aab</strong>a<strong>aab</strong> 3</p>
<h4 id="π배열-과정-요약">π배열 과정 요약</h4>
<p>조건을 만족하는 접두사 길이를 j라고 하겠다.
인덱스 i+1를 탐색할 때, π[i] 값을 확인한다. 
이는 i까지의 부분 문자열의 길이 π[i]인 접미사가 전체 문자열의 길이 π[i]인 접두사와 동일하다는 의미이다. 
따라서 인덱스 π[i] 문자와 인덱스 i+1 문자가 같다면 한 문자만큼 일치된 길이가 증가한다.
π[i+1] =  π[i]+1 if S[π[i]] == S[i+1]</p>
<p>만약 같지 않다면 j&lt;π[i]인 가장 큰 j를 찾아야 된다.
j = π[π[i]-1]<br>S[0:j−1] ≡ S[i−j+1:i]인 j에 대해 인덱스j와 i+1 문자가 같지 않으면 더 작은 j를 찾아 반복하고 찾으면 종료한다.</p>
<h4 id="kmp-π배열을-활용하는-과정">kmp π배열을 활용하는 과정</h4>
<p>ABCDABCDABDE에서 ABCDABD 찾는다고 할 때,</p>
<p><strong>ABCDAB</strong>CDABDE
<strong>ABCDAB</strong>D
i=5인 B까지는 같지만 i=6에서 문자가 불일치한다.
만약 완전탐색을 한다면 i=1에서부터 다시 ABCDABD와 비교하면서 찾아야되고 이는 O(n^2)이다.</p>
<p>하지만 ABCDABD의 π배열을 활용하면 불필요한 연산을 생략할 수 있다.
π = [0, 0, 0, 0, 1, 2, 0]</p>
<p>i=5까지 일치하였다는 것을 확인하였다. 
그렇다면 만약 i=5에서 끝나는 접두사에서 길이와 형태가 동일한 접두사와 접미사가 존재한다면 해당 부분문자열 다음 인덱스부터 탐색해도 무방하다. 그리고 그것을 π배열를 통해 알 수 있다.</p>
<p>ABCDABCDABDE
&#39;<strong>AB</strong>CD<strong>AB</strong>&#39; D
π[5] = 2이므로 i=5에서 끝나는 접두사의 앞뒤 AB가 같다는 것을 알 수 있고 이를 π배열을 통해 보장할 수 있다.</p>
<p><del>ABCD</del><strong>AB</strong>CDABDE
<strong>AB</strong>CDABD
따라서 BCD 중간 부분은 필요없는 정보이기에 볼 필요가 없다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[1주차 목표]]></title>
            <link>https://velog.io/@nube-net/1%EC%A3%BC%EC%B0%A8-%EB%AA%A9%ED%91%9C</link>
            <guid>https://velog.io/@nube-net/1%EC%A3%BC%EC%B0%A8-%EB%AA%A9%ED%91%9C</guid>
            <pubDate>Thu, 02 Jan 2025 05:06:03 GMT</pubDate>
            <description><![CDATA[<p>kmp에 대해 이해하고 구현해보기</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[[2024동계모각코] 목표]]></title>
            <link>https://velog.io/@nube-net/2024%EB%8F%99%EA%B3%84%EB%AA%A8%EA%B0%81%EC%BD%94-%EB%AA%A9%ED%91%9C</link>
            <guid>https://velog.io/@nube-net/2024%EB%8F%99%EA%B3%84%EB%AA%A8%EA%B0%81%EC%BD%94-%EB%AA%A9%ED%91%9C</guid>
            <pubDate>Thu, 02 Jan 2025 05:05:40 GMT</pubDate>
            <description><![CDATA[<p>이번 모각코에는 학기 중에 문득 궁금했던거나 알아보고 싶다하고 
그냥 넘어갔던 내용들 위주로 찾아 알아보는 활동들을 할 계획이다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[회고]]></title>
            <link>https://velog.io/@nube-net/%ED%9A%8C%EA%B3%A0</link>
            <guid>https://velog.io/@nube-net/%ED%9A%8C%EA%B3%A0</guid>
            <pubDate>Sun, 18 Aug 2024 13:49:59 GMT</pubDate>
            <description><![CDATA[<p>자바스크립트가 파이썬보다 특이한 문법이라는 생각이 들었고, 오일러회로, 최대유량, 2-SAT 같은 재미있는 그래프 알고리즘을 다뤄볼 수 있어 좋았다. </p>
]]></description>
        </item>
        <item>
            <title><![CDATA[6주차.]]></title>
            <link>https://velog.io/@nube-net/6%EC%A3%BC%EC%B0%A8-5c3cy3wy</link>
            <guid>https://velog.io/@nube-net/6%EC%A3%BC%EC%B0%A8-5c3cy3wy</guid>
            <pubDate>Wed, 07 Aug 2024 09:00:33 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/nube-net/post/fbc6c3cf-ae58-4b58-b023-642b719916dd/image.png" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[6주차]]></title>
            <link>https://velog.io/@nube-net/6%EC%A3%BC%EC%B0%A8</link>
            <guid>https://velog.io/@nube-net/6%EC%A3%BC%EC%B0%A8</guid>
            <pubDate>Wed, 07 Aug 2024 05:06:27 GMT</pubDate>
            <description><![CDATA[<p>새로운 알고리즘 배우기</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[5주차 결과]]></title>
            <link>https://velog.io/@nube-net/5%EC%A3%BC%EC%B0%A8-%EA%B2%B0%EA%B3%BC</link>
            <guid>https://velog.io/@nube-net/5%EC%A3%BC%EC%B0%A8-%EA%B2%B0%EA%B3%BC</guid>
            <pubDate>Sat, 03 Aug 2024 01:26:50 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/nube-net/post/eec04e52-f29a-49e6-888d-143e88c4b5b9/image.png" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[5주차]]></title>
            <link>https://velog.io/@nube-net/5%EC%A3%BC%EC%B0%A8</link>
            <guid>https://velog.io/@nube-net/5%EC%A3%BC%EC%B0%A8</guid>
            <pubDate>Wed, 31 Jul 2024 04:59:13 GMT</pubDate>
            <description><![CDATA[<p>목표
알고리즘 연습</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[4주차 결과]]></title>
            <link>https://velog.io/@nube-net/4%EC%A3%BC%EC%B0%A8-%EA%B2%B0%EA%B3%BC</link>
            <guid>https://velog.io/@nube-net/4%EC%A3%BC%EC%B0%A8-%EA%B2%B0%EA%B3%BC</guid>
            <pubDate>Wed, 24 Jul 2024 09:18:10 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/nube-net/post/7ba22be5-84f1-4a5f-aebd-05673e882eba/image.png" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[4주차(7.24)]]></title>
            <link>https://velog.io/@nube-net/4%EC%A3%BC%EC%B0%A87.24</link>
            <guid>https://velog.io/@nube-net/4%EC%A3%BC%EC%B0%A87.24</guid>
            <pubDate>Wed, 24 Jul 2024 04:47:20 GMT</pubDate>
            <description><![CDATA[<p>목표
node.js 관련 영상 시청</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[3주차결과]]></title>
            <link>https://velog.io/@nube-net/3%EC%A3%BC%EC%B0%A8%EA%B2%B0%EA%B3%BC-6tk8qsyc</link>
            <guid>https://velog.io/@nube-net/3%EC%A3%BC%EC%B0%A8%EA%B2%B0%EA%B3%BC-6tk8qsyc</guid>
            <pubDate>Wed, 17 Jul 2024 07:35:37 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/nube-net/post/0f9ef2f1-d6e4-48c9-816b-3c19b00115fc/image.png" alt="">
<img src="https://velog.velcdn.com/images/nube-net/post/7a0d0e17-1755-4fca-8f99-1f18b2cb1dc4/image.png" alt="">
<img src="https://velog.velcdn.com/images/nube-net/post/e0fcbd66-f9d3-464f-af9e-29d9da9ecb4e/image.png" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[3주차(7.17)]]></title>
            <link>https://velog.io/@nube-net/3%EC%A3%BC%EC%B0%A87.17</link>
            <guid>https://velog.io/@nube-net/3%EC%A3%BC%EC%B0%A87.17</guid>
            <pubDate>Wed, 17 Jul 2024 04:57:22 GMT</pubDate>
            <description><![CDATA[<p>알고리즘 공부</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[2주차결과]]></title>
            <link>https://velog.io/@nube-net/2%EC%A3%BC%EC%B0%A8%EA%B2%B0%EA%B3%BC</link>
            <guid>https://velog.io/@nube-net/2%EC%A3%BC%EC%B0%A8%EA%B2%B0%EA%B3%BC</guid>
            <pubDate>Sat, 13 Jul 2024 09:05:44 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/nube-net/post/aad05752-7b89-43b4-8dc8-84089b578877/image.png" alt=""></p>
]]></description>
        </item>
    </channel>
</rss>