# 코드카타

[TIL] # 33 코드카타 1주차
target으로 보내는 합계의 조합은 배열 전체 중에 2개 밖에 없다고 가정하겠습니다.for 문을 두번쓰게 되면 쉽게 풀리는 문제이긴 하지만, 그렇게 되면 시간복잡도가 O(N^2)이 되기 때문에 dictionary를 이용해서 풀이를 진행 첫 코드카타 문제였는데, 20분
TIL 29, 코드카타: 같은 알파벳으로 이루어진 단어
공유오피스로 출근하는 시간 전체를 잡아먹었던, 꽤나 고민했던 코드카타. 기억에 남아, 남겨본다.
[자바스크립트 알고리즘] 로마자에서 숫자로 바꾸기
1~3999 사이의 로마자 s를 인자로 주면 그에 해당하는 숫자를 반환해주세요.로마 숫자를 숫자로 표기하면 다음과 같습니다.Symbol: ValueI: 1V: 5X: 10L: 50C: 100D: 500M: 1000로마자를 숫자로 읽는 방법은 로마자를 왼쪽부터 차례대로
[자바스크립트 알고리즘] 여러 개의 문자열 원소를 확인하고, 공통된 시작단어 반환하기
`Array.prototype.every()`는 배열 안의 모든 요소가 주어진 판별 함수를 통과하는지 테스트하여 `true` 또는 `false`를 반환하는 메서드다.
[자바스크립트 알고리즘] 숫자인 num을 인자로 넘겨주면, 뒤집은 모양이 num과 똑같은지 여부 반환하기
숫자인 num을 인자로 넘겨주면, 뒤집은 모양이 num과 똑같은지 여부를 반환해주세요.num: 숫자return: true or false (뒤집은 모양이 num와 똑같은지 여부)예를 들어,num = 123return false => 뒤집은 모양이 321 이기 때문num
[자바스크립트 알고리즘] 숫자배열과 '특정 수'를 인자로 넘기면, 더해서 '특정 수'가 나오는 index 배열 리턴하기
twoSum함수에 숫자배열과 '특정 수'를 인자로 넘기면,더해서 '특정 수'가 나오는 index를 배열에 담아 return해 주세요.nums: 숫자 배열target: 두 수를 더해서 나올 수 있는 합계return: 두 수의 index를 가진 숫자 배열예를 들어,nums

CodeKata 23
이전에 재귀에 대해 이미 배운바 있습니다.오늘은 재귀를 사용해서 문제를 풀어주세요.str 이라는 'string'을 넘겨주면 글자순서를 바꿔서 return해주세요.reverse 메서드 사용은 당연히 금지입니다!\*힌트아래의 코드가 어색한 것은 아니겠죠?(함수의 retur

CodeKata 22
버블정렬(Bubble Sort)버블 정렬은 인접한 데이터를 교환해서 정렬하는 알고리즘입니다.알고리즘의 정렬되는 모습이 마치 거품처럼 보인다고 해서 붙여진 이름입니다.

CodeKata 21
Selection Sort(선택정렬)정렬 알고리즘은 순서가 없던 데이터를 순서대로 바꾸어 나열하는 알고리즘입니다.정렬을 하는 방법은 여러가지가 있는데, 그 중에 유명한 알고리즘은 아래 4가 있습니다.

CodeKata 20
이진탐색을 배우기 전에 선형탐색(Linear Search)먼저 보겠습니다.위의 배열에서 요소가 8인것을 찾으려면 어떻게 해야할까요?index 0에서부터 5까지 차례대로 요소를 확인하면서 8이 나올 때까지 for 문을 돌리면 됩니다.

CodeKata 19
숫자로 이루어진 리스트 nums를 인자로 주면,그 안에서 어떤 연속적인 요소를 더했을 때 가장 큰 값이 나오나요?가장 큰 값을 찾아 return해주세요.

CodeKata 18
두 개의 input에 복소수(complex number)가 string 으로 주어집니다.복소수란 a+bi 의 형태로, 실수와 허수로 이루어진 수입니다.input으로 받은 두 수를 곱해서 반환해주세요.반환하는 표현도 복소수 형태의 string 이어야 합니다.

CodeKata 17
다음과 같이 input이 주어졌을 때,같은 알파벳으로 이루어진 단어끼리 묶어주세요.output에서 순서는 상관없습니다.key, value 선언하는 것이 아직 익숙하지 않은 것 같다!

CodeKata 16
prices는 배열이며, 각 요소는 매일의 주식 가격입니다.만약 한 번만 거래할 수 있다면 = 사고 팔 수 있다면, 제일 큰 이익은 얼마일까요?

CodeKata 15
양수 N을 이진법으로 바꿨을 때, 연속으로 이어지는 0 중에서 가장 큰 값을 return해 주세요.이어지는 0은 1과 1사이에 있는 것을 의미합니다.1과 1사이에 있는 0을 binary gap 이라고 하겠습니다.

CodeKata 14
오늘은 재귀알고리즘에 대한 문제입니다.재귀(recursion)란, 자신을 정의할 때 자기 자신을 호출하는 방법을 뜻합니다. 프로그래밍의 함수정의에서 많이 사용됩니다.

CodeKata 13
주어진 숫자 배열에서, 0을 배열의 마지막쪽으로 이동시켜주세요. 원래 있던 숫자의 순서는 바꾸지 말아주세요. 새로운 배열을 생성해서는 안 됩니다.

CodeKata 12
양수로 이루어진 m x n 그리드를 인자로 드립니다.상단 왼쪽에서 시작하여, 하단 오른쪽까지 가는 길의 요소를 다 더했을 때,가장 작은 합을 찾아서 return 해주세요.한 지점에서 우측이나 아래로만 이동할 수 있습니다.