※문제설명
머쓱이는 학교에서 키 순으로 줄을 설 때 몇 번째로 서야 하는지 궁금해졌습니다.
머쓱이네 반 친구들의 키가 담긴 정수 배열 array와 머쓱이의 키 height가 매개변수로 주어질 때,
머쓱이보다 키 큰 사람 수를 return 하도록 solution 함수를 완성해보세요.
My Solution
function solution(array, height) {
return (array.filter(array=>array>height)).length
}
Array.prototype.filter()
filter() 메서드는 주어진 함수의 테스트를 통과하는 모든 요소를 모아 새로운 배열로 반환합니다.
filter 구문
arr.filter(callback(element, index, array), thisArg)
매개변수
callback : 각 요소를 시험할 함수. true를 반환하면 요소를 유지하고, false를 반환하면 버립니다.
다음 세 가지 매개변수를 받습니다.
1. element : 처리할 현재 요소.2. index : 처리할 현재 요소의 인덱스.
3. array : filter를 호출한 배열.
thisArg : callback을 실행할 때 this로 사용하는 값.
부족한 점 | 처음에 저 문제를 접했을 때 어떤 식으로 접근해야하는 지 몰라 어려움을 겪었다. 코딩 마스터 님께 키워드를 얻었고, 얻었지만 쉽게 생각하지 못해 다음날로 문제를 미뤘다. 가벼운 마음으로 다시 코드를 처음부터 천천히 필터와 접목시켜 문득 편하게 쓴 코드가 통과되었다. 어제의 나와 오늘의 나를 생각해보면 어제는 너무 어렵게 생각해보다보니 쉽게 통과를 하지 못했던 것 같다. 항상 다양하고 새로운 방식으로 접하려고 하다보니 조금 스스로 생각이 깊어졌던 것 같다!! |
개선 방안 | 내 수준을 고려하면서 코드를 작성할 필요가 있다. 지금은 매일 코딩테스트를 하면서 매일 새로운 것을 알아가는 과정이니까 성급해하지말고 내가 알고 있는 선에서 개념들을 익히면서 문제를 통과하려고 노력하자. |
Different Approach
function solution(array, height) {
var answer = 0;
for(var i in array){
var h = array[i];
if(height < h){
answer++;
}
}
return answer;
}
for in : 객체의 프로퍼티 키 열거 전용
✔️ 객체의 열거 가능한 '속성들'을 순회할 수 있도록 해줌
✔️ 객체의 key값에 접근 가능, value값에는 직접 접근 불가
✔️ 모든 객체에서 사용 가능
참고 블로그 : https://aljjabaegi.tistory.com/312
https://joooing.tistory.com/entry/Iteration2-for-in%EB%AC%B8-for-of%EB%AC%B8
'프론트엔드로 가는 길 > 프로그래머스' 카테고리의 다른 글
12. 배열 두배 만들기(push, reduce, map) (0) | 2022.11.23 |
---|---|
12. 분수의 덧셈(while문) (1) | 2022.11.21 |
10. 변수, 사칙연산 실력향상 과제 (번외) (0) | 2022.11.06 |
09. 369게임 (번외) (0) | 2022.11.05 |
08.두 수의 나눗셈 & 양꼬치 (0) | 2022.11.04 |