Coplit 고차함수 1-6

WeWorship TV·2020년 10월 4일

Coplit 고차함수 설명

01_returnFunction

말 그대로 'Hello HoF'라는 값을 리턴하는 함수를 리턴해야 한다.
강의를 정확하게 보고 이해했다면 쉽게 풀리는 문제이다.

조금만 더 힌트를 주자면

return function() {

으로 시작하면 된다.

02_functionParameter

func와 num을 입력받아 num에 함수를 적용한 결과를 리턴해야 한다.
1번 문제를 풀었다면 손쉽게 풀 수 있는 문제이다.

또한 '고차함수 이해하기'라는 글을 이해했다면 쉽게 풀 수 있다.

03_applyTwice

func와 num을 입력받아 num에 함수를 두 번(Twice) 적용한 결과를 리턴해야 한다.
함수를 두 번 적용하는 것이 이 문제의 Key Point이다.

어떻게 해야 두번 적용할 수 있을지 고민해보자.
힌트는 두번이다.

04_compose

두 개의 func와 num을 입력받아 num에 함수들을 num에 가까운 순서대로 적용한 결과를 리턴해야 한다.
위의 applyTwice를 풀었다면 바로 풀릴 문제이다.
이 문제의 힌트는 가까운 순서대로 이다.

왜냐하면 인자가 func1과 func2라는 함수가 있기 때문이다.

05_compose2

두 개의 func를 리턴받아 두 func가 결합된 새로운 함수를 리턴해야 한다.
위의 compose를 풀었다면 두 개의 func를 리턴하는 것은 쉽게 작성할 수 있다.
그런데 새로운 함수를 리턴해야 한다고 한다.

힌트는 새로운 함수를 리턴해야 하고, 1번 문제와 4번 문제를 합쳐보면 풀린다.

06_pipe

N개의 func를 입력받아 함수들이 입력된 차례대로 새로운 함수를 리턴해야 한다.
사실 나도 여기서 막히기 시작했는데 정말 안풀려서 레퍼런스를 확인했더니 바로 이해가 되었다.

key point 1 입력된 차례대로
key point 2 새로운 함수를 리턴

입력된 차례대로라는 것을 해결하려고 생각해보니 for문이 가장 적당했다.
N개의 func를 입력받은 차례대로를 해결하려면 for문을 어떤식으로 작성해야 될지 바로 생각날 것이다.

새로운 함수를 리턴해야 하니 5번까지 문제를 잘 풀었다면 바로 이해가 갈 것이다.
(나는 key point 1에서 막혔다)

profile
자 이제 시작이야 내 꿈을

0개의 댓글