일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- ssafy
- 싸피
- 항해
- 문자열
- 백준
- 삼성청년SW아카데미
- 프로그래머스
- java
- 자바
- dfs
- BOJ
- 코딩테스트
- 99일지
- DP
- 다이나믹프로그래밍
- BFS
- til
- 알고리즘
- 깊이우선탐색
- 99클럽
- 위상정렬
- SSAFY수료식
- 구현
- 파이썬
- programmers
- 너비우선탐색
- python
- 개발자스터디
- 백트래킹
- 브루트포스
- Today
- Total
목록STUDY/CS (9)
EunJng

Union Find 상호 배타적으로 이루어진 집합을 효율적으로 표현하기 위해 만들어진 자료구조 Disjoint-set(서로소 집합, 상호배타 집합) : 서로 중복 포함된 원소가 없는 집합들. 즉, 교집합이 없다. 집합에 속한 대표자(representative)를 통해 각 집합을 구분한다. Make-Set, Find, Union의 세 연산을 이용한다. make-set(x) 유일한 멤버 x를 포함하는 새로운 집합을 생성하는 연산 parents = [i for i in range(n)]과 같이 집합 생성 find(x) x를 포함하는 집합을 찾는 연산 재귀 혹은 반복문을 통해 구현할 수 있다. # 재귀 def find(x): if x == parents[x]:# 자기 자신이 부모 노드라면(루트 노드) retur..

'모든 개발자를 위한 HTTP 웹 기본 지식'(김영한, 인프런) 강의를 바탕으로 정리한 내용입니다. #08.HTTP 헤더2 - 캐시와 조건부 요청 캐시 기본 동작 캐시가 없을 때 데이터가 변경되지 않아도 계속 네트워크를 통해 데이터를 다운로드 받아야 한다. 인터넷 네트워크는 매우 느리고 비싸며, 느린 사용자 경험 캐시 적용 캐시 가능 시간동안 네트워크를 사용하지 않아도 된다. 비싼 네트워크 사용량을 줄일 수 있고, 브라우저 로딩 속도가 매우 빠르다. 캐시 시간 초과 캐시 유효 시간이 초과하면, 서버를 통해 데이터를 다시 조회하고 캐시 갱신 이때 다시 네트워크 다운로드가 발생 검증 헤더와 조건부 요청 캐시 시간 초과 캐시 만료 후에도 서버에서 데이터를 변경하지 않음 클라이언트의 데이터와 서버의 데이터가 같..

'모든 개발자를 위한 HTTP 웹 기본 지식'(김영한, 인프런) 강의를 바탕으로 정리한 내용입니다. #07. HTTP 헤더1 - 일반 헤더 HTTP 헤더 header-field = field-name ":" OWS field-value OWS (OWS: 띄어쓰기 허용) 용도 HTTP 전송에 필요한 모든 부가정보 ex) 메시지 바디의 내용, 메시지 바디의 크기, 압축, 인증, 요청 클라이언트, 서버 정보, 캐시 관리 정보... 분류 - RFC2616(과거) General 헤더: 메시지 전체에 적용되는 정보 Request 헤더: 요청 정보 Response 헤더: 응답 정보 Entity 헤더: 엔티티 바디 정보 message body - RFC2616 메시지 본문은 엔티티 본문을 전달하는 데 사용 엔티티 본문..

'모든 개발자를 위한 HTTP 웹 기본 지식'(김영한, 인프런) 강의를 바탕으로 정리한 내용입니다. #06. HTTP 상태코드 클라이언트가 보낸 요청의 처리 상태를 응답에서 알려주는 기능 1xx (Informational) 요청이 수신되어 처리중 (거의 사용하지 않음) 2xx (Successful) 요청 정상 처리 200 OK : 요청 성공 201 Created : 요청 성공해서 새로운 리소스가 생성됨202 Accepted : 요청이 접수되었으나 처리가 완료되지 않았음 - 배치 처리 같은 곳에서 사용 204 No Content : 서버가 요청을 성공적으로 수행했지만, 응답 페이로드 본문에 보낼 데이터가 없음 - ex) 웹 문서 편집기에서 save 버튼 3xx (Redirection) 요청을 완료하려면 유..

'모든 개발자를 위한 HTTP 웹 기본 지식'(김영한, 인프런) 강의를 바탕으로 정리한 내용입니다. #05. HTTP 메서드 활용 클라이언트에서 서버로 데이터 전송 데이터 전달 방식 쿼리 파라미터를 통한 데이터 전송 - GET : 주로 정렬 필터(검색어) 메시지 바디를 통한 데이터 전송 - POST, PUT, PATCH : 회원 가입, 상품 주문, 리소스 등록, 리소스 변경 예시 상황 1. 정적 데이터 조회 이미지, 정적 텍스트 문서 일반적으로 쿼리 파라미터 없이 리소스 경로로 단순하게 조회 가능 2. 동적 데이터 조회 주로 검색, 게시판 목록에서 정렬 필터(검색어) 조회 조건을 줄여주는 필터, 정렬 조건에 주로 사용 조회는 GET을 사용하고, 쿼리 파라미터를 사용해 데이터 전달 3. HTML Form ..

'모든 개발자를 위한 HTTP 웹 기본 지식'(김영한, 인프런) 강의를 바탕으로 정리한 내용입니다. #04. HTTP 메서드 API URI 회원을 등록하고 수정하고 조회하는 게 리소스가 아니라, 회원이라는 개념 자체가 리소스 -> 회원 리소스를 URI에 매핑 URI는 리소스만 식별. 리소스와 행위를 분리하기 HTTP 메서드 GET, POST, PUT, PATCH, DELETE 기타 메서드 HEAD: GET과 동일하지만 메시지 부분을 제외하고, 상태 줄과 헤더만 반환 OPTIONS: 대상 리소스에 대한 통신 가능 옵션(메서드)을 설명(주로 CORS에서 사용) CONNECT: 대상 리소스로 식별되는 서버에 대한 터널을 설정 TRACE: 대상 리소스에 대한 경로를 따라 메시지 루프백 테스트를 수행 GET 리소..

'모든 개발자를 위한 HTTP 웹 기본 지식'(김영한, 인프런) 강의를 바탕으로 정리한 내용입니다. #3. HTTP 기본 모든 것이 HTTP HTTP(HyperText Transfer Protocol) HTML, TEXT, IMAGE, 음성, 영상, 파일, JSON, XML (API) 등 거의 모든 형태의 데이터 전송 가능 서버간 데이터를 주고 받을 때도 대부분 HTTP를 사용한다. HTTP/1.1 : 가장 많이 사용되고 가장 중요한 버전 RFC2068 -> RFC2616 -> RFC7230~7235 기반 프로토콜 TCP: HTTP/1.1, HTTP/2 UDP: HTTP/3 - 성능 개선 HTTP 특징 클라이언트 서버 구조 무상태 프로토콜(Stateless), 비연결성 HTTP 메시지 단순함, 확장 가능..

'모든 개발자를 위한 HTTP 웹 기본 지식'(김영한, 인프런) 강의를 바탕으로 정리한 내용입니다. #02. URI와 웹 브라우저 요청 흐름 URI(Uniform Resource Identifier) URL(Resource Locator) URN(Resource Name) URI Uniform: 리소스 식별하는 통일된 방식 Resource: 자원. URI로 식별할 수 있는 모든 것 Identifier: 다른 항목과 구분하는데 필요한 정보 URL, URN Locator: 리소스가 있는 위치를 지정 Name: 리소스에 이름을 부여 위치는 변할 수 있지만, 이름은 변하지 않는다. URN 이름만으로 실제 리소스를 찾을 수 있는 방법이 보편화되지 않음 URL scheme://[userinfo@]host[:port..