분류 전체보기 82

REST API에 대해

목차 REST REST API HTTP 메서드 (PUT VS. PATCH) REST 리소스(웹 페이지나 파일 등)를 URI로 나타내고 HTTP메서드를 이용해 연산(CRUD)을 수행하고 리소스의 상태를 주고받는것 HTTP기반이라 별도 인프라 필요 ❌ 동작이 한정적 REST API REST를 기반으로 한 인터페이스 HTTP 메서드 POST: 생성 GET: 조회 PUT: 갱신 DELETE: 삭제 ※ GET, PUT, DELETE는 여러번 호출해도 결과가 같은 반면(멱등성O), POST는 매 호출마다 새로운 데이터가 추가된다(멱등성X). PUT vs.PATCH PUT 데이터를 일부만 전달할 경우, 나머지는 NULL이나 DEFAULT값으로 처리됨 해당 리소스를 완전히 교체 PATCH 새롭게 바뀐 부분만 반영되고,..

[Codility] 6. Sorting

6.1 Distinct Write a function that, given an array A consisting of N integers, returns the number of distinct values in array A. N개의 정수로 구성된 배열 A가 주어지면 배열 A의 고유한 값의 수를 반환하는 함수를 작성합니다. def solution(A): if len(A) == 0: return 0 A.sort() cnt = 1 for i in range(1, len(A)): if A[i] != A[i-1]: cnt+=1 return cnt 6.2 MaxProductOfThree A non-empty array A consisting of N integers is given. The product of..

[Codility] 1. Iteration

1.1 BinaryGap A binary gap within a positive integer N is any maximal sequence of consecutive zeros that is surrounded by ones at both ends in the binary representation of N. Write a function that, given a positive integer N, returns the length of its longest binary gap. The function should return 0 if N doesn't contain a binary gap. 양의 정수 N 내의 이진 갭은 N의 이진 표현에서 양쪽 끝에 하나로 둘러싸인 연속적인 0의 최대 시퀀스입니다. ..

다익스트라 Dijkstra

import sys INF = sys.maxsize # 노드의 개수, 간선 갯수, 시작 정점 n, m, s = map(int, input().split()) g = [None] * n # 각 노드에 연결되어 있는 노드에 대한 정보를 담는 리스트 visited = [False] * n D = [INF] * n # 최단 거리 테이블을 모두 무한으로 초기화 D[s] = 0 previous = [None] * n # 최단경로 기록을 위한 list previous[s] = s # 시작정점의 경로 초기화 # 모든 간선 정보를 입력받기 (0~n-1입력입니다. 1~n 입력이면 테이블들 n+1로 초기화했었어야함) for _ in range(m): a, b, c = map(int, input().split()) # a번 ..

BFS

목차 - 인접리스트 - 인접행렬 인접리스트 n,m,s=map(int,input().split()) #n-노드갯수, m-입력갯수, s-시작정점 adj_list=[[] for _ in range(n+1)] for _ in range(m): a,b=map(int,input().split()) adj_list[a].append(b) adj_list[b].append(a) ########################################################## visited=[None]*(n+1) def bfs(i): queue=[] visited[i]=True queue.append(i) while len(queue)!=0: v=queue.pop(0) print(v) for w in adj_li..