all is well!!
👀 검색? 1. 자료를 얻기 위해 자료 구조의 항목들을 반복적으로 접근하는 것 2. 배열이 정렬되었는지 여부에 따라 선형 검색과 이진 검색을 할 수 있다. 🟣 선형 검색 1. 배열의 각 항목을 한 인덱스씩 순차적으로 접근하면서 동작. 2. 정렬되어 있지 않은 배열에도 사용 가능하기 때문에 유연하다. 3. 하지만 최악의 경우 배열의 모든 항목을 확인해야 되기 때문에 시간 복잡도가 이진 검색에 비해 높다. function linearSearch(array,n){ for(var i=0; i

😇 문제 🙏 답 function solution(nums) { let numA = new Set(nums); let newNums = new Set(); for(let elem of nums){ newNums.add(elem) } let length = Array.from(newNums).length; let halfOfNums = nums.length/2; if(length>halfOfNums){ return halfOfNums; } else return length; console.log(length) console.log(Array.from(length).length) console.log(nums.length/2) } 오늘 공부하고 정리한 집합 알고리즘을 이용하는 유명한(?) 문제라고 해서 도전했..
👀 집합? 1. 항목이 유일한지 확인할때 필요한 강력한 자료 구조중 하나. 3. 유한하고 구분되는 객체들의 그룹.(정렬되지 않고 중복되지 않는 항목들의 그룹). 4. 집합은 해시 테이블의 구현을 기초로 하기때문에 O(1)상수 시간에 유일한 항목을 확인하고 추가할 수 있다. 🟣 배열과 어떻게 다른가요? 1. 배열은 각 요소가 정수 인덱스를 가지고 있기때문에 순서가 유지되고 중복된 값을 포함할 수 있는 자료 구조 2. Set 객체는 중복되지 않은 고유한 값을 저장하기 때문에 순서가 중요하지 않고 중복된 값은 허용하지 않는다. 👀 JS의 Set 객체 js에서는 set(집합)을 기본 지원한다. var exampleSet = new Set(); 기본 set 객체에는 집합 내 항목들의 현재 개수를 나타내..

😇 문제 🙏 답 답변들을 보니까 난 좀 무식하게 푼것같다..ㅠㅠㅋㅋ 수포자는 어쩔수없나봐..🥲 창의력 꽝 아직도 왜 다들 %26해주는지 완벽하게 이해도 못했구요~ 처음 테스트코드 3번 다 통과되길래 끝났다..!했는데 실제 채점하니 한개빼고 줄줄이 실패ㅠㅠㅋㅋㅋㅋ 문의하기에서 더 생각해야 될 부분들을 발견했다. 1. n만큼 밀린값이 소문자기준 90보다 크고 대문자기준 122보다 크면 123-122 이 차이만큼 97에 더해준다. 2. 65와 86사이의 값에서 n을 더하면 97이상이 될 수 있다는걸 고려한다. 요 기준들에 맞는 테스트코드도 만들어서 통과하니까 드디어 통과됐다..! //1. 문자열 s의 아스키코드를 구한다. v //2. 밀어야되는 거리수치인 n만큼 아스키코드에서 각각 더해준다. v //3. 각각..

😇 문제 🙏 답 1. replace + 정규식을 이용한 풀이 정규표현식 g : 발생할 모든 패턴에 대한 전역검색 정규표현식 i : 대소문자 구분x function solution(s) { const number = s .replace(/zero/gi, '0') .replace(/one/gi, '1') .replace(/two/gi, '2') .replace(/three/gi, '3') .replace(/four/gi, '4') .replace(/five/gi, '5') .replace(/six/gi, '6') .replace(/seven/gi, '7') .replace(/eight/gi, '8') .replace(/nine/gi, '9'); return Number(number); } * replace(..

😇 문제 🙏 답 function solution(nums) { var count = 0; for(let i=0; i

😇 문제 🙏 답 function solution(s) { let a = []; let A = []; var answer = ''; for(let i=0; i

😇 문제 🙏 답 function solution(strings, n) { strings.sort(function(a,b){ let first = a[n]; let second = b[n]; if(first == second){ return (a>b) - (asecond) - (first0, 양수입니다. 결과값이 양수이므로 또 10과 9의 순서를 바꿉니다. 이런 식으로 계속 두 인자를 비교해서 결과값이 양수가 나오면 순서를 바꾸고, 음수가 나오면 순서를 그대로 유지하는 겁니다. 배열이 바뀌어가는 순서를 보면 이해하기 쉽습니다. [(20), (10), 9,8,7,6,5,4,3,2,1] 20-10 = 10, 즉 양수이므로 순서바뀜! ()는 비교되는 인자값. [(10), 20, (9),8,7,6,5,4,3,2,..