<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>heon_.log</title>
        <link>https://velog.io/</link>
        <description>100억을 가진 부자가 될거야.</description>
        <lastBuildDate>Mon, 05 Jun 2023 10:17:53 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>heon_.log</title>
            <url>https://velog.velcdn.com/images/heon_/profile/61d468f2-3eee-48f3-b73a-b89bbb649167/image.png</url>
            <link>https://velog.io/</link>
        </image>
        <copyright>Copyright (C) 2019. heon_.log. All rights reserved.</copyright>
        <atom:link href="https://v2.velog.io/rss/heon_" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[[자료 구조][Python] 트리 순회(전위 순회,중위 순회,후위 순회)]]></title>
            <link>https://velog.io/@heon_/%EC%9E%90%EB%A3%8C-%EA%B5%AC%EC%A1%B0Python-%ED%8A%B8%EB%A6%AC-%EC%88%9C%ED%9A%8C%EC%A0%84%EC%9C%84-%EC%88%9C%ED%9A%8C%EC%A4%91%EC%9C%84-%EC%88%9C%ED%9A%8C%ED%9B%84%EC%9C%84-%EC%88%9C%ED%9A%8C</link>
            <guid>https://velog.io/@heon_/%EC%9E%90%EB%A3%8C-%EA%B5%AC%EC%A1%B0Python-%ED%8A%B8%EB%A6%AC-%EC%88%9C%ED%9A%8C%EC%A0%84%EC%9C%84-%EC%88%9C%ED%9A%8C%EC%A4%91%EC%9C%84-%EC%88%9C%ED%9A%8C%ED%9B%84%EC%9C%84-%EC%88%9C%ED%9A%8C</guid>
            <pubDate>Mon, 05 Jun 2023 10:17:53 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/heon_/post/eb23707e-598e-45c4-a702-de78f30599b2/image.png" alt="">
오늘 정리해 볼 내용은 &#39;트리 순회&#39; 입니다.</p>
<p>트리 순회(Tree Traversal)란,
트리(Tree) 자료구조의 노드(Node)를 방문하는 방법 중 하나입니다.</p>
<p>트리 순회는 트리 내의 모든 노드를 방문하는 방법으로,
노드의 값들을 순서대로 처리할 수 있습니다.</p>
<hr>
<p>트리 순회에는 대표적으로 3가지가 있습니다.</p>
<p>트리 순회에는 전위 순회(preorder), 중위 순회(inorder), 후위 순회(postorder) 가 있습니다.</p>
<p>전위 순회는 <strong>[ 루트 - 왼쪽 자식 - 오른쪽 자식 ]</strong> 순서대로 순회합니다.
중위 순회는 <strong>[ 왼쪽 자식 - 루트 - 오른쪽 자식]</strong> 순서대로 순회합니다.
후위 순회는 <strong>[ 왼쪽 자식 - 오른쪽 자식 - 루트]</strong> 순서대로 순회합니다.</p>
<p>순서를 쉽게 외우는 방법을 알려드리자면,
영어 &#39;order&#39; 를 기준으로 앞에 있는 접두사에 초점을 맞추면 됩니다.</p>
<p>예를 들어, preorder(전위 순회) 는 루트가 제일 앞에,
inorder(중위 순회)는 루트가 중간에,
postorder(후위 순회)는 루트가 마지막에 나옵니다.</p>
<p>빈칸은 왼쪽 자식 - 오른쪽 자식 순서대로 채워주면 순서를 외우기 쉽습니다.</p>
<hr>
<p><img src="https://velog.velcdn.com/images/heon_/post/58378fe5-0509-4d83-bd99-b326c959bfd0/image.png" alt=""></p>
<p>이 트리를 기준으로 3가지 순회 방법에 대해 설명해 보겠습니다.</p>
<p>트리 순회는 재귀 함수를 이용해 구현할 수 있습니다.</p>
<h4 id="1-전위-순회preorder">1. 전위 순회(preorder)</h4>
<ul>
<li><p>방문순서 : [ 루트 - 왼쪽 자식 - 오른쪽 자식 ] </p>
</li>
<li><p>자식 노드를 확인할 때는 왼쪽 노드부터 확인합니다.</p>
</li>
<li><p>결과 : 1 2 4 8 5 3 6 7 </p>
</li>
</ul>
<pre><code class="language-python">arr=&#39; 12345678&#39; # arr[0] 은 비어있는 칸임

