본문 바로가기

Life/TIL

20210906 TIL

Facts

  • 모닝 배탈
  • BFS 문제 풀기 - 게임 맵 최단거리
  • 코딩인터뷰 완전분석 스터디 

Feeling

  • 요즘 자주 배탈이 난다. 내 맘대로 먹고싶은 것만 먹어서 그런 걸까. 아니면 배가 차가워서 약해진걸까. 참;; 안그래도 약한 위장인데 좀 더 신경써서 챙겨주자 싶어서 점심은 샐러디에서 먹었지만 저녁엔 새우튀김을 곁들인 초밥을 먹고야 말았다. 튀김, 회는 당분간(적어도 일주일) 이내에는 자제해 보도록 하자.
  • bfs를 파악 중이다. 뭔가어려운 것 같으면서도 기본 개념을 알것같으면서도 알쏭달쏭하다. 속도를 어디서 줄여야 할지도 감이 안와서 헤메고 있었다. 지금 한문제 더 푸는 중인데 중간에 막혀서 내일 오전에 맑은 정신으로 차분하게 다시 접근해봐야겠다.
  • 오래 간만에 중단 되었던 코딩인터뷰 스터디를 다시 시작했다. 크으 역시 재밌다. 알고리즘에 대해 잘 모르기도 하고 사실 그동안 문제 풀이에 급급해서 제대로 된 깔끔한 정의를 내리지 못하고 문제만 풀고 있었는데 트리에 대해 함께 읽고 제대로 이야기 나눔으로써 확실하게 이해하고 넘어갈 수 있다는 점이 좋았다.
  • 그리고 슬럼프(?)에 관련된 이야기도 나누었는데 뭔가 그런 얘기들이 새로운 관점으로 다가오기도 했고 위로도 됐다.  그동안 최소한의 이었던 매일 til, 매일 코테 그런것들을 하지 않고(심지어 지금 3,4,5일 공부한 내용 til도 작성하지 않았다) 점점 패턴이 깨져간다고 느끼면서 나의 게으름에 관해 자꾸 자책만 했었는데 나는 나에게 여유를 안주는 사람이었음을 깨달았다. 긴 여유를 즐겨본적이 없다. 아무것도 안하고 일주일동안 아무 생각없이, 아무 의미없이 이리저리 산책도 다니고 하는 경험. 그런 경험을 나에게 주어야겠다. 매번 무언가 목표가 있었기 때문에 그냥 달리기만 했는데 지금의 나는 휴식이 필요하다.  라고 말하고 난 또 눈앞의 목표를 향해 계속 전진할 걸 알지만 쉼이 필요하다는 것을 인지하는 것만으로도 중요한 전환점이 될것이다. 

Finding

  • 트리: 노드로 이루어진 자료구조, "보통은 하나의 노드가 루트가 되고 하나 이상의 자식이 있다. 또 그 자식은 다른 노드의 루트가 된다."라는 패턴의 재귀적으로 이루어진 구조이다. 
  • 트리 그래프 문제라면 "트리인지 이진트리인지", "이진트리인지 이진탐색트리인지", "균형인지 비균형인지" 확실히 물어보고 파악해야한다. 
  • 이진 트리: 각 노드가 최대 두 개의 자식을 갖는 트리
  • 이진 탐색 트리: 모든 노드가 특정한 순서를 따르는 속성이 있는 트리 (모든 왼쪽의 자식들 <= n < 모든 오른쪽의 자식들)
  • 균형 트리: 완전히 양쪽 균형이 맞는 트리가 아닌 너무 불균형하지 않은 트리(한쪽으로 치우쳐진 트리)를 의미한다. 
  • 완전 이진 트리: 트리의 모든 높이에서 노드가 꽉 차있는 트리
  • 전 이진 트리: 모든 노드의 자식이 없거나 두 개 있는 트리
  • 포화 이진 트리: 전 이진 트리이면서 완전 이진 트리 
  • 이진트리 순회
    • 중위 순회(in-order): 왼쪽 가지 -> 노드 -> 오른쪽 가지 순으로 순회 (이진 탐색 트리에서 무조건 오름차순 순회가 된다)
    • 전위 순회(pre-order): 자식 노드보다 현재 노드를 먼저 방문, 트리를 복사할 경우 쓰이고, tree view 구조에서 쓰인다. 
    • 후위 순회(post-order): 모든 자식부터 방문하고 현재 노드를 방문, 자식부터 삭제할 때 쓰인다.  

Affirmation

  • 나는 나를 아끼고 위해주는 사람이다. 
  • 나는  옳은 선택을 하는 사람이다. 

'Life > TIL' 카테고리의 다른 글

20210909 TIL  (0) 2021.09.10
20210907 TIL  (1) 2021.09.08
20210902 TIL  (0) 2021.09.03
20210831 TIL  (0) 2021.09.01
20210830 TIL  (0) 2021.08.31