일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Top-down
- kubernetes
- Singleton Pattern
- GCP
- Python
- k8s
- cpu scheduling
- go
- 피보나치
- github
- golang
- mobaXTerm
- KAKAO
- BubbleSort
- Kotlin
- Codility
- 파이썬
- java
- 그리디
- 알고리즘
- LeetCode
- Programmers
- Dynamic Programming
- easy
- Backjoon
- 백준
- GKE
- docker
- Observer Pattern
- Today
- Total
목록알고리즘/LeetCode (41)
To Be Developer
class Solution(object): def merge(self, nums1, m, nums2, n): """ :type nums1: List[int] :type m: int :type nums2: List[int] :type n: int :rtype: None Do not return anything, modify nums1 in-place instead. """ # nums1의 m번 인덱스부터 끝까지 삭제 del nums1[m:] # nums1 에 nums2의 0~n-1 인덱스 원소들 추가 nums1 += nums2[0:n] # 오름차순으로 정렬 nums1.sort() return nums1 https://leetcode.com/problems/merge-sorted-array/
class Solution(object): def reverseOnlyLetters(self, S): # 파라미터를 List로 변경 listS = list(S) # 리스트의 길이 ln = len(listS) # 알파벳 나온 것을 reverse한 정보 swap = [] # swap할 index 저장소 index = [] # 0 ~ ln-1 반복 for i in range(ln): # listS 의 원소가 알파벳인지 확인 if listS[i].isalpha() : # index에 i 위치 정보를 append index.append(i) # swap에 listS[i] 맨 앞으로 삽입 swap.insert(0, listS[i]) # index의 길이 indexLen = len(index) # index 길이 만..
class Solution(object): class Solution(object): def rotateString(self, A, B): """ :type A: str :type B: str :rtype: bool """ # input A 의 길이 ln = len(A) # input B 의 길이 lnB = len(B) # input data가 "" 이면 True if ln == lnB == 0: return True # 길이가 같지 않으면 False if ln != lnB: return False # 0 ~ ln-1 까지 반복 for i in range(ln): # A[i~ln-1] + A[0~i] 가 B 와 같으면 True if A[i::]+A[:i] == B: return True # 반복문을 무사..
class Solution(object): def canThreePartsEqualSum(self, A): """ :type A: List[int] :rtype: bool """ # 배열을 3개의 합으로 나누려면 # 합은 3X 가 되어야 한다 # 리스트의 합을 구하고 3으로 나눈다. s = sum(A)/3 # part1 합 part1 = 0 # part2 합 part2 = 0 # part3 합 part3 = 0 for i in A: # part1 가 3 분의 1이 아니면 part1 에 i를 더함 if part1 != s : part1 += i # part2 가 3 분의 1이 아니면 part1 에 i를 더함 elif part2 != s : part2 += i # part3 이 합의 3 분의 1이 아니면 p..
class Solution(object): def findComplement(self, num): # 2진수를 2^0 ~ 2^n 까지 저장할 배열 변수 bi = [] # num 이 0 이 될때까지 반복을 돌림 while num!=0: # 2로 나눈 나머지를 bi에 append bi.append(num%2) # 계산하였으므로 num 을 2로 나눔 num = num//2 # return 할 값 answer = 0 # bi를 0 제곱부터 N제곱까지 배치하였으므로 # enumerate 함수를 사용하여 index를 그대로 사용하면 된다. for i, v in enumerate(bi): # v 값이 0이면 2^i 를 answer에 더한다 if v == 0: answer += 2**i # return answer r..
import numpy as np class Solution(object): ''' Given a string S that only contains "I" (increase) or "D" (decrease), let N = S.length. Return any permutation A of [0, 1, ..., N] such that for all i = 0, ..., N-1: If S[i] == "I", then A[i] A[i+1] ''' def diStringMatch(self, S): # S의 길이를 구한다. ln = len(S) #li = list(np.arange(ln+1))