Home

0

최단 경로(Shortest path)

최단 경로 음수 사이클은 안되지만 음수 가중치는 된다. 방향 그래프(directed graph) - 방향 그래프는 대칭이 아니다. 가중치 그래프(weighted graph) 경로의 길이 = 에지 가중치의 합 최단 경로 알고리즘의 종류 하나의 출발점과 나머지 모든 목적지 Dijkstra Algorithm(음수 가중치가 없음) Bellman-Ford Alg

0

Crontab 문제 해결!

12시간마다 동작하라고 한 작업이 동작하긴 했는데, 정해진 시간에 동작하지 않는 문제가 발생했다. 시간을 확인해보니까 오전 9시에 실행이 되었다. 흠… 앗! 하고 순간 떠오른게 로컬에서의 시간과 서버에서의 시간이었다. 그래서 터미널을 통해서 date를 입력해봤더니 KST로 현재 시간이 잘 나왔다. 그리고 AWS EC2에 접속해서 date를 쳤더니… UTC가

0

Crontab 적용!

오늘의 딜이라는 시간에 따라 상품의 정보가 변동되는 데이터를 위해 crontab을 적용했다. 적용하기 전에 방법은 다음과 같았다. 상품 중에 4개를 랜덤으로 뽑기 위해 랜덤 숫자를 저장하는 모델을 만들었다. 모델이 업데이트가 되면 날짜도 업데이트되도록 DateField를 만들었다(auto_now = True). date 모듈을 이용해서 오늘 날짜를 받는다

0

request POST? data?

장바구니 로직에 문제가 생겼다! Front 분들이 요청에 있어서 에러가 있다고 문의를 주셨다. 그래서 나는 Postman으로는 잘 된다고 얘기했더니 500 에러가 뜬다고 이야기를 해주셨다. 이건 서버의 잘못이기에 로직을 다시 한번 살펴보고 있었다. 그런데 Front분들이 form-data로는 잘 되는데 raw의 JSON으로 보내면 안된다고 알려주셨다. 그래

0

최소 비용 신장 트리(Minimum Cost Spanning Tree)

신장 트리 Spanning Tree 연결되어 있다(Connected) 최소 에지 수 = |E| = |V| - 1 트리의 조건 E와 V가 같으면 사이클을 돌게 되므로 |V| - 1이다. 최소 비용 신장 트리 MST(Minimum Cost Spanning Tree) 무방향 그래프 가중치 그래프 비용이 최소가 된다. 에지들의 비용이 가장 작은 트리를 구한다

0

장바구니 및 주문 구현 수정 - 1

강사님께 질문을 하면서 내가 구현한 장바구니 부분보다 더 간단한 방법을 제안해주셨다. 일단 signal 함수라는 것은 유지보수 자체가 힘들다는 것을 알았다. 그래서 리뷰 평점을 계산하는 것도 모델 단에서 save를 재정의하는 방법을 검색해서 재구현했다. 123456def save(self, *args, **kwargs): super(Review, se

0

serializer.save()

장바구니에 상품들이 담기면 총 상품에 대한 가격이 계산되어야 했다. 상품을 실제로 파는 것은 아니었으므로 회의를 통해 배송 가격은 무료로 정했다. 따라서 상품의 가격의 가격들만 더하면 총 가격이 되었다. 그래서 REST Framework의 generic view에 있는 serializers.save()를 사용하기로 했다. 기존에 이미 해당 유저의 정보를 저

0

그래프 순회(Graph traversal)

그래프(Graph)정의 그래프는 객체와 객체 사이의 ‘관계’를 표현하기 위한 자료구조이다. 그래프 G는 두 ‘집합’ V, E로 나타낸다. V(G) : 노드(node) 혹은 정점(vertex)의 집합 E(G) : 정점을 잇는 에지(edge)의 집합 방향1. 무방향 그래프(Undirected graph) 출처 : https://github.com/yth

0

균형 이진 트리(balanced-binary tree)

이진 탐색 트리(BST)는 O(log(n))의 시간 복잡도를 가진다. 이것은 탐색 트리가 균형 트리일 경우에만 해당된다. 출처 : https://github.com/ythwork/CS 위 그림처럼 최악의 경우, O(n)의 시간 복잡도를 가지게 된다. 균형 이진 트리 self-balancing(balanced-binary tree) 균형 이진 트리