프론트엔드 개발자의 기록 공간

[프로그래머스 데브코스_FE] TIL Day-3 본문

프로그래머스 데브코스_FE/TIL

[프로그래머스 데브코스_FE] TIL Day-3

[리우] 2021. 8. 8. 00:03

❗❗  데브코스 3일차 (08.04)

1,2일차 오전에는 헬스장을 갔지만 오늘은 가질 못했다...

TIL을 너무 신경쓰다보니깐 밤 늦게까지 정리하기 바빴다.

그래서 작성하는 지금(밀려쓰는 중..)은 생각을 고쳤다.

매니저님께서도 TIL은 일기처럼 간단히 작성하고 학습한 내용중

조금 깊게 다루고 싶은 내용을 따로 빼서 정리하라고 하셨다.

2주차 부터는 그렇게 해야겠다라는 생각이 들었다.

 

또한 3일차때는 자료구조를 다뤘다. 기본 자료구조는 알고 있어서 학습은 비교적

편했지만 중간중간 알고리즘 문제 푸는 것이 조금 힘들었다.

결국 그래프 문제는 해결하지 못한 채 내일로 미루었다...(시간초과가 왜 날까ㅠ....)

 

✅ 정보

JS는 기본적으로 Queue 자료구조가 없다. Stack의 경우 push, pop을 이용하면 O(1)이 걸려서 상관이 없지만

Queue에서 제일 앞에 배열값을 꺼낼때 JS에서는 shift()함수를 이용한다. shift를 사용할 경우

최악의 경우에서는 O(n)의 시간 복잡도가 걸린 다는 것을 알게 되었다.

 

매우 충격적이었다... 당연히 내장함수니깐 O(1)인 줄 알았다...

그래서 Queue를 사용할 경우 직접 Queue를 구현해서 작성하는 것을 추천한다.

 

+ 프로그래머스 올바른 괄호, 프린터, 베스트 앨범, 가장 먼 노드 문제를 풀어보길 추천한다.

각각 Stack, Queue, hash table(js에서는 map, set), graph의 기본들이다.

 

📖 학습한 내용

  • 자료구조 & 알고리즘
    • array
    • linked list
    • stack
    • queue
    • hash table
    • graph
728x90
Comments