알고리즘/leetCode 2022. 8. 23.
[leetCode] 169. Majority Element (Easy) 풀이
❓ 문제 Given an array nums of size n, return the majority element. 크기가 n인 배열 개수가 주어지면 가장 많은 요소를 반환하세요. The majority element is the element that appears more than ⌊n / 2⌋ times. You may assume that the majority element always exists in the array. 가장 많은 요소는 ⌊n / 2⌋번 이상 나타나는 요소입니다. 가장 많은 요소가 항상 배열에 존재한다고 가정할 수 있습니다. Example 1: Input: nums = [3,2,3] Output: 3 Example 2: Input: nums = [2,2,1,1,1,2,2] O..
알고리즘/leetCode 2022. 8. 17.
[leetCode] 136. Single Number (Easy) 풀이
❓ 문제 Given a non-empty array of integers nums, every element appears twice except for one. Find that single one. 비어 있지 않은 정수 배열이 주어지면 모든 요소는 하나를 제외하고 두 번 나타납니다. 그 하나를 찾으십시오. You must implement a solution with a linear runtime complexity and use only constant extra space. 선형 런타임 복잡성이 있는 솔루션을 구현하고 일정한 추가 공간만 사용해야 합니다. Example 1: Input: nums = [2,2,1] Output: 1 Example 2: Input: nums = [4,1,2,1,2] ..
알고리즘/leetCode 2022. 7. 25.
[leetCode] 69. Sqrt(x) (Easy) 풀이
❓ 문제 Given a non-negative integer x, compute and return the square root of x. 음이 아닌 정수 x가 주어지면 x의 제곱근을 계산하고 반환합니다. Since the return type is an integer, the decimal digits are truncated, and only the integer part of the result is returned. 리턴 타입이 정수이기 때문에 소수점 이하 자릿수는 잘리고 결과의 정수 부분만 리턴됩니다. Note: You are not allowed to use any built-in exponent function or operator, such as pow(x, 0.5) or x ** 0.5...
알고리즘/leetCode 2022. 7. 19.
[leetCode] 67. Add Binary (Easy) 풀이
❓ 문제 Given two binary strings a and b, return their sum as a binary string. 두 개의 이진 문자열 a와 b가 주어지면 그 합을 이진 문자열로 반환합니다. Example 1: Input: a = "11", b = "1" Output: "100" Example 2: Input: a = "1010", b = "1011" Output: "10101" ❗ 내 답변 /** * @param {string} a * @param {string} b * @return {string} */ var addBinary = function(a, b) { const digitA = getDigit(a); const digitB = getDigit(b); const digi..
알고리즘/leetCode 2022. 7. 14.
[leetCode] 66. Plus One (Easy) 풀이
❓ 문제 You are given a large integer represented as an integer array digits, where each digits[i] is the ith digit of the integer. 정수 배열 자릿수로 표현되는 큰 정수가 주어집니다. 여기서 각 자릿수[i]는 정수의 i번째 자릿수입니다. The digits are ordered from most significant to least significant in left-to-right order. The large integer does not contain any leading 0's. 숫자는 왼쪽에서 오른쪽 순서로 최상위에서 최하위 순으로 정렬됩니다. 큰 정수에는 선행 0이 포함되지 않습니다. Increm..
알고리즘/leetCode 2022. 7. 13.
[leetCode] 58. Length of Last Word (Easy) 풀이
❓ 문제 Given a string s consisting of words and spaces, return the length of the last word in the string. 단어와 공백으로 구성된 문자열 s가 주어지면 문자열의 마지막 단어 길이를 반환합니다. A word is a maximal substring consisting of non-space characters only. 단어는 공백이 아닌 문자로만 구성된 최대 부분 문자열입니다. Example 1 Input: s = "Hello World" Output: 5 Explanation: The last word is "World" with length 5. Example 2 Input: s = " fly me to the moon "..
알고리즘/leetCode 2022. 7. 12.
[leetCode] 35. Search Insert Position (Easy) 풀이
❓ 문제 Given a sorted array of distinct integers and a target value, return the index if the target is found. If not, return the index where it would be if it were inserted in order. 고유한 정수의 정렬된 배열과 대상 값이 주어지면 대상이 발견되면 인덱스를 반환합니다. 그렇지 않은 경우 순서대로 삽입된 경우 인덱스를 반환합니다. You must write an algorithm with O(log n) runtime complexity. 런타임 복잡도가 'O(log n)'인 알고리즘을 작성해야 합니다. Example 1 Input: nums = [1,3,5,6], t..
알고리즘/leetCode 2022. 6. 28.
[leetCode] 28. Implement strStr() (Easy) 풀이
❓ 문제 Implement strStr(). strStr()을 구현합니다. Given two strings needle and haystack, return the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack. 두 개의 문자열 needle과 haystack이 주어지면 haystack에서 needle이 처음 나타나는 색인을 반환하거나 needle이 haystack의 일부가 아닌 경우 -1을 반환합니다. Clarification: What should we return when needle is an empty string? This is a great question to ask dur..
알고리즘/leetCode 2022. 6. 27.
[leetCode] 27. Remove Element (Easy) 풀이
❓ 문제 Given an integer array nums and an integer val, remove all occurrences of val in nums in-place. The relative order of the elements may be changed. 정수 배열 nums와 정수 val이 주어지면 nums에서 val의 모든 항목을 제자리에서 제거합니다. 요소의 상대적 순서는 변경될 수 있습니다. Since it is impossible to change the length of the array in some languages, you must instead have the result be placed in the first part of the array nums. More form..
알고리즘/leetCode 2022. 6. 27.
[leetCode] 26. Remove Duplicates from Sorted Array (Easy) 풀이
❓ 문제 Given an integer array nums sorted in non-decreasing order, remove the duplicates in-place such that each unique element appears only once. The relative order of the elements should be kept the same. 내림차순으로 정렬된 정수 배열 nums가 주어지면 각 고유 요소가 한 번만 나타나도록 중복을 제자리에서 제거합니다. 요소의 상대적 순서는 동일하게 유지되어야 합니다. Since it is impossible to change the length of the array in some languages, you must instead have th..
알고리즘/leetCode 2022. 5. 9.
[leetCode] 21. Merge Two Sorted Lists (Easy) 풀이
❓ 문제 You are given the heads of two sorted linked lists list1 and list2. Merge the two lists in a one sorted list. The list should be made by splicing together the nodes of the first two lists. Return the head of the merged linked list. 정렬된 두 개의 링크 리스트 list1과 list2의 헤드가 제공됩니다. 두 리스트를 하나의 정렬된 리스트로 병합하세요. 리스트는 처음 두 리스트의 노드를 연결하여 만들어야 합니다. 병합된 링크 리스트의 헤드를 반환하세요. Example 1 Input: list1 = [1,2,4], li..
알고리즘/leetCode 2022. 3. 8.
[leetCode] 20. Valid Parentheses (Easy) 풀이
❓ 문제 Given a string s containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid. An input string is valid if: Open brackets must be closed by the same type of brackets. Open brackets must be closed in the correct order. '(', ')', '{', '}', '[' 그리고 ']' 로 이루어진 주어진 문자열이 유효한지 알아내세요. 문자열이 유효한 경우: 열린 괄호가 닫힌 괄호와 모양이 일치해야합니다. 열리 괄호는 올바를 순서로 닫혀야합니다. Example 1 ..
알고리즘/leetCode 2022. 3. 7.
[leetCode] 14. Longest Common Prefix (Easy) 풀이
❓ 문제 Write a function to find the longest common prefix string amongst an array of strings. If there is no common prefix, return an empty string "". 문자열 배열 중에서 가장 긴 공통 접두어를 찾는 함수를 작성하세요 만약 공통 접두어가 없다면, 빈 문자열 ""을 반환시키세요. Example1 Input: strs = ["flower","flow","flight"] Output: "fl" Example2 Input: strs = ["dog","racecar","car"] Output: "" Explanation: There is no common prefix among the input st..
알고리즘/leetCode 2022. 3. 4.
[leetCode] 13. Roman to Integer (Easy) 풀이
❓ 문제 Roman numerals are represented by seven different symbols: I, V, X, L, C, D and M. 로마 숫자는 7개의 다른 기호로 표시됩니다.: I, V, X, L, C, D 그리고 'M'. Symbol Value I 1 V 5 X 10 L 50 C 100 D 500 M 1000 For example, 2 is written as II in Roman numeral, just two one's added together. 12 is written as XII, which is simply X + II. The number 27 is written as XXVII, which is XX + V + II. 예를 들어, 2는 로마 숫자로 II로 표기되..
알고리즘/leetCode 2022. 3. 2.
[leetCode] 9. Palindrome Number (Easy) 풀이
❓ 문제 Given an integer x, return true if x is palindrome integer. An integer is a palindrome when it reads the same backward as forward. For example, 121 is a palindrome while 123 is not. 주어진 정수형 x 가 회문(역순으로 읽어도 같은 말이나 구절 또는 숫자)이면 true를 반환하세요. 예를 들어, 121은 회문이고, 123은 회문이 아닌 것입니다. Example 1 Input: x = 121 Output: true Explanation: 121 reads as 121 from left to right and from right to left. Example ..
알고리즘/leetCode 2022. 2. 25.
[leetCode] 1. Two Sum (Easy) 풀이
❓ 문제 Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target. You may assume that each input would have exactly one solution, and you may not use the same element twice. You can return the answer in any order. 정수 배열 nums 와 정수 대상이 주어지면 두 숫자의 인덱스를 반환하여 대상에 합산되도록 합니다. 각 입력에 정확히 하나의 솔루션이 있다고 가정하고 동일한 요소를 두 번 사용하지 않을 수 있습니다. 어떤 순서로든 답변을..