프로그래머스 프론트엔드 데브 코스 프론트엔드 과정의 기록입니다.
배열에 대하여 Day1에는 배열의 메서드와 관련하여 복습하였다면 오늘은 배열의 자료구조에 중점을 두고 복습을 하였다. 배열의 동작원리를 직접 구현해보며 배열이 탐색에 유리한 자료구조임을 인지하면서 상황별 시간복잡도에 대해서 다시 한 번 복습하게 되었다.
연결리스트들을 다시 구현해보며 내가 어느 정도 연결리스트에 이해도가 높아졌음을 인지할 수 있었다. 그리고 이중 연결 리스트를 활용하여 원형 연결 리스트를 구현할 수 있게 되었다.
스택을 복습하게 되었고 스택을 연결리스트로 구현하는 방법에 대하여 공부하게 되었다. 프로그래머스의 올바른 괄호 코딩테스트 대비 문제를 다시 풀어보면서 개념을 활용하는 실습을 진행하였고 배열과 연결리스트 중에서 강점이 부각되는 상황에서 자료구조를 잘 선택하여 스택을 구현하도록 하자.
큐를 복습하게 되었고 프로그래머스 프린터 문제를 다시 풀어보면서 개념을 활용하는 실습을 진행하였다. 그 후 큐를 배열과 연결리스트를 활용하는 방법으로 각자 구현해보았다.
해시테이블에 대하여 복습하며 해시테이블의 강점과 단점에 대한 이해도가 높아졌다. 예전에 처음 학습할 때에는 충돌을 해결하는 방법이 막연하게 어렵기만 했다면 이제는 개념이 이해가 되고 상황별 장단점이 존재하므로 다시 한 번 자료구조에는 정답이 없다라는 말이 떠올랐다.
그래프에 대하여 복습하며 인접행렬과 인접리스트를 자바스크립트로 구현하는 방법에 대하여 학습할 수 있어서 좋았다. 프로그래머스 가장 먼 노드 문제를 bfs 알고리즘을 활용하여 실습으로 풀어보면서 그래프 개념을 다시 한 번 공부하였다.
자료구조 트리, 힙, 트라이를 다시 복습하며 개념 정리
그리디 알고리즘에 대해 다시 복습하기.
CS 스터디 주제 HTTP 자료 정리.
하나의 공부 주제에 대해 전체적인 핵심 개념들을 TIL에 담고 주제에 관해 깊은 내용들은 따로 추가 공부하여 포스팅하는 방법을 익히기.