⚡문제정보 중복없는 문자열의 최대 길이를 찾으면 되는 문제입니다. 🔍접근방법 Map이나 set을 사용해서 중복을 마주치는 순간 길이를 저장하면 되지 않을까? 🔍나의 실패한 풀이 var lengthOfLongestSubstring = function(s) { let map = new Map() let count = 0 let answer = 0 if(s.length == 1) return 1 for(i=0 ; i 1) { if(count > answer) { answer = count -1 } map.clear() map.set(s[i] , 1) count = 1 } } return answer }; 이렇게 코드를 짜니까 한번도 중복이 없는 경우나 중복을 만나지 않은 맨 끝 케이스가 제일 길경우 if문에 ..
⚡문제정보 정수로 이루어진 배열 nums가 주어집니다. nums는 1번만 등장하는 숫자 혹은 2번 등장하는 숫자 두가지 패턴으로만 이루어져있는데 2번 등장한 숫자만 담은 배열을 리턴하는 문제입니다. 다만 제한조건이 O(n)으로 제한되어있습니다. 미디엄 문제 치고는 쉽게 풀 수 있네요 🔍접근방법 Map 자료구조를 이용한다. 값은 1번 혹은 2번만 등장하니까 순회하면서 카운트가 2가 되는 순간 정답 배열에 바로 push해준다. 🔍나의 풀이 var findDuplicates = function(nums) { let map = new Map() let answer = [] for( num of nums) { map.set(num, (map.get(num)||0)+1 ) if(map.get(num) > 1) { ..
⚡문제정보 생각나서 한번 재미로 풀어본 문제입니다. 이제... 프로그래머스에는 제가 풀 수 있는 문제가 없어서 리트코드로 공부한다음 프로그래머스 2레벨에 도전해보려구요 근데 이건 쉽게 풀 수 있음 당연함 easy임 🙄문제설명 영어 소문자,대문자로 구성된 문자열이 주어집니다. 그 문자열로 만들 수 있는 펠린드롬(앞뒤가똑같은문자)의 최대길이를 리턴하세요 🔍접근방법 회문이 되려면 짝수개의 같은 문자가 필요합니다. 하지만 회문의 정가운데 만큼은 1개의 문자도 존재할 수 있습니다. 따라서 map 자료구조를 이용해 각 문자의 등장횟수를 세어주고 map의 밸류값을 기반으로 짝수면 더해주고 홀수면 -1을 빼서 더해주면 될 것 같았습니다 만약 홀수면서 값이 1이라면 -1을 뺐을때 0이되니 아무일도 일어나지않고 그건 제가..
문제링크 https://leetcode.com/problems/plus-one/ Plus One - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제정보 정수로 이루어진 배열 digits이 매개변수로 주어집니다. digits[i]는 각각 정수의 자릿수를 의미하며 숫자는 왼쪽에서 오른쪽 순서로 정렬됩니다. 마지막 배열에 1을 더하고 결과를 정수로 이루어진 배열 형태로 반환합니다. 예시 Input: digits = [9] Output: [1,0] Explanati..
문제링크 https://leetcode.com/problems/roman-to-integer/ Roman to Integer - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제정보 로마자로 구성된 문자열 s가 매개변수로 주어집니다. 각 로마자에 대응되는 value를 기반으로 로마자를 정수로 변환하여 리턴합니다. 로마자는 큰것에서 작은것 순으로 표기하지만 작은수가 큰수보다 앞에 있는 경우 작은수는 뺄셈으로 작용합니다. ex : IV = 5 - 1 = 4 Sym..
문제링크 https://leetcode.com/problems/keyboard-row/ Keyboard Row - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제정보 요소가 문자열로 이루어진 배열 words가 주어집니다. 각 요소가 키보드 한줄로 칠 수 있는 경우 그 요소를 담은 배열을 리턴해주세요 the first row consists of the characters "qwertyuiop", the second row consists of the char..
문제링크 https://leetcode.com/problems/power-of-two/ Power of Two - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제정보 정수 n이 매개변수로 주어집니다. n이 만약 2의 거듭제곱수라면 true를 아니라면 false를 반환하세요. var isPowerOfTwo = function(n) { return (Math.log2(n) % 1 === 0); }; Math.log2()는 세퍼레이터를 진수로하고 2를 밑으로하는 ..
문제링크 https://leetcode.com/problems/find-first-and-last-position-of-element-in-sorted-array/ Find First and Last Position of Element in Sorted Array - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제정보 내림차순으로 정렬된 정수 요소로 이루어진 배열과 정수 target이 매개변수로 주어집니다. 배열에서 target값을 가진 index를 찾을 수..