본문 바로가기

알고리즘28

[Lv.0] 가장 큰 수 찾기 (Math.max(), findIndex()) 1. 문제 2. 풀이 function solution(array) { let max = Math.max(...array); //Math객체의 max메소드를 이용해 array의 요소 중 최대값을 구한다. let index = array.findIndex(e => e === max); //array중에서 max의 값과 같은 요소의 index를 알아낸다. let answer = [max, index] //answer에 입력 return answer; } 3. 알아야할 사항 1) Math.max(a,b,c) : - a,b,c 중 최대값을 리턴한다. 2) array.findIndex( (a) => 조건문 ) : - 조건문에 해당하는 값을 리턴한다. a는 각각의 요소이다. 2023. 1. 30.
[Lv.0] 중앙값 구하기(sort(), 불안정정렬, 안정정렬) 1. 문제 2. 풀이 function solution(array) { var answer = 0; array.sort((a,b) => b-a) //배열을 정렬한다. answer = array[Math.floor(array.length/2)] //배열의길이를 2로 나눈값을 버림하면 중앙값의 index이다. return answer; } 3. 알아야할 사항 1) array.sort((a,b)=>a-b): - 콜백함수가 (a,b) => a-b 일 경우 오름차순 정렬 - 콜백함수가 (a,b) => b-a 일 경우 내림차순 정렬 - Stable Sort 란 ? : 배열의 요소 중 같은 값이 있을 경우 기존의 순서가 보장되어 정렬되는 정렬 알고리즘의 경우 안정정렬(Stable Sort)이다. : 반대로 순서가 보장.. 2023. 1. 30.
[Lv.0] 편지 (.split()) 1. 문제 2. 풀이 function solution(message) { let a = message.split(' ') // 빈공간을 기준으로 분해하여 배열에 각각 담는다. let count = 0; //카운트를 세어줄 변수를 만든다 for(let i =0; i 2023. 1. 30.
프로그래머스 알고리즘 문제 입문기(JS) 1. 목적 - 알고리즘 독학을 위해 프로그래머스 문제풀이를 도전하고, 블로그에 기록하여 개발 커리어와 지식 발전에 도움이 되도록 한다. 2. 진행 - lv.0 부터 차근차근 밟아나가며, 주 2회 이상, 4단계 정복을 목표로 한다. - 너무 쉬운 JS기초문법에 관한 내용은 포스팅하지 않는다. 3. 규칙 - 짧고 간결한 문체로 작성하여, 누군가가 보거나 내가 다시 보더라도 알아보기 쉽게 기록한다. - 풀이설명 이후 마지막에 풀이에 필요했던 메소드나 방법을 정리하는 시간을 가진다. - 다른사람의 풀이는 절대 보지 않는다. 끝. 시작해보자! 2023. 1. 30.