def preorder(now):
    if now&gt;len(arr)-1: return
    print(arr[now],end=&#39; &#39;) # 전위 순회니깐 앞에 print()
    preorder(now*2)    # 왼쪽 자식 노드 탐색
    preorder(now*2+1) # 오른쪽 자식 노드 탐색

preorder(1)   # 전위순회</code></pre>
<hr>
<h4 id="2-중위-순회inorder">2. 중위 순회(inorder)</h4>
<ul>
<li><p>방문 순서 : [ 왼쪽 자식 - 루트 - 오른쪽 자식]</p>
</li>
<li><p>왼쪽 자식을 확인하고 루트를 확인한 뒤 오른쪽 자식을 확인합니다.</p>
</li>
<li><p>결과 : 8 4 2 5 1 6 3 7</p>
</li>
</ul>
<pre><code class="language-python">arr=&#39; 12345678&#39;

def inorder(now):
    if now &gt; len(arr) - 1: return
    inorder(now * 2)
    print(arr[now], end=&#39; &#39;) # 중위 순회니깐 가운데에 print
    inorder(now * 2 + 1)

inorder(1) # 중위순회</code></pre>
<hr>
<h4 id="3-후위-순회postorder">3. 후위 순회(postorder)</h4>
<ul>
<li><p>방문 순서 : [ 왼쪽 자식 - 오른쪽 자식 - 루트] </p>
</li>
<li><p>결과 : 8 4 5 2 6 7 3 1</p>
</li>
</ul>
<pre><code class="language-python">arr=&#39; 12345678&#39;

def postorder(now):
    if now &gt; len(arr) - 1: return
    postorder(now * 2)
    postorder(now * 2 + 1)
    print(arr[now], end=&#39; &#39;) # 후위 순회니깐 뒤에 print()

postorder(1)  # 후위순회</code></pre>
]]></description>
        </item>
        <item>
            <title><![CDATA[2023년 4월의 목표]]></title>
            <link>https://velog.io/@heon_/2023%EB%85%84-4%EC%9B%94%EC%9D%98-%EB%AA%A9%ED%91%9C</link>
            <guid>https://velog.io/@heon_/2023%EB%85%84-4%EC%9B%94%EC%9D%98-%EB%AA%A9%ED%91%9C</guid>
            <pubDate>Mon, 05 Jun 2023 10:09:15 GMT</pubDate>
            <description><![CDATA[<p>오늘의 날짜는 2023년 3월 30일
벌써 올해의 1분기가 거의 끝났다.</p>
<p>요즘 시간이 너무 빨리 흘러감을 느껴서
돌아오는 4월은 좀 더 계획성 있게 보내기 위해 블로그에 목표를 올려두려고 한다.</p>
<p>그리고 가끔씩 내 블로그에 놀러 오는 친구들도 생길 예정이라,
공개적인 장소에 올려놓으면 나도 동기부여가 되지 않을까 싶어서 올려놓는 것도 있다.</p>
<p>스스로 보기에도 세워둔 목표들을 달성하기가 쉽지는 않아 보이지만, 
열심히 살다 보면 할 수 있지 않을까? 하는 생각도 들기는 한다.</p>
<p>이번 한 달도 열심히 보내고 4월 말에 적어둔 목표에 대한 피드백을 올려야겠다.</p>
<p>나도, 이 글을 보는 여러분들도, 돌아오는 4월 파이팅!</p>
<hr>
<h2 id="4월의-목표"><strong>&lt; 4월의 목표 &gt;</strong></h2>
<p><strong>( 20230330 ~ 0430 )</strong></p>
<p>--&gt; 2023.05.02 피드백 작성</p>
<h3 id="✅1-알고리즘-문제-100솔--성공-">✅1. 알고리즘 문제 100솔 ( 성공 )</h3>
<p>:  기준 난이도 ( 백준 기준 실버 이상, SWEA 기준 D2 이상 ) -&gt; 그냥 너무 간단한 문제는 개수에 포함 안 시킨다는 말.</p>
<p>결과 : 2023 04 30 기준 =&gt; 총 103문제 풀이
<img src="https://velog.velcdn.com/images/heon_/post/6819ea77-9680-4313-8f47-1110e4248090/image.png" alt="">
<img src="https://velog.velcdn.com/images/heon_/post/8c3642b5-0e51-45c2-862e-31b73cef27a0/image.png" alt="">
<img src="https://velog.velcdn.com/images/heon_/post/7f4b9a6f-8b96-4ea4-b6c5-5a95e073dabe/image.png" alt=""></p>
<h3 id="목표에-대한-스스로의-피드백">목표에 대한 스스로의 피드백</h3>
<ul>
<li><p>꾸준히 풀자는 취지에서 &#39;100문제&#39;라고 설정하긴 했으나,
너무 양치기가 되어버려서 마지막 즈음엔 억지로 끼워 맞춘 느낌이 조금 들었음.</p>
</li>
<li><p>5월부터는 알고리즘 분류별로 개념을 공부하고 그에 맞는 문제들을 찾아서 풀어보는 방식으로 진행할 예정.</p>
</li>
<li><p>백준 티어가 무의미하다는 걸 인지하고 있긴 하지만, 골드도 달성하고 일희일비도 해봤다.</p>
</li>
</ul>
<p><img src="https://velog.velcdn.com/images/heon_/post/b9c58f95-9e7f-4f2a-a633-708aab390229/image.png" alt=""></p>
<hr>
<br>


<h3 id="✅2-수업-복습-겸-간단한-장고-프로젝트-진행하고-올리기--실패-">✅2. 수업 복습 겸 간단한 장고 프로젝트 진행하고 올리기 ( 실패 )</h3>
<p> : 장고 수업 들어놓고 까먹을까봐 복습하면서 익힐 겸, 내가 생각하고 있는 것들을 구현해보고 싶어서.</p>
<h4 id="목표에-대한-스스로의-피드백-1">목표에 대한 스스로의 피드백</h4>
<ul>
<li><p>너무 많은 것을 구현하려 하다보니 시도를 하다가 멈추는 경우가 잦았음.</p>
<p>일단 작은 것부터 &#39;완성&#39;을 시키는 것에 중점을 둬야겠음.</p>
</li>
<li><p>클론 코딩을 해 볼 예정</p>
</li>
</ul>
<hr>
<h3 id="✅3-기술-블로그-10개-쓰기">✅3. 기술 블로그 10개 쓰기</h3>
<p> : 내가 배운 것들을 내가 이해하기 쉽게 정리하기 위해서
<img src="https://velog.velcdn.com/images/heon_/post/9a00d768-569f-4d74-8f36-9791f25b6b12/image.png" alt=""></p>
<p>=&gt; 7개 작성함.</p>
<hr>
<br>
<br>


<h3 id="✅4-현재-수강신청-해놓은-인프런-안드로이드-입문-편-왕초보편-수강-완료하기">✅4. 현재 수강신청 해놓은 인프런 안드로이드 [입문 편], [왕초보편] 수강 완료하기</h3>
<p>=&gt; [입문 편] 완강 / [왕초보편] 수강 중
<img src="https://velog.velcdn.com/images/heon_/post/15a78edb-5dc4-4557-a838-1a7469b32b7a/image.png" alt="">
<img src="https://velog.velcdn.com/images/heon_/post/fcd0d53b-b902-4861-9f70-5f676f961a81/image.png" alt="">
<img src="https://velog.velcdn.com/images/heon_/post/84942ff1-9d0c-4c86-8ba2-ba019bff50ab/image.png" alt=""></p>
<hr>
<br>
<br>

<h4 id="목표에-대한-스스로의-피드백-2">목표에 대한 스스로의 피드백</h4>
<ul>
<li><p>주 언어도 완벽히 이해하지 못했는데, 다른 언어를 배우려니 혼동이 있는 것 같음.</p>
</li>
<li><p>코틀린을 공부하는 것보다 우선 순위인 것들이 많으니 다른 것들을 먼저 공부하는 게 좋을 것 같다고 느낌.</p>
</li>
<li><p>앱에 대한 궁금증은 남아있기 때문에 코틀린을 활용해 토이프로젝트를 만드는 것은 여가시간에 할 예정.</p>
</li>
<li><p>강의 커리큘럼이 아주아주 간단한 앱 만드는 거라 쉬울 줄 알았는데, 생각했던 것보다 몇 배는 까다로운 것 같음.</p>
<p>그래도 흥미를 느껴서 좋았음.</p>
</li>
</ul>
<hr>
<br>

<h3 id="✅5-산책을-하든-러닝을-하든-축구를-하든-50km움직이기--퇴근하고-혹은-출근-전에-기록-측정해서-">✅5. 산책을 하든 러닝을 하든 축구를 하든 50km움직이기 ( 퇴근하고 혹은 출근 전에 &#39;기록&#39; 측정해서 )</h3>
<ul>
<li><p>앉아 있는 시간이 늘어남에 따라 체력 저하가 느껴져서 조금이라도 운동을 해야겠다.</p>
</li>
<li><p>축구나 풋살하는 건 정말 좋아하지만 그냥 뛰는 건 그렇게 좋아하지 않는데 그래도 뛰다 보면 편해지지 않을까</p>
</li>
</ul>
<ul>
<li>작년에 러닝화도 하나 장만했어서 이럴 때라도 신고 다녀야겠다.</li>
</ul>
<p>=&gt; 처참하게 실패</p>
<h4 id="목표에-대한-스스로의-피드백-3">목표에 대한 스스로의 피드백</h4>
<ul>
<li><p>애초에 퇴근하고 집에 바로 간 적이 많지 않은데, 목표를 너무 높게 설정한 게 문제였음.</p>
</li>
<li><p>목표를 달성하려면 주말에 5km씩 뛰어야 하는데 막상 주말 되니깐 게을러서 못 나감..😂</p>
</li>
<li><p>그래도 변명을 해보자면 살기 위해서 집에 철봉도 설치하고, 팔굽혀펴기 100개씩 하는 것도 9일 연속 달성함.</p>
</li>
<li><p>5월에는 좀 더 작게 목표를 설정하고 도전해 봐야지. 뛰어야 할 필요성을 느낀 4월이었음.</p>
</li>
</ul>
<p><img src="https://velog.velcdn.com/images/heon_/post/a6c159b0-8aba-4da6-a9b4-f53733b784df/image.png" alt=""></p>
<hr>
<br>

<h3 id="✅6-지금-읽고-있는-책-미움받을-용기-포함해서-책-3권-읽기">✅6. 지금 읽고 있는 책 (미움받을 용기) 포함해서 책 3권 읽기</h3>
<p> : 싸피에 입과 하기 전엔 그래도 책 자주 읽었는데, 요새 독서량이 현저히 줄은 것 같아서 추가했음.</p>
<p>   아침에 수업 들으러 가면 시간이 조금 남아서 자투리 시간에 읽을 계획.</p>
<ul>
<li><p>미움받을 용기 (기시미 이치로) - <strong>완독</strong></p>
</li>
<li><p>노르웨이의 숲 (무라카미 하루키) - <strong>완독</strong></p>
</li>
<li><p>원씽 ( 게리 켈러, 제이 파파산 ) - <strong>40%</strong> </p>
</li>
</ul>
<hr>
<br>


<h3 id="✅7-매일-간단하게--23줄-정도---개발일기-기록해-두기"><strong>✅7. 매일 간단하게 ( 2~3줄 정도? )  개발일기 기록해 두기</strong></h3>
<p>: 어떤 공부를 했는지 기록해 두면 나중에 보기 좋을 것 같아서</p>
<p>• 작성완료 -&gt; 나중에 어딘가에 게시할 예정</p>
<p><img src="https://velog.velcdn.com/images/heon_/post/7483b3f9-79c5-40ec-b915-b190a29aeb6e/image.png" alt=""></p>
<p style="margin-top:-40px; font-size:15px; text-align:center;">이미 2023년 1분기는 떠나갔지만,,</p>




]]></description>
        </item>
    </channel>
</rss>