코딩일지
작성자 | |||
성 명 | 최주희 | 작성일자 | 2022.02.05 |
세부 코딩 내용 | https://school.programmers.co.kr/learn/courses/30/lessons/120842 | ||
활동 기간 | 2022.02.05 | ||
문제 | 정수 배열 num_list와 정수 n이 매개변수로 주어집니다. num_list를 다음 설명과 같이 2차원 배열로 바꿔 return하도록 solution 함수를 완성해주세요. num_list가 [1, 2, 3, 4, 5, 6, 7, 8] 로 길이가 8이고 n이 2이므로 num_list를 2 * 4 배열로 다음과 같이 변경합니다. 2차원으로 바꿀 때에는 num_list의 원소들을 앞에서부터 n개씩 나눠 2차원 배열로 변경합니다. |
||
나의 풀이 | function solution(num_list, n) { let array=[] for(let i=0; i<num_list.length; i+n){ array.push(num_list.splice(i,n)) } return array } |
||
결과 | 통과 | ||
다른 풀이 | function solution(num_list, n) { var answer = []; while(num_list.length) { answer.push(num_list.splice(0,n)); } return answer; } |
function solution(num_list, n) { return Array(num_list.length / n).fill([]).map(() => num_list.splice(0, n)) } |
|
이렇게 하면 성능이 조금 더 좋아지지 않을까요! |
function solution(num_list, n) {
let array = []; num_list.reverse(); for (let i = 0; i <= num_list.length / n; i++) { const tempArray = []; for (j = 0; j < n; j++) { tempArray.push(num_list.pop()); } array.push(tempArray); } console.log(array); return array; } const num_list = new Array(900_000).fill(0).map((_, index) => index + 1); solution(num_list, 4); |
||
해석 | |||
키워드 | 코딩내용 | 생각 | |
1. 필요한 조건 정리
2. 풀이단계 정리
|
|||
'프론트엔드로 가는 길 > 프로그래머스' 카테고리의 다른 글
38. 프로그래머스_최대값 만들기(1) (2) | 2023.02.07 |
---|---|
37. 프로그래머스_주사위의 개수 (0) | 2023.02.06 |
35. 프로그래머스_배열 회전시키기 (0) | 2023.02.05 |
34. 프로그래머스_공던지기 (0) | 2023.02.04 |
33. 프로그래머스_점 위치 구하기 (0) | 2023.02.02 |