전체 글

· Algorithm
최근 블로그 업뎃이 뜸했는데, 일단 최근에는 코테 풀이에 집중하고 있어서 따로 노션에 문제 푼 내용을 매일 기록하고 해당 노션 페이지를 마크다운으로 내보내서 깃헙에 커밋하고 있다. 주로 이 블로그에는 문제 풀이보단 JavaScript 개념 위주로 올리고 있었다보니... 뭐 서두가 길었지만, 블로그를 쓰려고 생각해보니 사실 JS 개념은 공식문서가 더욱 정확하고 자세히 나와있어서, 블로그에는 차라리 문제 풀이를 올리는 것이 더 도움이 되지 않을까 싶어졌다. 물론 아직 Lv.2를 내가 온전히 풀어내지 못하는 경우가 대부분이라... 내 풀이는 아닌 것이 많다만 복습 차원으로 올린다. 귤 고르기 문제 설명 경화는 과수원에서 귤을 수확했습니다. 경화는 수확한 귤 중 'k'개를 골라 상자 하나에 담아 판매하려고 합니..
· JavaScript
프로그래머스 코테를 풀면 어김 없이 정규표현식을 활용한 쿨한 풀이를 마주한다. 아직 다른 메서드들도 자유자재로 쓰는 편은 못되어 정규표현식은 조금 뒤로 미뤄두었는데, 점점 마주하게 되는 빈도가 늘어나면서 정리를 한 번 다시 해야겠단 생각이 들었다. 잘 습득해서 쿨해지자. 정규표현식 정규표현식, 또는 정규식은 문자열에서 특정 문자 조합을 찾기 위한 패턴이다. Javascript 에서는 정규표현식도 객체로서, RegExp의 exec()와 test() 메서드를 사용할 수 있다. String의 match(), matchAll(), replace(), replaceAll(), search(), split() 메서드와도 함께 사용할 수 있다. 정규표현식 만들기 정규표현식은 두 가지 방법으로 만들 수 있다. 정규표현..
· JavaScript
최대공약수(Greatest Common Divisor) 최대공약수는 두 수 A와 B의 공통된 약수 중에 가장 큰 정수이다. 최대공약수를 구하는 가장 쉬운 방법은 2부터 min(A,B)까지 모든 정수로 나누어 보는 방법이다. let getGCD = (num1, num2) => { let gcd = 1; for(let i = 2; i { let lcm = 1; while(true){ if((lcm % num1 == 0) && (lcm % num2 == 0)){ break; } lcm++; } return lcm; } 유클리드 호제법을 이용한 구현 유클리드 호제법의 기본 원리는 num1을 num2로 나눈 나머지를 r이라고 했을 때, GCD(num1, num2) = GCD(num2, r)과 같다는 것이다. r이..
· JavaScript
splice() 자바스크립트의 splice() 메서드는 배열 객체에 사용할 수 있는 내장 메서드이다. 이는 기존 요소를 삭제하거나 교체하여 배열의 내용을 변경하며, 제거된 요소가 담긴 별도의 배열을 새로 반환한다. splice() 메서드는 3개의 매개 변수가 있으며 원본 배열을 직접 변경한다. Array.splice(start, deleteCount, items, ...) start : 원본 배열의 요소를 제거하기 시작할 인덱스. start만 지정하면 원본 배열의 start부터 모든 요소를 제거한다. 음수인 경우 배열의 끝에서의 인덱스를 나타낸다. deleteCount : 원본 배열의 요소를 제거하기 시작할 인덱스인 start부터 제거할 요소의 개수. deleteCount가 0인 경우 아무런 요소도 제거..
· JavaScript
Set set 객체는 중복되지 않는 유일한 값들의 집합으로, 수학적 집합을 구현하기 위한 자료구조이다. set 객체는 아래와 같은 특징을 지닌다. 동일한 값을 중복하여 포함할 수 없다. 요소 순서에 의미가 없다. 인덱스로 요소에 접근할 수 없다. set 객체의 생성 set 객체는 set 생성자 함수로 생성한다. 인수를 전달하지 않으면 빈 set 객체가 생성되며, set 생성자 함수는 이터러블을 인수로 받아 set 객체를 생성한다. const set = new Set(); console.log(set); // Set(0) {} const set1 = new Set([1,2,3,3]); console.log(set1); // Set(3) {1,2,3} const set2 = new Set('hello'); ..
· JavaScript
팩토리얼 계산? 주어진 수 보다 작거나 같은 모든 양의 정수를 곱한 것. 5! = 5 * 4 * 3 * 2 * 1 재귀함수로 팩토리얼 구하기 재귀함수는 함수 내에서 자기 자신을 다시 호출하는 함수를 뜻한다. 특정한 조건에 만족할 때까지 자기 자신을 계속 호출하여 결과를 얻어내는 방법이다. function factorialize(num) { // If the number is less than 0, reject it. if (num < 0) return -1; // If the number is 0, its factorial is 1. else if (num == 0) return 1; // Otherwise, call the recursive procedure again else { return (num..
Jyophie
Small steps every day.