공부한 내용 📖
프로그래머스 Lv3. 가장 먼 노드 문제 -> BFS를 활용한 그래프 문제
트리 자료구조 강의
재귀를 활용한 전위, 중위, 후위 탐색 함수 작성 실습.
전위:NLR순 탐색
중위:LNR순 탐색
후위:LRN순 탐색
이진탐색, 힙, 트라이 강의 -> MinHeap구현해보기
정렬 강의 -> 프로그래머스 Lv2. 가장 큰 수
JS에서 sort함수 사용시 유니코드순으로 정렬되므로 (1,10,2,3)순으로 배열된다. sort(a,b)=>b-a로 내림차순 배열 구현하자.
DeepDive 배열
배열은 length프로퍼티를 갖는 객체라고도 볼 수 있다.
Array 생성자 함수를 통해 배열을 생성한다.
const arr = new Array(10);
Array.from을 이용해 유사배열객체, 이터러블객체를 인수로 전달받아 배열로 변환이 가능.
Array.from의 두번째 인자로 콜백을 주어서 값을 만드는 것도 가능.
Array.from({length: 2, 0: 'a', 1: 'b' }); //['a','b']
Array.from('Hello') //['H','e','l','l','o']
Array.from({length:3}, (v,i)=>i) // [0,1,2]
배열 메서드는 최근에 도입된 것은 원본 배열을 변경하지 않는편. 원본을 변경하는것은 ES5 이전의 메서드이다.
-> 이 말은 원본을 변경하지 않는게 권장된다는 것이고, 이것이 함수형 프로그래밍의 의의와 맞닿아있다. 고차함수를 잘 활용하여 새 배열을 return하는 형식으로 코드를 짜보자.
메서드 종류: concat, splilce, slice, join,reverse.fill,includes...
배열고차함수: sort,forEach.,map,filter,reduce,...some, every,find,findIndex,
고차함수에 일반적으로 첫번째 인수에 콜백, 두번째 인수는 콜백에서 this로 사용할 객체를 넣을 수 있다.
콜백은 map같이 일반적으로 (요소, index, arr)=>{ } 형태로 구성되어 있어보이나
reduce의 경우 (accumulator, 요소, index, arr) => { } 처럼 다른 형태가 있기도 하다.
궁금한 내용/부족한 내용🤔
시간이 부족하여 트라이 강의를 듣고 나오는 실습까지는 진행을 못했다. 첫 과제가 트라이 관련이니 어제 실습 못한 부분을 메꿀 수 있을만큼 열심히 해야겠다.
그래프 문제 풀이 중 BFS문제라는 것까지는 알았으나 암기와 응용면에서 아직 부족하다. 그래도 계속 하다보면 될 것 같다는 느낌도 와서 다행이다.
느낀점✍
강의는 짧지만 실습이 몰아치는 느낌이 있어서 힘든 하루였다. 거기다가 딥다이브 스터디 분량도 소화해야하고, 과제를 위한 깃 예행연습까지 해보느라 1시부터 12시까지 밥먹고 쉰 시간 제외하고는 계속 앉아있었다. 앞으로 점점 바빠질텐데 초심도 잃지 않고 체력관리도 잘 해야할 것 같다.
진유림님 TIL을 보니 느낀점은 줄이고, 배운점에서 조금 더 상세하게 작성하는 방법도 좋아보인다.
'부트캠프 > 회고' 카테고리의 다른 글
[TIL] 프로그래머스 프론트엔드 데브코스 DAY10 TIL (1) | 2023.10.03 |
---|---|
[WIL] 프로그래머스 프론트엔드 데브코스 1,2주차 WIL (0) | 2023.10.02 |
[TIL] 프로그래머스 프론트엔드 데브코스 DAY5 TIL (0) | 2023.09.26 |
[TIL] 프로그래머스 프론트엔드 데브코스 DAY4 TIL (0) | 2023.09.25 |
[TIL] 프로그래머스 프론트엔드 데브코스 DAY3 TIL (0) | 2023.09.22 |