본문 바로가기

항해9973

[알고리즘] 최소직사각형 문제풀기(자바스크립트 javascript) 👌 sizes의 [60,50]을 찾으려면 for(let i = 0; i b[0] - a[0])[0][0] let y = sizes.sort.((a,b) => b[1] - a[1])[0][1] ✅ 최종 코드 function solution(sizes) { let answer = 0 for(let i = 0; i b[1] - a[1])[0][1] answer = x * y return answer } 2022. 7. 20.
[알고리즘] 3진법 뒤집기 문제풀이(자바스크립트 javascript) (풀기 전에 알아야 할 것) 1. toString() : ()안에 숫자를 넣어주면, 숫자 진법으로 변경된다. 2. parseInt(string, radix) : 전달 받은 문자열을 전달 받은 radix로 분석한 정수를 반환한다. 해당 문자열은 3진법이니까 3진법으로 분석한 정수를 반환한다고 이해하면 된다. 👌 45는 10진법이니까 3진법으로 바꿔주기 n.toString(3) // 문자열 1200 👌 배열로 나눠주기 n.toString(3).split('') // 1,2,0,0 👌 뒤집어 주기 n.toString(3).split('').reverse() // 0.0.2.1 👌 다시 묶어주기 n.toString(3).split('').reverse().join('') // 0021 👌 문자열 0021이므로 .. 2022. 7. 20.
[자바스크립트 javascript] 실행 컨텍스트와 콜 스택 ✅ 실행 컨텍스트와 콜 스택 1️⃣ 실행 컨텍스트(Execution context) 자바스크립트 코드가 실행되는 환경을 의미한다. 자바스크립트에는 대표적으로 두 가지 타입의 실행 컨텍스트(Execution context)가 있다. 실행할 코드에 제공할 환경 정보들을 모아놓은 객체들로 자바스크립트의 동적 언어로서의 성격을 가장 잘 파악할 수 있는 개념이다. 👌 Global Execution context 자바스크립트 엔진이 처음 코드를 실행할 때 Global Execution Context가 생성된다. 생성 과정에서 전역 객체인 Window Object(Node는 Global)를 생성하고 this가 Window 객체를 가리키도록 한다. 👌 Function Execution context 자바스크립트 엔진은.. 2022. 7. 20.
[자바스크립트 javascript] 불변 객체를 만드는 방법 ✅ 불변 객체를 만드는 방법 불변이란? 변하지 않는 것 불변 객체란? 변하지 않는 객체, 즉 이미 할당된 객체가 변하지 않는다는 뜻 자바스크립트에서 불변 객체를 만드는 방법 : const, Object.freeze() 1️⃣ const ES6 문법부터 let과 const 를 지원한다. 변수를 상수로 선언할 수 있다. 일반적으로 상수로 선언된 변수는 값을 바꾸지 못하는 것으로 알려져 있다. ES6에서의 const는 할당된 값이 상수가 되는 것이 아닌, 바인딩 된 값이 상수가 되는, 즉, test변수가 상수가 되기 때문에 const 키워드로 선언된 test 변수에는 객체 재할당은 불가능하지만 객체의 속성은 변경 가능하다. const test = {}; test.name = "mingyo"; console.l.. 2022. 7. 19.
[알고리즘] 하샤드 수 문제풀기(자바스크립트 javascript) 👌 x가 예를 들어 13이면 13을 1+3 으로 나눈 값을 구해야 하기 문자열로 먼저 바꿔준다. String(x) // 문자열 13 👌 문자열 13을 1,3으로 배열해주고 변수를 선언한다. let arr = String(x).split('') // 문자열 1,3 👌 1,3을 더하려면 위치를 구해주어야 하니까 for(let i=0; i 2022. 7. 19.
[알고리즘] 콜라츠 추측 문제풀기(자바스크립트 javascript) (풀기 전에 알아야 할 것) 🔹 while : 반복되게 설정 👌 num 이 짝수라면 2로 나누고 홀수라면 3을 곱하고 1을 더해라 if(num % 2 == 0){ num = num/2 // num /= 2 이렇게 표현할 수도 있다. }else{ num = (num * 3) + 1 } 👌 while 반복함수를 사용하는데, 이 조건을 사용해서 1이 안되면 반복하는 것 while(num != 1){ if(num % 2 == 0){ num = num/2 }else{ num = (num * 3) + 1 } // 여기까지가 짝수일때, 홀수일때 조건문 answer += 1; } while 문 안에 들어간 수가 짝수, 홀수를 판별해서 식을 한 번 돌고 나올 때마다, answer +=1로 while 문을 반복하는 횟수를.. 2022. 7. 19.