본문 바로가기

과거공부모음

나의 개발일지 WIL(Weekly I learned) - 자료구조와 알고리즘

Weekly I learned

  • 자료구조와 알고리즘
  • 시간복잡도 공간복잡도 빅오표기법 
  • 배열 연결리스트
  • 버블정렬 삽입정렬 선택정렬

 

회고록

  • FACTS 이번 일주일 동안 있었던 일, 내가 한 일
  • FEELINGS 나의 감정적인 반응, 느낌
  • FINDINGS 그 상황으로부터 내가 배운 것, 얻은 것
  • FUTURE 배운 것을 미래에는 어떻게 적용할지

 

FACTS

일주일간 자료구조와 알고리즘을 위해서 파이썬의 기본 문법을 공부했다

그리고 알고리즘을 왜 공부해야 하는지 이유와 알고리즘에 필요한 시간 복잡도, 공간 복잡도, 빅오 표기법에 대해서 학습했다

특강과 자습으로 배열과 연결 리스트에 대해서 학습을 진행했다 파이썬으로 연결 리스트를 직접 구현해보면서 더 확실하게 이해 할 수 있도록 했다 그리고 배열과 연결리스트를 이용해 알고리즘 문제를 풀었다

스택과 큐 자료구조를 배우고 어떠한 경우에 사용하는지 학습했다 스택을 이용한 알고리즘 문제도 풀면서 스택을 학습하고 연결리스트를 이용해 스택을 구현해보면서 연결 리스트와 스택을 조금 더 이해했다

버블 정렬, 선택 정렬, 삽입 정렬을 배우고 정렬을 이용한 문제를 풀면서 학습했다

 

FEELINGS

자료구조와 알고리즘을 학습하면서 힘들었던 일주일이다 이해도 어렵고 문제를 풀거나 구현을 하는 부분에서 벽을 느꼈다

배열을 배우고 배열을 이용한 알고리즘 문제를 6문제 푸는데 하루를 보냈다... 이렇게 느려도 되는 건가 싶었다?

스택을 배우고 스택 알고리즘 문제를 2문제 푸는데 3~4시간이 걸렸다.... 여기서도 벽을 느꼈다

너무 학습이 느린가 혼자 뒤떨어지는 게 아닌가 불안함을 느꼈다

 

FINDINGS

튜터님이 어려운 게 당연하고 단기간에 잘할 수 있는 부분이 아니라고 꾸준히 포기하지 말고 학습하라고 조언을 들었다.

내일 배움 캠프 동안 프로젝트도 하고 알고리즘도 배열, 연결 리스트, 스택, 큐, 덱, BFS, DFS, 재귀, 백트래킹, 정렬

다이내믹 프로그래밍, 그리디, 이분 탑색, 해쉬, 트리, 힙을 학습하고 싶은 욕심에 너무 급하게 생각을 했다.

조금 천천히 생각하고 내일 배움 캠프가 끝난다고 공부를 멈추는 게 아니니까 꾸준하게 학습하기만 하자고 생각했다

 

 

FUTURE

내일 배움 캠프의 기간에 집착해서 그 시간 안에 모든 걸 해야 한다고 생각하지 말자

자료구조와 알고리즘은 없어도 개발자가 될 수 있다! 하지만 좋은 개발자가 되기 위해 자료구조와 알고리즘을 포기하지 말고 꾸준히 지속적으로 공부하자! 더 좋은 코드를 생각하고 구현할 수 있도록 노력하자