분류 전체보기
-
fibonacci 문제 아래와 같이 정의된 피보나치 수열 중 n번째 항의 수를 리턴해야 합니다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1입니다. 그 다음 2번째 피보나치 수부터는 바로 직전의 두 피보나치 수의 합으로 정의합니다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, ... 입력 인자 1 : n number 타입의 n (n은 0 이상의 정수) 출력 number 타입을 리턴해야합니다. 주의사항 재귀함수를 이용해 구현해야 합니다. 반복문(for, while) 사용은 금지됩니다. 함수 fibonacci가 반드시 재귀함수일 필요는 없습니다. 입출력 예시 let output = fibonacci(0); console.log(output); // --> 0 output = ..
아래와 같이 정의된 피보나치 수열 중 n번째 항의 수를 리턴해야 합니다.fibonacci 문제 아래와 같이 정의된 피보나치 수열 중 n번째 항의 수를 리턴해야 합니다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1입니다. 그 다음 2번째 피보나치 수부터는 바로 직전의 두 피보나치 수의 합으로 정의합니다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, ... 입력 인자 1 : n number 타입의 n (n은 0 이상의 정수) 출력 number 타입을 리턴해야합니다. 주의사항 재귀함수를 이용해 구현해야 합니다. 반복문(for, while) 사용은 금지됩니다. 함수 fibonacci가 반드시 재귀함수일 필요는 없습니다. 입출력 예시 let output = fibonacci(0); console.log(output); // --> 0 output = ..
2023.02.16 -
UI, UX (UI와 UX의 차이점) UI(User Interface, 사용자 인터페이스) UI는 사용자 인터페이스를 의미하며, 사용자와 시스템 간의 상호작용을 가능하게 하는 기술 또는 시스템의 외관, 레이아웃, 기능 등을 의미한다. UI는 사용자가 소프트웨어, 애플리케이션, 웹사이트, 기기 등과 상호작용할 때 경험하는 모든 것을 포함하며. 텍스트, 이미지, 아이콘, 버튼, 입력 필드, 애니메이션 등을 포함할 수 있다. 보통 UI라고 하면 떠오르는 화면상의 그래픽 요소 외에도, 키보드, 마우스 등의 물리적 요소도 컴퓨터와 상호 작용하기 위한 시스템이므로 UI라고 볼 수 있다. UI의 다양한 형태와 종류 그래픽 사용자 인터페이스(GUI): 그래픽으로 구성된 화면을 통해 사용자와 시스템 간의 상호작용이 이루..
UI / UX (UI와 UX의 차이점), UI디자인패턴UI, UX (UI와 UX의 차이점) UI(User Interface, 사용자 인터페이스) UI는 사용자 인터페이스를 의미하며, 사용자와 시스템 간의 상호작용을 가능하게 하는 기술 또는 시스템의 외관, 레이아웃, 기능 등을 의미한다. UI는 사용자가 소프트웨어, 애플리케이션, 웹사이트, 기기 등과 상호작용할 때 경험하는 모든 것을 포함하며. 텍스트, 이미지, 아이콘, 버튼, 입력 필드, 애니메이션 등을 포함할 수 있다. 보통 UI라고 하면 떠오르는 화면상의 그래픽 요소 외에도, 키보드, 마우스 등의 물리적 요소도 컴퓨터와 상호 작용하기 위한 시스템이므로 UI라고 볼 수 있다. UI의 다양한 형태와 종류 그래픽 사용자 인터페이스(GUI): 그래픽으로 구성된 화면을 통해 사용자와 시스템 간의 상호작용이 이루..
2023.02.15 -
문제1. 다음 중 재귀 함수의 정의로 맞는 것을 고르세요. A.함수를 호출하는 함수 B.자기 자신을 호출하는 함수 C.함수를 인자로 받는 함수 D.함수를 리턴하는 함수 더보기 A.함수를 호출하는 함수 B.자기 자신을 호출하는 함수 C.함수를 인자로 받는 함수 D.함수를 리턴하는 함수 문제2. 다음 중 재귀 함수를 구현할 때, 재귀의 탈출 조건과 관련있는 것을 고르세요. A. camel case B. recursive case C. pascal case D. base case 더보기 A. camel case B. recursive case C. pascal case D. base case 재귀 함수는 자기 자신을 호출하는 방식으로 동작하므로, 재귀를 반복하다 보면 언젠가는 멈춰야 합니다. 이때, 멈출 조건..
[자료구조/알고리즘] 재귀 종합퀴즈문제1. 다음 중 재귀 함수의 정의로 맞는 것을 고르세요. A.함수를 호출하는 함수 B.자기 자신을 호출하는 함수 C.함수를 인자로 받는 함수 D.함수를 리턴하는 함수 더보기 A.함수를 호출하는 함수 B.자기 자신을 호출하는 함수 C.함수를 인자로 받는 함수 D.함수를 리턴하는 함수 문제2. 다음 중 재귀 함수를 구현할 때, 재귀의 탈출 조건과 관련있는 것을 고르세요. A. camel case B. recursive case C. pascal case D. base case 더보기 A. camel case B. recursive case C. pascal case D. base case 재귀 함수는 자기 자신을 호출하는 방식으로 동작하므로, 재귀를 반복하다 보면 언젠가는 멈춰야 합니다. 이때, 멈출 조건..
2023.02.14 -
largestProductOfThree 문제 정수를 요소로 갖는 배열을 입력받아 3개의 요소를 곱해 나올 수 있는 최대값을 리턴해야 합니다. 입력 인자 1 : arr number 타입을 요소로 갖는 임의의 배열 출력 number 타입을 리턴해야 합니다. 주의사항 입력으로 주어진 배열은 중첩되지 않은 1차원 배열입니다. 배열의 요소는 음수와 0을 포함하는 정수입니다. 배열의 길이는 3 이상입니다. 입출력 예시 let output = largestProductOfThree([2, 1, 3, 7]); console.log(output); // --> 42 (= 2 * 3 * 7) output = largestProductOfThree([-1, 2, -5, 7]); console.log(output); // -..
정수를 요소로 갖는 배열을 입력받아 3개의 요소를 곱해 나올 수 있는 최대값을 리턴해야 합니다.largestProductOfThree 문제 정수를 요소로 갖는 배열을 입력받아 3개의 요소를 곱해 나올 수 있는 최대값을 리턴해야 합니다. 입력 인자 1 : arr number 타입을 요소로 갖는 임의의 배열 출력 number 타입을 리턴해야 합니다. 주의사항 입력으로 주어진 배열은 중첩되지 않은 1차원 배열입니다. 배열의 요소는 음수와 0을 포함하는 정수입니다. 배열의 길이는 3 이상입니다. 입출력 예시 let output = largestProductOfThree([2, 1, 3, 7]); console.log(output); // --> 42 (= 2 * 3 * 7) output = largestProductOfThree([-1, 2, -5, 7]); console.log(output); // -..
2023.02.14 -
재귀 함수란? 재귀적으로 호출되는 함수가 반환 값을 이용해 문제를 분할하고, 작은 문제를 해결하여 최종적으로 전체 문제를 해결하는 방식입니다. 예시) recursion() 함수가 자기 자신을 호출하여 문제를 해결하는 재귀함수 function recursion () { console.log("This is") console.log("recursion!") recursion() } 재귀는 언제 사용하는 게 좋을까? 재귀함수는 다음과 같은 경우에 사용하는 것이 적합합니다. (예를 들어, 피보나치 수열, 이진 탐색, 하노이 탑, 트리 순회 등은 재귀함수를 이용해 간단하고 명확하게 구현할 수 있습니다.) 문제를 작은 부분으로 쪼개기 쉬운 경우 문제를 작은 부분으로 쪼개기 쉽다면, 재귀 함수를 이용하여 작은 부분에..
재귀함수재귀 함수란? 재귀적으로 호출되는 함수가 반환 값을 이용해 문제를 분할하고, 작은 문제를 해결하여 최종적으로 전체 문제를 해결하는 방식입니다. 예시) recursion() 함수가 자기 자신을 호출하여 문제를 해결하는 재귀함수 function recursion () { console.log("This is") console.log("recursion!") recursion() } 재귀는 언제 사용하는 게 좋을까? 재귀함수는 다음과 같은 경우에 사용하는 것이 적합합니다. (예를 들어, 피보나치 수열, 이진 탐색, 하노이 탑, 트리 순회 등은 재귀함수를 이용해 간단하고 명확하게 구현할 수 있습니다.) 문제를 작은 부분으로 쪼개기 쉬운 경우 문제를 작은 부분으로 쪼개기 쉽다면, 재귀 함수를 이용하여 작은 부분에..
2023.02.13 -
Promise - JavaScript | MDN Promise 객체는 비동기 작업이 맞이할 미래의 완료 또는 실패와 그 결과 값을 나타냅니다. developer.mozilla.org 들어가기 전 (동기적 vs 비동기적, 콜백 지옥) 자바스크립트는 동기적(Synchrous)으로 코드를 실행한다. 동기적으로 처리가 된다는 것은 우리가 작성한 순서대로 처리가 되는 것이기 때문에 어떠한 작업이 끝나야 다음 작업을 진행할 수 있으므로 어떤 작업에 대해 특정 시간을 정해놓은 후 실행을 시키고 싶다면 비동기적으로 처리를 해야한다. 비동기(Asynchronous)처리를 할 때 대표적인 함수는 setTimeout()인데, 두 개의 인자를 받고 있다. 하나는 TimeHandler라는 콜백 함수와 시간을 지정해주는 time..
Promise의 기능과 필요한 이유Promise - JavaScript | MDN Promise 객체는 비동기 작업이 맞이할 미래의 완료 또는 실패와 그 결과 값을 나타냅니다. developer.mozilla.org 들어가기 전 (동기적 vs 비동기적, 콜백 지옥) 자바스크립트는 동기적(Synchrous)으로 코드를 실행한다. 동기적으로 처리가 된다는 것은 우리가 작성한 순서대로 처리가 되는 것이기 때문에 어떠한 작업이 끝나야 다음 작업을 진행할 수 있으므로 어떤 작업에 대해 특정 시간을 정해놓은 후 실행을 시키고 싶다면 비동기적으로 처리를 해야한다. 비동기(Asynchronous)처리를 할 때 대표적인 함수는 setTimeout()인데, 두 개의 인자를 받고 있다. 하나는 TimeHandler라는 콜백 함수와 시간을 지정해주는 time..
2023.02.10 -
compressString 문제 문자열을 입력받아 연속되는 문자가 있을 경우, 연속 구간을 반복되는 수와 문자로 조합한 형태로 압축한 문자열을 리턴해야 합니다. 입력 인자 1 : str string 타입의 알파벳 문자열 출력 string 타입을 리턴해야 합니다. 주의 사항 빈 문자열을 입력받은 경우, 빈 문자열을 리턴해야 합니다. 3개 이상 연속되는 문자만 압축합니다. 입출력 예시 let output = compressString('abc'); console.log(output); // --> abc output = compressString('wwwggoppopppp'); console.log(output); // --> 3wggoppo4p 코드 // 작성코드 function compressString..
문자열을 입력받아 연속되는 문자가 있을 경우, 연속 구간을 반복되는 수와 문자로 조합한 형태로 압축한 문자열을 리턴해야 합니다.compressString 문제 문자열을 입력받아 연속되는 문자가 있을 경우, 연속 구간을 반복되는 수와 문자로 조합한 형태로 압축한 문자열을 리턴해야 합니다. 입력 인자 1 : str string 타입의 알파벳 문자열 출력 string 타입을 리턴해야 합니다. 주의 사항 빈 문자열을 입력받은 경우, 빈 문자열을 리턴해야 합니다. 3개 이상 연속되는 문자만 압축합니다. 입출력 예시 let output = compressString('abc'); console.log(output); // --> abc output = compressString('wwwggoppopppp'); console.log(output); // --> 3wggoppo4p 코드 // 작성코드 function compressString..
2023.02.10 -
decryptCaesarCipher 문제 암호화된 문자열과 암호화 키를 입력받아 복호화된 문자열을 리턴해야 합니다. 카이사르 암호(Caesar cipher)는 평문(plaintext)을 암호키 secret개만큼 (오른쪽으로) 평행이동시켜 암호화 합니다. 복호화는 암호화된 문자열을 원래의 평문으로 복원하는 것을 말합니다. 'hello'를 secret 3으로 암호화한 경우: 'khoor' 'codestates'를 secret 11로 암호화한 경우: 'nzopdelepd' 입력 인자 1 : str string 타입의 알파벳 소문자 문자열 인자 2 : secret number 타입의 암호화 키 출력 string 타입을 리턴해야 합니다. 주의 사항 빈 문자열을 입력받은 경우, 빈 문자열을 리턴해야 합니다. 공백은..
암호화된 문자열과 암호화 키를 입력받아 복호화된 문자열을 리턴해야 합니다.카이사르 암호(Caesar cipher)는 평문(plaintext)을 암호키 secret개만큼 (오른쪽으로) 평행이동시켜 암호화 합니다. 복..decryptCaesarCipher 문제 암호화된 문자열과 암호화 키를 입력받아 복호화된 문자열을 리턴해야 합니다. 카이사르 암호(Caesar cipher)는 평문(plaintext)을 암호키 secret개만큼 (오른쪽으로) 평행이동시켜 암호화 합니다. 복호화는 암호화된 문자열을 원래의 평문으로 복원하는 것을 말합니다. 'hello'를 secret 3으로 암호화한 경우: 'khoor' 'codestates'를 secret 11로 암호화한 경우: 'nzopdelepd' 입력 인자 1 : str string 타입의 알파벳 소문자 문자열 인자 2 : secret number 타입의 암호화 키 출력 string 타입을 리턴해야 합니다. 주의 사항 빈 문자열을 입력받은 경우, 빈 문자열을 리턴해야 합니다. 공백은..
2023.02.09