본문 바로가기

최단경로 : 다익스트라 : dijkstra : 방향가중치그래프 유형은 DP+그리디 가 합쳐진 느낌이다 A노드에서 B노드로 간다는 방향이 있는 그래프에서 사용한다. 근데 그렇게 이동하는데 비용이 각각 다르다. 다익스트라는가중치가 음수인 경우에는 사용할 수 없다. GitHub - ndb796/python-for-coding-test: [한빛미디어] "이것이 취업을 위한 코딩 테스트다 with 파이썬" 전체 [한빛미디어] "이것이 취업을 위한 코딩 테스트다 with 파이썬" 전체 소스코드 저장소입니다. - GitHub - ndb796/python-for-coding-test: [한빛미디어] "이것이 취업을 위한 코딩 테스트다 with 파이썬" 전체 소 github.com 이 자료들로 공부했다 가장 거리가 짧은 노드부터 탐색하는 이유 while q: # 큐가 비어있지 않다..
Maximum likelihood https://d2l.ai/chapter_appendix-mathematics-for-deep-learning/maximum-likelihood.html 19.7. Maximum Likelihood — Dive into Deep Learning 1.0.0-alpha0 documentation d2l.ai 19.7.1. The Maximum Likelihood Principle 우리의 목적은 모델 파라미터 $\theta$와 데이터 $X$가 있을 때, 우리 모델이 가장 나은 값을 얻기 위해서는 우리는 $$ argmax P(\theta | X) $$ 를 찾아야 한다. 위 식을 베이즈 규칙에 따라 풀면 $\theta$ : 모델 파라미터, 가설 ex. 동전 앞이 나올 것이다 $P(\theta)$ : 가설이 참일 ..
그래프 : DFS/BFS : 깊이우선탐색/너비우선탐색 DFS 재귀 함수 사용 종료조건 스택 list : append, pop 재귀를 쓰지 않아도 가능하다 def dfs(graph, start_node): need_visited, visited = list(), list() need_visited.append(start_node) while need_visited: node = need_visited.pop() if node not in visited: visited.append(node) for i in range(len(graph[node])-1,-1,-1) : need_visited.append(graph[node][i]) return visited BFS direction=[[0,1,0,-1],[1,0,-1,0]] def bfs(x,y,graph,vi..
DP : Dynamic Programming : 동적 계획법 : 동적 프로그래밍 : 다이나믹 프로그래밍개념 정리/template/상향식 하향식 비교 Bottom up Top down 상향식 하향식 for로 구현 재귀함수로 구현 작은 문제를 모아 큰 문제 해결 큰 문제를 해결하기 위해 작은 재귀 함수 호출 점화식 필요 점화식 필요 메모이제이션 없음 메모이제이션=캐싱 결과 저장용 리스트나 사전을 DP 테이블이라 함. 오버헤드를 줄일 수 있다. 일반적으로 성능이 더 좋다. 오버헤드 가능성이 있다. # 상향식 dp_table[1] = 1 dp_table[2] = 1 for i in range(3, n+1): dp_table[i] = dp_table[i - 1] + dp_table[i - 2] # 점화식 # 하향식 def dp(n): # 종료조건 if n == 1: return 1 elif n == 2: return 1 # 메모이제이션 if dp_table[..
[Algorithm] 백준 BOJ 1463 1로 만들기 : python 파이썬 DP 실버 3 Private 난이도 : ♥♥♥♡♡ 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net n=int(input()) d=[0]*(n+1) d[1]=0 for i in range(2,n+1): d[i]=d[i-1]+1 if i%3==0: d[i]=min(d[i], d[i//3]+1) if i%2==0: d[i]=min(d[i], d[i//2]+1) print(d[n]) 백준 제출 버전 설명 3가지 방법중 1) 1을 빼는 방법 2) 3으로 나누는 방법 3)2로 나누는 방법 으로 이미 계산했던 작은 수들에 대한 결과를 활용하므로써 더 큰 숫자들의 결과를 알 수 있다. 1,2,3 번 방법 모두 그 전 숫자의 결과에 연산을 한 번만 더 ..
[Algorithm] 백준 BOJ 11000 강의실 배정 : python 파이썬 그리디 골드 5 Private 난이도 : ♥♥♥♥♡ 11000번: 강의실 배정 첫 번째 줄에 N이 주어진다. (1 ≤ N ≤ 200,000) 이후 N개의 줄에 Si, Ti가 주어진다. (0 ≤ Si 0: # 수업이 겹침 ->강의실 추가 contin..
[Boostcamp AI tech 3기] Week 21 학습 정리/회고 (6/6~6/12) 학습 정리 강의/스스로 도전 한 것/과제/결과물 FastAPI 코드 리뷰 Google form 1차 설문 Google forn 최종 설문 1차 설문 피드백 수용 random button 구현 AI매칭확률 뜨도록 FastAPI 구현(LightGCN의 확률값) 백엔드 개념도 그리기 검색 키워드 대분류로 바꾸는 FastAPI cluster rule based로 웹페이지에 적용시키기 코디 사진 중 잘린 사진이 존재해서 재크롤링한 것 사진 검수 코디 결과 사진 가운데로 오도록 streamlit 구현 발표 영상 PPT및 대본 작성 발표 영상 편집 및 썸네일 만들기 롤링페이퍼작성 Readme 작성 피어세션 메인 모델 선정 -> cluster rule base에 AI매칭 확률과 아이템 sorting을 Light GCN..
[Boostcamp AI tech 3기] Week 20 학습 정리/회고 (5/30~6/5) 학습 정리 강의/스스로 도전 한 것/과제/결과물 2-5강 듣기 key error pull request를 fork한 repository가 아닌 원래 repo로 보내는 실수 DBeaver로 DB schema만들고 DB 넣기 GCP에 SQL 서버 만들고 연결 최종 영상을 위한 PPT 제작 FastAPI 강의 전체적으로 다시 듣기 get-->post로 바꾸기 1차 간이 설문조사 만족도, 사용 편의성 설문 받기 피어세션 이분탐색 종문님이 만드신 틀이 잘 작동한다 문제풀이 프로젝트의 차별성, 필요성 PPT 제작, 대본 멘토링 기술면접 질문답변 답변이 끝났음을 말하기 외국계 취업&면접 경험 기억에 남는 면접 질문, tip 마스터 클래스 회고 아쉬운 것 강의를 꼼꼼하게 듣지 못한 것 프로젝트를 진행하려다 보니 그렇게..