알고리즘
-
[🥰 leetcode] 692. Top K Frequent WordsAlgorithm/1일 1코테 2022. 10. 19. 12:51
https://leetcode.com/problems/top-k-frequent-words/ Top K Frequent Words - 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 리스트 안에 가장 많이 존재하는 단어순 && 갯수가 같은 경우엔 사전순 정렬을 기준으로 k개를 뽑아내는 문제 나의 풀이 class Solution: def topKFrequent(self, words: List[str], k: int) -> List[str]: # 중복없는 set 생성..
-
[🥰 leetcode] 1328. Break a PalindromeAlgorithm/1일 1코테 2022. 10. 18. 11:28
https://leetcode.com/problems/break-a-palindrome/ Break a Palindrome - 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 팰린드롬 문자열을 단 한가지의 문자만 바꾸어 팰린드롬이 아니면서 && 사전식 순서에서 가장 작은 값으로 만드는 문제 예를 들어 abccba => aaccba 나의 풀이 class Solution: def breakPalindrome(self, palindrome: str) -> str: # ..
-
[🥰 leetcode] 53. Maximum SubarrayAlgorithm/1일 1코테 2022. 10. 14. 21:39
https://leetcode.com/problems/maximum-subarray/ Maximum Subarray - 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 최댓값이 될 수 있는 연속 서브 배열을 찾아라! 나의 풀이 def maxSubArray(self, nums: List[int]) -> int: dp = [0 for _ in range(len(nums))] for i, n in enumerate(nums): # 맨 처음 값이 경우 값 넣고 끝~!~~..
-
[😭 leetcode] 334. Increasing Triplet SubsequenceAlgorithm/1일 1코테 2022. 10. 11. 20:13
문제 https://leetcode.com/problems/increasing-triplet-subsequence/ Increasing Triplet Subsequence - 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 증가하는 시퀀스가 3개인 경우를 찾는 문제 # [1,2,3,4,5] => 1,2,3 TRUE # [5,4,3,2,1] => 증가하는 시퀀스가 존재하지 않음. FALSE # [2,1,5,0,4,6] => 0,4,6 TRUE 나의 (시도했으나 장렬..
-
[😭 leetcode] 15. 3SumAlgorithm/1일 1코테 2022. 7. 25. 20:48
리트코드 13번째 문제 [3Sum] https://leetcode.com/problems/3sum/ 3Sum - 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 문제 배열을 입력받아 합으로 0을 만들 수 있는 3개의 엘리먼트를 출력하라 (중복X) 정답 class Solution: def threeSum(self, nums: List[int]) -> List[List[int]]: result = [] # 편의상 정렬 수행 nums.sort() # i를 기준으로 투 ..
-
🌼알고리즘🌼 그리디 알고리즘Algorithm/알고리즘 2022. 6. 5. 19:13
그리디 알고리즘 : 현재 상황에서 지금 당장 좋은 것만 고르는 방법 그리디 알고리즘 문제 유형 : 가장 큰 순서대로, 가장 작은 순서대로와 같은 기준이 나타난다. 이런 기준은 정렬 알고리즘과 함께 짝을 이뤄 출제된다 그리디 알고리즘 예제 당신은 음식점의 계산을 도와주는 점원이다. 카운터에는 거스름돈으로 사용할 500원, 100원, 50원, 10원짜리 동전히 무한히 존재한다. 손님에게 거슬러 줘야 할 돈이 N원일 때 거슬러 줘야 할 동전의 최소 개수를 구하라. 풀이 idea : 가장 큰 화폐 단위부터 돈을 거슬러 줘야함 가장 먼저 500원으로 거슬러 줄 수 있을 만큼 거슬러 준다. 그 다음 100원, 50원, 10원... 으로 거슬러 준다. n = 1260 count = 0 # 동전의 유형 coin_typ..