일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Python #leetcode #dfs #그래프 #백트래킹
- handler #looper #thread #runnable #핸들러 #루퍼 #스레드 #러너블
- final #java #자바 #안드로이드
- dfs #bfs #이진트리 #파이썬 #리트코드
- dfs #python #leetcode #combination
- 리트코드 #팰린드롬 #파이썬
- dfs #leetcode #python
- 2004 #조합 0의 개수 #백준
- dfs #그래프 #graph #python #leetcode #course #schedule
- gcd #최대공약수 #백준 #2981 #검문
- python #백준 #2580 #스도쿠 #dfs #백트래킹
- exoplayer #mediaplayer #엑소플레이어 #안드로이드 #android
- 아스테리스크 #Asterisk #파이썬
- dfs #python #leetcode
- dfs #bfs #leetcode #python
- python #백준 #9375 #패션왕 #신해빈
- dfs #이진트리 #트리구조 #직렬화 #역직렬화 #파이썬 #리트코드 #leetcode #python
- dfs #bfs #트리구조 #이진트리 #leetcode #python #파이썬
- dfs #leetcode #python #graph #그래프
- leetcode #subsets #dfs #itertools #python
- 백준 #파이썬 #bfs #백트래킹 #1697 #숨바꼭질
- leetcode #python #dfs #재귀
- context #android #getApplicationContext #activity #생명주기 #lifecycle
- 파이썬 #zip
- 코틀린 #Do it #깡샘 #안드로이드
- 다익스트라 #dijkstra #leetcode #파이썬 #python #algorithm #787
- 해시테이블 #heapq #파이썬 #리트코드 #알고리즘
- AsyncTask #doinbackground #스레드 #thread #android #안드로이드
- dfs #bfs #트리구조 #이진트리 #leetcode #파이썬 #python
- 다익스트라 #알고리즘 #bfs #그리디 #다이나믹프로그래밍 #leetcode #python
- Today
- Total
목록Algorithm Study (61)
멋진 개발자가 되고 싶다
금지된 단어를 제외한 가장 흔하게 등장하는 단어를 출력하라. 대소문자 구분을 하지 않으며, 구두점(마침표, 쉼표 등) 또한 무시한다. Input: paragraph = "Bob hit a ball, the hit BALL flew far after it was hit.", banned = ["hit"] Output: "ball" 내가 직접 푼 코드 1 2 3 4 5 6 7 8 class Solution: def mostCommonWord(self, paragraph: str, banned: List[str]) -> str: string = paragraph.lower() string = re.sub('[\'?!;",.]',' ',string) # 특수문자 제거 str_list = string.split(..
로그를 재 정렬한다. 기준은 다음과 같다. 1. 로그의 가장 앞부분은 식별자이다. 2. 문자로 구성된 로그가 숫자 로그보다 앞에 온다. 3. 식별자는 보통 순서에 관여하지는 않지만 문자가 동일한 경우 식별자 순으로 한다. 4. 숫자 로그는 입력된 순서대로 한다. Input : ["dig1 8 1 5 1","let1 art can", "dig2 3 6", "let2 own kit dig", "let3 art zero"] Output : ["let1 art can","let3 art zero", "let2 own kit dig", "dig1 8 1 5 1", "dig2 3 6"] 내가 푼 코드(답 힐끗 모드) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 class Solution: def..
문자 배열이 입력되면 문자열을 뒤집는 함수를 만들어보자. ex) Input: s = ["h", "e", "l", "l", "o"] Output: ["o", "l", "l", "e", "h"] 내가 직접 푼 코드 1 2 3 4 5 6 class Solution: def reverseString(self, s: list) -> None: for i in range(len(s)//2): a = s[i] s[i] = s[len(s)-i-1] s[len(s) - i - 1] = a cs 해설 : 누구나 짤 수 있는 흔한 코드. 자세한 설명은 생략한다. RunTime : 200ms ** 다양한 풀이 ** 1. 투 포인터를 이용한 스왑 1 2 3 4 5 6 7 class Solution: def reverseStri..
'팰린드롬'이란 앞뒤가 똑같은 단어나 문장을 말한다. 예를 들어, 기러기나 AOA 같은?? 예가 안 떠오른다. 아무튼. 내가 직접 작성한 코드 1 2 3 4 5 6 7 8 class solution: def isPalindrome(s: str) -> bool: string = ''.join(filter(str.isalnum, s)) # 문자열에서 특수문자 제거 list_s = list(string) # 문자열 -> 리스트 변환 for i in range(len(list_s) // 2): # 앞뒤를 하나씩 비교 if list_s[i] != list_s[len(list_s) - i - 1]: return False return True Colored by Color Scripter cs 해설: ''.join..
빅오 : 입력값이 무한대로 향할 때 함수의 상한을 설명하는 수학적 표기 방법. 입력값 n이 무한대를 향할 때 함수의 실행 시간 추이를 의미하는 점근적 실행 시간을 표기할 때 가장 널리 쓰인다. 위 그래프에서 시간 복잡도 O(1)의 경우, 입력값 n이 아무리 커져도 시간은 같다. 즉, 데이터의 크기가 아무리 커져도 처리하는 시간은 변함이 없다는 것! 최고의 알고리즘이라 할 수 있지만 이러한 경우는 거의 드물다. 알고리즘 중에서는 테이블의 조회 및 삽입이 이에 해당한다. O(logn)의 경우, 실행 시간은 입력값에 적은 영향을 받는다(받긴 받는다!). 대표적으로 이진 검색이 이에 해당한다. O(n)의 경우, 알고리즘을 수행하는 데 걸리는 시간은 입력값에 비례한다. 선형 시간 알고리즘이라고도 하며, 정렬되지 ..