Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 노드
- 바이트디그리
- 리액트
- 호이스팅
- 변수 선언
- React
- 패스트캠퍼스
- javascript
- 나라사랑카드
- margin-left
- udemy
- 코딩테스트 js
- CSS
- 프로그래머스 JS
- API
- js
- flex
- DOM
- html
- Flex Container
- 국비지원
- 내일배움카드
- 프로그래머스 lv0
- 자바스크립트
- react강의
- flex item
- 코딩테스트 lv0
- K디지털기초역량훈련
- SVG
- js split
Archives
- Today
- Total
꺾이지 않는 마음
[프로그래머스] Lv.0 가장 큰 수 찾기 JS 풀이 본문
문제 설명
정수 배열 array가 매개변수로 주어질 때, 가장 큰 수와 그 수의 인덱스를 담은 배열을 return 하도록 solution 함수를 완성해보세요.
제한사항
- 1 ≤ array의 길이 ≤ 100
- 0 ≤ array 원소 ≤ 1,000
- array에 중복된 숫자는 없습니다.
입출력 예
n | result |
[1, 8, 3] | [8, 1] |
[9, 10, 11, 8] | [11, 2] |
입출력 예 설명
입출력 예 #1
- 1, 8, 3 중 가장 큰 수는 8이고 인덱스 1에 있습니다.
입출력 예 #2
- 9, 10, 11, 8 중 가장 큰 수는 11이고 인덱스 2에 있습니다.
✨나의 풀이
1️⃣ for 반복문과 비교연산을 활용하여 가장 큰 수 도출
function solution(array) { let biggestNum = 0; let indexOfBiggestNum = 0; for (let i = 0; i < array.length; i++) { if (array[i] > biggestNum) { biggestNum = array[i]; indexOfBiggestNum = i; } } return [biggestNum, indexOfBiggestNum]; }
for 문을 사용하여 배열 내의 각 원소를 순회하였다.
각 원소를 순회하면서 이전 값과 비교했을 때 더 크면 그 값과 인덱스를 변수에 저장하였다.
그렇게 배열을 마지막까지 순회하고 나면, 결국 변수에는 가장 큰 원소 값과 인덱스만이 남는다.
해당 변수를 [] 배열에 담아 출력하여 답을 도출하였다.
답을 작성하면서 분명 이것 보다 더 간단한 해결책이 있을 것이란 생각이 들었다.
뭔가 더 깔끔한 알고리즘을 가진 함수가 있을 거 같은 느낌..
🟨다른 풀이
Math.max()와 스프레드 연산자 사용
function solution(array) { let max = Math.max(...array); return [max, array.indexOf(max)]; }
답을 제출 후 다른 사람의 답안을 보았다.
역시나 훨씬 더 깔끔한 풀이가 있었다.
수학 메서드 Math.max()를 사용하여 주어진 값 중 최대값을 도출할 수 있었다.
배열 안에 있는 원소들은 스프레드 연산자를 활용하여 max의 인수로 줄 수 있었다.
수학 관련 메서드는 ceil, round, floor 같은 반올림 관련 함수만 자주 써서 깜빡하고 있었다.
스프레드 연산자도 배웠지만 이렇게 활용할 수 있다니 다시 한번 배움을 얻게 됐다.
오늘도 성장 +1 스택
'코딩테스트 기록' 카테고리의 다른 글
[프로그래머스] Lv.0 문자 반복 출력하기 JS 풀이 (0) | 2022.10.27 |
---|---|
[프로그래머스] Lv.0 제곱수 판별하기 JS 풀이 (0) | 2022.10.25 |
[프로그래머스] Lv.0 짝수 홀수 개수 JS 풀이 (0) | 2022.10.24 |
[프로그래머스] Lv.0 문자열 뒤집기 JS 풀이 (0) | 2022.10.24 |
[프로그래머스] Lv.0 머쓱이보다 키 큰 사람 JS 풀이 (0) | 2022.10.24 |
Comments