문제 연결 리스트를 뒤집어라. leetcode 206 - Reverse Linked List 코드 # Definition for singly-linked list. # class ListNode: # def __init__(self, val=0, next=None): # self.val = val # self.next = next class Solution: def reverseList(self, head: Optional[ListNode]) -> Optional[ListNode]: node, prev = head, None while node: next, node.next = node.next, prev prev, node = node, next return prev
문제 정렬된 두 개의 링크된 list1과 list2의 head가 주어진다. 두 목록을 하나의 정렬된 list로 병합하고, 병합된 list의 헤드를 반환한다. leetcode 21 - Merge Two Sorted Lists 코드 # Definition for singly-linked list. # class ListNode: # def __init__(self, val=0, next=None): # self.val = val # self.next = next class Solution: def mergeTwoLists(self, list1: Optional[ListNode], list2: Optional[ListNode]) -> Optional[ListNode]: # list1과 list2를 비교하여, ..
문제 배열 가격이 주어지는데, 여기서 가격은 당일 주식의 가격이다. 한 주식을 살 날을 선택하고 해당 주식을 팔 다른 날을 선택하여 이익을 극대화하려고 합니다. 이 거래로 얻을 수 있는 최대 이익을 반환하고, 만약 당신이 어떠한 이익도 얻을 수 없다면, 0을 반환하라. leetcode 121 - Best Time to Buy and Sell Stock 코드 class Solution: def maxProfit(self, prices: List[int]) -> int: profit = 0 min_price = sys.maxsize # 최솟값과 최댓값을 계속 갱신 for price in prices: min_price = min(min_price, price) profit = max(profit, price..
문제 덧셈하여 타겟(target)을 만들 수 있는 배열의 두 숫자 인덱스를 리턴하라 leetcode 1 - Two Sum 코드 from typing import List class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: nums_map = {} # 키와 값을 바꿔서 딕셔너리로 저장 for i, num in enumerate(nums): nums_map[num] = i # 타겟에서 첫 번째 수를 뺀 결과를 키로 조회 for i, num in enumerate(nums): if target - num in nums_map and i != nums_map[target-num]: return nums.index(num), n..
문제 로그를 재정렬하라. 기준은 아래와 같다. 로그의 가장 앞 부분은 식별자다. 문자로 구성된 로그가 숫자 로그보다 앞에 온다. 식별자는순서에 영향을끼치지 않지만,문자가동일할경우식별자순으로한다. 숫자 로그는 입력 순서대로 한다. leetcode 937 - Reorder Data in Log Files 코드 class Solution: def reorderLogFiles(self, logs: List[str]) -> List[str]: letters, digits = [], [] for log in logs: if log.split()[1].isdigit(): digits.append(log) else: letters.append(log) # 2개의 키를 람다 표현식으로 정렬하자 letters.sort(k..
문제 문자열을뒤집는함수를작성하라 입력값은문자배열이며, 리턴 없이 리스트내부를 직접조작하라 leetcode 344 - reverse-string 코드 class Solution: def reverseString(self, s: List[str]) -> None: left, right = 0, len(s) - 1 while left < right: s[left], s[right] = s[right], s[left] left += 1 right -= 1
문제 프로그래머스 - 로또의 최고 순위와 최저 순위 코드 def solution(lottos, win_nums): nums = set(win_nums) hit_nums = 0 # 맞춘 로또 번호의 수 for num in lottos: if nums.__contains__(num): hit_nums += 1 min_rank = 7 - hit_nums if 0 < hit_nums else 6 zero_nums = 0 # 지워진 로또 번호의 수 for num in lottos: if num == 0: zero_nums += 1 max_rank = 7 - hit_nums - zero_nums if max_rank == 7 : max_rank = 6 # 맞춘 번호도 없고, 지워진 번호도 없다면 6등 return ..
- Total
- Today
- Yesterday
- 스프링
- 스프링부트
- 릿코드
- 알고리즘
- 백준
- 정렬
- 코틀린
- 파이썬
- 코테
- 북클럽
- Real MySQL
- 자료구조
- 노마드
- 리팩토링
- 구현
- 김영한
- 그리디
- mysql 8.0
- kotlin
- MySQL
- 인프런
- Spring
- leetcode
- 노마드코더
- Algorithm
- spring boot
- 문자열
- 데이터베이스
- 스프링 부트
- webflux
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |