티스토리 뷰

TIL

## 2020 0626 서른한번째 TIL

CREDD 2020. 6. 27. 01:04

트리맵을 암만 해봐도 방법이 없어서 레퍼런스 코드를 수도코드로 옮겨적고, 이 옮긴걸로 코드를 짜는 식으로 대충 이해는 했지만

찝찝하다. 뭔가 제대로 알고 사용해야 내것으로 남을것 같은데, 그러지 못할것 같아서 찝찝하다.

주말동안 hiring assessments 풀 수 있는 만큼 풀어보고, 조금 더 실사용이 가능할 정도로 복습을 해야 할 듯 싶다.

 

 

#### 오늘 한 일

* toy problem 05

  ㄴ bubbleSort 

  ㄴ 무작위 배열(정수로만 이루어진)을 작은 수는 앞으로 큰 수는 뒤로 보내는(이진탐색같은) 문제였다.

  ㄴ 제일 작은 수를 Math.min으로 구하고, 그거를 shift()로 빼내고 하는 식의 재귀를 쓰면 쉬울 줄 알았는데,

  ㄴ 문제는 shift는 index가 0번째인 element만 제거한다는 것이었다.

  ㄴ array[0] = a 와 같은 식으로 바꿀 수 있다는 개념을 처음 사용했다.

      1. 기존 array[0]의 값을 empty에 할당

     2. 최소값을 array[0]에 할당

     3. empty값을 push로 배열 제일 뒤에 배치

     4. array.shift()로 최소값 삭제 및 빈 배열(result)에 옮김(result.push(array.shift()))

     5. array.length === 0이 될 때까지 반복

     6. return result

    

 

* tree 

  ㄴ혼자서는 아무리 봐도 구현할 수가 없어서 레퍼런스가 어떤식으로 작동 되는지를 이해했다.

  ㄴ 우선, this값의 child에 접근한다(this.children) 후에 reduce를 사용해서 루트부터 리프까지

       쭉 callback함수를 적용한 node를 생성한다.

  ㄴ reduce도 덧셈 곱셈 등 간단한 것 말고 이런식의 사용법을 익혀야 할 필요가 있다. 

 

//childnode들에 callback함수 적용

//this(root).children.reduce를 사용해서 tree(acc), child(cur)

//arr(root) > childnode추가 > 어떤 childnode냐 > callback함수가 적용된 엘리먼트(child)를 값으로 하는 childnode

//초기값 > this.value를 값으로 하는 노드

 

  

 

 

*내일 할 일

- hiring assessment 다시 풀어보기

- nqueens 마무리 도전..

 

 

 

'TIL' 카테고리의 다른 글

## 2020 0701 서른세번째 TIL  (0) 2020.07.01
## 2020 0629 0630 서른두번째 TIL  (0) 2020.06.30
## 2020 0625 서른번째 TIL  (0) 2020.06.26
## 2020 0624 스물아홉번째 TIL  (0) 2020.06.24
## 2020 0623 스물여덟번째 TIL  (0) 2020.06.23
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함