Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript

  1. JavaScript로 알파벳 글자의 고리(반지) 개수 세기

    문제 영어 알파벳으로 구성된 문자열을 입력받아, 그 안에 포함된 고리(ring)의 총 개수를 세는 JavaScript 함수를 작성해야 합니다. 여기서 말하는 고리란 글자 모양에 있는 동그란 부분을 의미합니다. 예를 들어 O, A, D, P, Q, R, a, b, d, e, g, o, p, q와 같은 글자는 각각 하나의 고리를 가지며, B는 두 개의 고리를 가집니다. 예시 코드 다음은 해당 문제를 해결하는 코드입니다 − const str = some random text string; function countRings(

  2. JavaScript로 인접한 문자 쌍이 모두 다르도록 만드는 최소 제거 횟수 구하기

    문제 정의문자열 A, B, C 세 종류의 문자만으로 구성된 문자열이 주어졌을 때, 인접한 두 문자가 서로 같지 않도록 만들기 위해 제거해야 하는 문자의 최소 개수를 구하는 JavaScript 함수를 작성해야 합니다.예를 들어 ABBABCCABAA라는 문자열에서 연속으로 반복되는 문자(BB, CC, AA)를 적절히 제거하면, 모든 인접 문자 쌍이 서로 다른 상태가 됩니다.접근 방법가장 직관적인 해결 방법은 문자열을 처음부터 끝까지 순회하면서 현재 문자와 바로 다음 문자가 같은 경우 해당 문자 하나를 제거하고 카운트를 증가시키는 것입니

  3. JavaScript로 배열에서 세 번째로 작은 숫자 구하는 방법

    이번 글에서는 JavaScript를 활용해 배열에서 세 번째로 작은 숫자를 찾는 방법을 알아보겠습니다.문제 정의길이가 최소 3 이상인 숫자 배열을 입력으로 받는 JavaScript 함수를 작성해야 합니다.이 함수는 배열에서 세 번째로 작은 숫자를 반환해야 합니다.해결 접근 방식가장 직관적인 방법은 다음과 같습니다.원본 배열을 변경하지 않도록 복사본을 만듭니다.복사본에서 가장 작은 값을 두 차례에 걸쳐 제거합니다.남은 배열의 최솟값이 곧 세 번째로 작은 숫자가 됩니다.예제 코드다음은 위 로직을 구현한 코드입니다.const arr =

  4. JavaScript로 사용자 이름에 맞는 개인화된 인사 메시지 반환하기

    이 글에서는 두 개의 문자열을 입력받아 사용자에게 맞춤형 인사말을 반환하는 JavaScript 함수를 작성하는 방법을 알아봅니다.문제 정의두 개의 문자열을 매개변수로 받는 JavaScript 함수를 작성해야 합니다. 첫 번째 문자열은 사용자 이름(name)을, 두 번째 문자열은 소유자 이름(owner)을 나타냅니다.함수가 따라야 할 규칙은 다음과 같습니다.사용자 이름과 소유자 이름이 서로 같다면 Hello master를 반환합니다.두 이름이 다르다면 Hello 뒤에 해당 사용자의 이름을 붙여 반환합니다.예제 코드다음은 위 요구 사항

  5. JavaScript로 수식 문자열을 영어 단어로 변환하는 방법

    문제 개요수학 연산식이 담긴 문자열(예: 5 - 8)을 입력받아, 해당 식의 의미를 사람이 읽기 쉬운 영어 단어 형태인 Five Minus Eight로 반환하는 JavaScript 함수를 작성해야 합니다.접근 방법이 문제는 세 가지 단계로 나누어 해결할 수 있습니다.첫째, 각 연산자 기호와 대응되는 영어 표현을 담은 객체를 만듭니다. 둘째, 숫자 1부터 10까지를 영어 단어로 매핑한 객체를 준비합니다. 셋째, 입력 문자열을 공백 기준으로 분리한 뒤 왼쪽 피연산자, 연산자, 오른쪽 피연산자 순서로 단어를 조합합니다.연산자 매핑 목록+

  6. JavaScript로 문자열 내 단어를 검열·마스킹하는 방법

    문제 정의이번 글에서는 하나의 문자열을 입력받아 특정 규칙에 따라 변환된 결과를 반환하는 JavaScript 함수를 작성해 보겠습니다.함수가 문자열을 변환할 때 적용해야 할 규칙은 다음과 같습니다.모든 단어는 대문자로 변환합니다.모든 단어 뒤에는 !!!!를 붙입니다.알파벳 a 또는 A는 @로 바꿉니다.그 외의 모든 모음(E, I, O, U)은 *로 바꿉니다.구현 예시위 규칙을 적용한 코드는 아래와 같습니다.const str = ban censored words; const maskWords = (str = ) => {

  7. JavaScript로 문자열의 모음과 자음 이동시키기

    문제 상황영어 알파벳으로 이루어진 문자열을 입력받는 JavaScript 함수를 작성해야 합니다. 이 함수는 새로운 문자열을 만들어야 하는데, 규칙은 다음과 같습니다.모든 자음은 알파벳 순서상 9칸 앞으로 이동합니다. z를 넘어가면 다시 a부터 시작합니다.모든 모음(a, e, i, o, u)은 5칸 앞으로 이동합니다.예를 들어 sample string이라는 입력이 주어지면, 각 글자가 위 규칙에 따라 변환된 결과가 출력되어야 합니다.해결 코드다음은 이 문제를 해결하는 코드입니다.const str = sample string; cons

  8. JavaScript로 숫자 배열을 알파벳 문자열로 변환하는 방법

    문제숫자 배열을 인수로 받아 네 부분으로 구성된 하나의 문자열을 반환하는 JavaScript 함수를 작성해야 합니다. 반환되는 문자열의 각 부분은 다음과 같습니다.배열의 첫 번째, 두 번째, 뒤에서 두 번째, 마지막 숫자에 해당하는 ASCII 문자로 이루어진 4글자 단어. 순서는 왼쪽에서 오른쪽으로 읽는 순서를 그대로 따릅니다.위와 동일하되, 배열을 오름차순으로 정렬한 후 적용한 결과위와 동일하되, 배열을 내림차순으로 정렬한 후 적용한 결과위와 동일하되, 배열을 ASCII 문자로 변환한 뒤 알파벳순으로 정렬하여 적용한 결과이 네 부

  9. JavaScript로 N×N 나선형 이진 배열 만들기 — 완벽 가이드

    알고리즘 문제를 풀다 보면 2차원 배열을 나선형(spiral) 형태로 채워야 하는 경우가 자주 등장합니다. 이번 글에서는 숫자 n을 입력받아 n×n 크기의 2차원 배열을 생성하고, 나선형 경로에 해당하는 위치에는 1을, 그 외의 위치에는 0을 채우는 JavaScript 함수를 구현해 보겠습니다.문제 정의하나의 숫자 n을 매개변수로 받는 JavaScript 함수를 작성해야 합니다. 이 함수는 n×n 크기의 2차원 배열을 만들어 반환하며, 시작점 [0, 0]에서 출발하는 나선형 경로의 모든 위치는 1로, 나머지 위치는 0으로 채워야 합

  10. JavaScript로 목표 평균을 만들기 위해 배열에 추가해야 할 숫자 구하기

    문제 소개숫자 배열과 하나의 숫자를 입력받는 JavaScript 함수를 작성해야 합니다. 이 함수가 해결해야 할 과제는, 배열에 추가했을 때 전체 배열의 평균이 두 번째 인수로 지정한 목표 값과 정확히 일치하도록 만드는 숫자를 찾아 반환하는 것입니다.예를 들어 배열 [4, 20, 25, 17, 9, 11, 15]의 현재 평균은 약 14.43입니다. 여기에 목표 평균을 25로 만들려면 어떤 숫자를 추가해야 할까요? 아래 코드가 바로 그 답을 계산해 줍니다.예제 코드const arr = [4, 20, 25, 17, 9, 11, 15];

  11. JavaScript로 배열에서 인접한 두 요소의 최대 곱 구하기

    문제 개요 숫자로 구성된 배열을 입력받는 JavaScript 함수를 작성해야 합니다. 이 함수는 배열 안에서 인접한 두 숫자를 곱했을 때 얻을 수 있는 최댓값(최대 곱)을 찾아 반환해야 합니다. 예제 코드 다음은 이 문제를 해결하는 전체 코드입니다 − const arr = [9, 5, 10, 2, 24, -1, -48]; function adjacentElementsProduct(array) {     let maxProduct = array[0] * array[1];  &

  12. JavaScript로 둘레가 가장 가까운 '거의 이등변 삼각형' 찾기

    거의 이등변 삼각형이란?거의 이등변 정수 삼각형(Almost Isosceles Integer Triangle)은 세 변의 길이가 모두 정수이면서, 두 변의 길이 차이가 정확히 1인 특수한 삼각형입니다. 이름 그대로 이등변 삼각형에 매우 가깝지만 완전히 같지는 않은 형태를 띱니다.문제 정의목표 둘레를 나타내는 숫자 하나를 인수로 받는 JavaScript 함수를 작성해야 합니다.이 함수는 입력된 둘레 값보다 크지 않으면서 그 값에 가장 근접한 둘레를 가진 거의 이등변 삼각형의 세 변 길이를 찾아 반환해야 합니다.예를 들어 원하는 둘레가

  13. JavaScript로 배열 요소 합계의 짝수·홀수 판별하기

    이 글에서는 JavaScript를 사용해 배열에 담긴 모든 정수의 합을 구하고, 그 합이 짝수인지 홀수인지 판별하는 방법을 알아봅니다. 문제 정의 정수 배열 arr을 인자로 받는 JavaScript 함수를 작성해야 합니다. 이 함수는 배열의 모든 요소를 더한 합계가 홀수이면 문자열 odd를, 짝수이면 even을 반환해야 합니다. 해결 접근 방식 배열의 합계를 구할 때는 reduce() 메서드가 가장 간결하고 효율적입니다. reduce()는 배열의 각 요소를 순회하며 누적값(accumulator)에 현재값(current value)을

  14. JavaScript에서 배열의 모든 0을 맨 뒤로 이동하는 방법

    문제 숫자 리터럴로 이루어진 배열을 입력받는 JavaScript 함수를 작성해야 합니다. 이 배열에는 하나 이상의 0이 포함되어 있을 수 있습니다. 함수는 배열을 조작하여 모든 0을 배열의 맨 뒤로 밀어내고, 0이 아닌 나머지 요소들은 기존의 상대적인 순서를 그대로 유지한 채 앞쪽에 배치해야 합니다. 예제 다음은 전체 코드입니다 − const arr = [5, 0, 1, 0, -3, 0, 4, 6]; const moveAllZero = (arr = []) => {    const res = [];

  15. JavaScript로 n쌍의 균형 잡힌 괄호 조합 모두 생성하기

    문제 정의 숫자 n을 입력받으면, n쌍의 괄호를 균형 있게 배치하는 모든 경우의 수를 배열 형태로 반환하는 JavaScript 함수를 작성해야 합니다. 예를 들어 n = 3이라면, 유효한 괄호 조합은 총 5가지이며 출력 결과는 다음과 같습니다. [()()(), (())(), ()(()), (()()), ((()))] 접근 방법: 재귀와 백트래킹 이 문제는 백트래킹(backtracking) 기법으로 효율적으로 해결할 수 있습니다. 핵심 아이디어는 다음과 같습니다. 여는 괄호는 아직 사용할 개수(left)가 남아 있다면 언제든 추가

  16. JavaScript로 두 배열 사이의 누락된 숫자 찾는 방법

    문제 설명두 개의 배열 arr1과 arr2를 인수로 받는 JavaScript 함수를 작성해야 합니다.arr2는 arr1의 모든 요소를 포함하되 순서만 무작위로 섞인 복사본이며, 단 하나의 요소가 빠져 있습니다.따라서 우리가 만들 함수는 바로 이 누락된 요소 하나를 찾아 반환해야 합니다.접근 방법두 배열을 정렬한 뒤 한 요소씩 비교하는 방법도 가능하지만, 정렬 과정 때문에 시간 복잡도가 O(n log n)까지 늘어납니다. 또한 합계나 XOR을 이용한 방식은 중복 값이 없을 때만 유효합니다. 이 문제처럼 중복 요소(예: 두 개의 6)가

  17. JavaScript에서 값이 증가할 때 가장 큰 인덱스 차이 구하는 방법

    문제 설명숫자로 이루어진 배열 arr을 입력받는 JavaScript 함수를 작성해야 합니다. 이 함수는 arr[i] <= arr[j] 조건을 만족하는 모든 인덱스 쌍 중에서, 인덱스 차이 j - i가 가장 큰 값을 반환해야 합니다.즉, 뒤에 있는 요소가 앞에 있는 요소보다 크거나 같을 때 두 인덱스 사이의 거리가 최대한 멀어지는 경우를 찾는 것입니다.접근 방법가장 직관적인 해결 방법은 이중 반복문을 활용하는 것입니다. 바깥쪽 반복문으로 시작 인덱스 i를 순회하고, 안쪽 반복문으로 비교 인덱스 j를 순회하면서 조건을 만족하는 경

  18. JavaScript – 배열의 모든 단어가 서로 맞물릴 수 있는지 확인하는 방법

    문제 개요두 단어는 첫 번째 단어의 끝부분(접미사)이 두 번째 단어의 시작부분(접두사)과 일치할 때 서로 맞물릴(mesh) 수 있습니다. 예를 들어 robinhood와 hoodie는 공통 부분인 hood를 통해 맞물릴 수 있습니다.우리는 문자열 배열을 인수로 받는 JavaScript 함수를 작성해야 합니다. 배열에 담긴 모든 단어가 순서대로 맞물릴 수 있다면 함수는 맞물린 글자들을 하나의 문자열로 이어서 반환하고, 하나라도 맞물리지 않는 단어가 있다면 빈 문자열()을 반환해야 합니다.예제다음은 해당 기능을 구현한 코드입니다 &min

  19. JavaScript 배열에서 양수만 골라 합계 구하기

    문제 양수와 음수가 섞여 있는 숫자 배열을 인자로 받아, 배열에 포함된 모든 양수의 합을 계산한 뒤 반환하는 JavaScript 함수를 작성해야 합니다. 예제 다음은 전체 코드입니다 − const arr = [5, -5, -3, -5, -7, -8, 1, 9]; const sumPositives = (arr = []) => {     const isPositive = num => typeof num === 'number' && num > 0;   &

  20. JavaScript로 문자열에서 구두점·특수문자 깔끔하게 제거하는 방법

    문제 개요 문자열을 입력받아 구두점 등 특수 문자와 공백을 모두 제거한 뒤, 알파벳과 숫자만 남긴 새로운 문자열을 반환하는 JavaScript 함수를 작성해 보겠습니다. 입력 예시 const str = th@is Str!ing Contains 3% punctuations; 출력 예시 const output = thisStringContains3punctuations; @, !, % 와 같은 특수 기호와 공백이 모두 제거되어 알파벳과 숫자만 남게 됩니다. 방법 1: 반복문으로 한 글자씩 검사하기 가장 직관적인 접근 방식은 문자

Total 5929 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:21/297  20-컴퓨터/Page Goto:1 15 16 17 18 19 20 21 22 23 24 25 26 27