문자열을 받아서 원래 문자열의 역 버전인 새 문자열을 반환하는 JavaScript 함수를 작성해야 합니다. 유일한 조건은 내장된 String 메서드를 사용할 수 없고 문자열을 반전하기 위해 배열로 변환할 수 없다는 것입니다. 루프를 사용하여 문자열을 반복하고 새로운 역 문자열을 구성해야 합니다. 예시 const str = 'Hello World'; const reverse = (str = '') => { const { length } = str; l
정렬된 숫자 배열을 첫 번째 인수로, 단일 숫자를 두 번째 인수로 취하는 JavaScript 함수를 작성해야 합니다. 함수는 요소 정렬을 왜곡하지 않고 두 번째 인수로 지정된 숫자를 배열에 밀어넣어야 합니다. 다른 어레이를 생성하지 않고 이 작업을 수행해야 합니다. 예시 const arr = [6, 7, 8, 9, 12, 14, 16, 17, 19, 20, 22]; const num = 15; const findIndex = (arr, val) => { let low = 0, high = arr.le
문자열을 받는 JavaScript 함수를 작성해야 합니다. 입력이 반복되는 문자 시퀀스로 구성되어 있는지 여부에 따라 true 또는 false를 반환해야 합니다. 주어진 문자열의 길이는 항상 1보다 크고 문자 시퀀스는 적어도 한 번 반복되어야 합니다. 예를 들어 - aa는 완전히 두 개의 문자열 a를 포함하므로 true를 반환해야 합니다. aaa는 세 개의 문자열 a를 포함하므로 true를 반환해야 합니다. abcabcabc는 세 개의 문자열 abc를 포함하므로 true를 반환해야 합니다. aba는 최소한 두 개의 동일한 하위
우리는 두 문자열을 비교하고 그들이 얼마나 유사한지 백분율 가능성을 반환할 수 있는 JavaScript 함수를 작성해야 합니다. 백분율은 두 문자열이 공통적으로 가지고 있는 많은 문자의 척도일 뿐입니다. 완전히 유사하면 출력은 100이어야 하고 공통 문자가 전혀 포함되어 있지 않으면 출력은 0이어야 합니다. 예시 { let long =str1; 더 짧게 하자 =str2; if (str1.length { str1 =str1 .toLowerCase(); str2 =str2.toLowerCase(); 하자 arr =새로운 Array
우리는 arr이라고 하는 별개의 정수 배열과 sourceArr이라고 하는 정수 배열의 또 다른 배열이 제공됩니다. sourceArr 배열에서 정수는 고유합니다. sourceArr의 배열을 임의의 순서로 연결하여 arr을 형성하는 함수를 작성해야 합니다. 그러나 soureArr의 하위 배열 내부에 있는 정수를 재정렬할 수 없습니다. sourceArr에서 배열 arr을 구성할 수 있으면 true를 반환해야 하고 그렇지 않으면 false를 반환해야 합니다. 예를 들어 - const arr = [23, 67, 789]; const s
반복되는 숫자를 포함할 수 있는 숫자 배열을 사용하는 JavaScript 함수를 작성해야 합니다. 함수는 가장 적은 횟수로 반복되는 요소가 먼저 나타나고 빈도가 증가하는 요소가 뒤따르도록 배열을 정렬해야 합니다. 예를 들어 - 입력 배열이 -인 경우 const arr = [1,1,2,2,2,3]; 그런 다음 정렬된 배열은 -여야 합니다. const output = [3,1,1,2,2,2]; 예시 const arr = [1, 1, 2, 2, 2, 3]; const frequencySort = (arr = []) => {
문자열을 받는 JavaScript 함수를 작성해야 합니다. 함수는 두 개의 동일한 문자 사이에 끼워진 가장 긴 부분 문자열의 길이를 찾아 반환해야 합니다. 예를 들어 - 입력 문자열이 -인 경우 const str = 'avbghvh'; 그러면 출력은 다음과 같아야 합니다. - const output = 3; 원하는 가장 긴 부분 문자열이 두 v 사이의 bgh이기 때문입니다. 예시 const str = 'avbghvh'; const longestSub = (str = '') =>
숫자 배열을 받는 JavaScript 함수를 작성해야 합니다. 함수는 배열의 가장 큰 요소와 가장 작은 요소를 제외하고 배열의 평균을 계산해야 합니다. Array.prototype.reduce() 메서드를 사용하여 배열 요소의 합을 계산하는 동시에 가장 큰 요소와 가장 작은 요소를 찾습니다. 예시 const arr = [2, 6, 5, 4, 6, 8, 8, 5, 6, 6, 9, 4, 1, 4, 6, 7]; const specialAverage = (arr = []) => { const { length
배열에 num보다 큰 num 요소가 있는 것처럼 양의 정수 num이 존재하는 경우 배열을 특수 배열이라고 합니다. 숫자 num이 반드시 배열에 속할 필요는 없으며 존재하면 됩니다. 예를 들어 - 입력 배열이 -인 경우 const arr = [2, 1, 5, 2, 7, 9]; 그런 다음 적절하게 조사하면 num =3에 대해 이 배열에 3보다 큰 요소가 정확히 3개 있음을 알 수 있습니다. 그러나 3은 이 배열의 일부가 아니지만 유효합니다. 따라서 숫자 배열을 받는 JavaScript 함수를 작성해야 합니다. 함수는 특별한 숫자
숫자 배열을 첫 번째이자 유일한 입력으로 사용하는 JavaScript 함수를 작성해야 합니다. 이 함수는 원래 배열에서 가능한 모든 홀수 길이 하위 배열을 선택하고 합계를 계산하고 총 합계를 반환합니다. 하위 배열은 배열의 연속 하위 시퀀스를 의미하며 가능한 숫자 조합을 의미하지 않습니다. 예를 들어 - 입력 배열이 -인 경우 const arr = [1, 2, 3, 4, 5]; 그러면 가능한 모든 홀수 길이 배열은 -가 됩니다. [1], [2], [3], [4], [5], [1, 2, 3], [2, 3, 4], [3, 4
다음과 같은 데모 신용 카드 번호가 포함된 배열이 있다고 가정해 보겠습니다. const arr = ['4916-2600-1804-0530', '4779-252888-3972', '4252-278893-7978', '4556-4242-9283-2260']; 우리는 이 배열을 받는 함수를 만드는 임무를 받았습니다. 함수는 자릿수의 합이 가장 큰 신용 카드 번호를 반환해야 합니다. 두 신용 카드 번호의 합계가 같은 경우 함수에서 마지막 신용 카드 번호를 반환해야 합니다. 예시
Numbers 배열을 취하는 JavaScript 함수를 작성해야 합니다. 이 함수는 배열을 오름차순 또는 내림차순으로 정렬하기 위해 퀵소트 알고리즘을 적용해야 합니다. 퀵 정렬 알고리즘 Quicksort는 다음 단계를 따릅니다. − 1단계 − 모든 요소를 피벗으로 만듭니다(첫 번째 또는 마지막이 바람직하지만 모든 요소가 피벗이 될 수 있음). 2단계 − 피벗을 기준으로 배열을 분할합니다. 3단계 − 왼쪽 파티션에 재귀적으로 퀵 정렬 적용 4단계 − 올바른 파티션에 재귀적으로 퀵 정렬 적용 QuickSort의 평균 및
1과 n 사이의 n + 1 정수의 읽기 전용 배열을 취하는 JavaScript 함수를 작성해야 합니다. 함수는 선형 시간으로 반복되고 최대 O(n) 공간을 사용하는 하나의 숫자를 찾아야 합니다. 예를 들어 입력 배열이 -인 경우 const arr = [3 4 1 4 1]; 그러면 출력은 다음과 같아야 합니다. - const output = 1; 위와 같은 답변이 여러 개 있는 경우 아무거나 출력해야 합니다. 중복이 없으면 -1을 출력해야 합니다. 예시 const arr = [3, 4, 1, 4, 1]; const findRe
임의의 수의 인수(모두 숫자 유형)에 있는 JavaScript 함수를 작성해야 합니다. 함수는 덧셈과 뺄셈의 가능한 모든 합을 계산해야 합니다. 예를 들어 - 인수가 1, 2, 3인 경우 그런 다음 가능한 모든 조합은 - 1 + 2 + 3 1 - 2 - 3 1 + 2 - 3 1 - 2 + 3 마지막으로 함수는 0에 가장 가까운 합이 되어야 합니다. 이 경우 답은 0입니다. 예시 const findSmallestPositive = (...arr) => { let set = new Set([Math.
정수 배열을 취하는 JavaScript 함수를 작성해야 합니다. 함수는 배열에서 가장 긴 감소하는 부분 시퀀스의 길이를 반환해야 합니다. 예를 들어 - 입력 배열이 -인 경우 const arr = [5, 2, 5, 4, 3, 2, 4, 6, 7]; 그러면 출력은 다음과 같아야 합니다. - const output = 4; (연속 단어의) 가장 긴 감소 부분 시퀀스가 [5, 4, 3, 2]이기 때문에 예시 const arr = [5, 2, 5, 4, 3, 2, 4, 6, 7]; const decreasingSequence =
검색 문자열을 사용하는 JavaScript 문자열 함수를 작성해야 합니다. 검색 문자열은 사용되는 문자열에서 검색 문자열을 느슨하게 확인할 수 있습니다. 함수는 이 기준을 고려해야 합니다. 검색 쿼리 문자를 반복하고 문자열에서 동일한 순서로 나타나는지 확인해야 합니다. 예를 들어 - ('a haystack with a needle').fuzzySearch('hay sucks'); // false ('a haystack with a needle').fuzzySearch('sack
다음과 같은 구문의 참조 배열이 있다고 가정합니다. - const reference = ["your", "majesty", "they", "are", "ready"]; 그리고 다른 배열을 기반으로 위 배열의 일부 요소를 결합해야 하므로 다른 배열이 다음과 같을 경우 - const another = ["your", "they are"]; 결과는 다음과 같습니다 - result = ["your&quo
n과 같이 숫자를 받는 JavaScript 함수를 작성해야 합니다. 함수는 1에서 n까지 숫자 이름의 문자를 계산해야 합니다. 예:n =5인 경우 그러면 숫자는 1, 2, 3, 4, 5입니다. 그리고 총 글자 수는 19이므로 출력은 19가 되어야 합니다. 예시 const sumUpto = (num = 1) => { let sum = 0; const lenHundred = 7; const lenThousand = 8; const le
숫자를 받는 JavaScript 함수를 작성해야 합니다. 함수는 먼저 해당 숫자의 계승을 계산한 다음 계산된 계승의 자릿수의 합계를 반환해야 합니다. 예를 들어 - 숫자 6의 경우 계승은 720이므로 출력은 9가 되어야 합니다. 예시 const factorial = (num) => { if (num == 1) return 1; return num * factorial(num-1); }; const sumOfDigits = (num = 1) => {
숫자 배열을 받는 JavaScript 함수를 작성해야 합니다. 함수는 다음 기준에 따라 숫자 배열을 정렬해야 합니다. - ---배열에 0이 포함되어 있으면 모두 처음에 나타나야 합니다. ---나머지 모든 숫자는 내림차순으로 배치해야 합니다. 예를 들어 - 입력 배열이 -인 경우 const arr = [4, 7, 0 ,3, 5, 1, 0]; 그런 다음 정렬을 적용한 후 배열은 -가 되어야 합니다. const output = [0, 0, 7, 5, 4, 3, 1]; 여기서는 Array.prototype.sort() 메서드를