WIL 21.03.15~21.03.21

조상균·2021년 3월 20일
0
post-thumbnail

👉 알고리즘 시작한지 2주차!

저번 주에 많은 백준 문제를 풀면서 기본적인 파이썬 문법과 라이브러리를 몸에 익혔었고 이번 주차에는 조금 더 심화적인 알고리즘들을 공부하고 풀어보는 시간이었습니다!
학교에서 손으로 그리며 배웠던 트리 구조와 탐색 알고리즘들을 백준 알고리즘에서 Silver3~ Gold3 정도인 문제들을 직접 부딪혀 보고 파이썬으로 짜보면서 익혔습니다.

👉 C언어와 파이썬의 차이

C언어로만 하다가 파이썬으로 짜보면서 신세계를 경험하였는데, 문법 자체가 쉽고 딕셔너리 자료형을 활용하여 시간복잡도를 엄청나게 줄일 수 있었기 때문입니다. 반대로 애매 모호한 부분도 있었는데 2차원 테이블을 만들려고 아래와 같이 선언을 했다 문제가 발생하였습니다.

table = [[0] * 8] * 8 

이런 식으로 선언을 했다가 0행의 0번째만 1로 바꿨을 뿐인데 모든 행의 0번째 열이 1로 바뀌는 대참사를 볼 수 있었습니다. 😥 파이썬 문법과 참조 변수에 관한 부분을 제대로 공부하지 않아서 생긴 문제였고 이 부분에 대해 학습했습니다.

👉 프로그래머스 문제 풀어보기

백준 알고리즘 문제를 50문제 넘게 풀어보고 실제 카카오 코딩 테스트에는 어떤 문제가 나오는지 궁금하여 프로그래머스에서 카카오를 포함한 여러 문제를 풀어보았습니다. Level2부터 Level3까지 풀어보았는데 많이 어렵다고 느꼈습니다. ㅠ 동적 계획법과 DFS, BFS, 다익스트라 등 많은 부분을 학습하였지만 응용하여 적용하는건 또 다른 문제로 느껴졌고 Level2 문제는 스스로 30분 이내에 혼자 고민해서 풀리는 것들이 많았지만 Level3 문제는 절반 넘게 참고하며 풀었던 것 같습니다.

👉 Node.js 공부 시작

파이썬의 플라스크와 mongo DB를 사용한 웹을 3월 초에 학습하였는데 Node.js도 비슷한 부분이 많다고 느껴졌습니다. 지금 어렵다고 느낀 건 기본적인 JS문법과 콜백함수와 에러처리입니다.
무언가를 만들면서 부딪혀 보는 게 저에게 가장 좋은 학습법이라는 생각에 동의하면서도 기초적인 것을 알고 시작해야 좋겠단 생각도 들었습니다. 제대로 된 프로젝트를 만들기까지 많은 공부와 노력을 해야겠다고 다시 다짐하였습니다.

아자아자 다음 주도 화이팅!! 🙌

profile
백엔드 개발을 공부하고 있습니다.

0개의 댓글