본문 바로가기

Computer Science13

HTTP와 HTTPS의 차이점 참고 : https://mangkyu.tistory.com/98 1. HTTP란? HTTP(Hyper Text Transfer Protocol)란? http란 서버/클라이언트 모델을 따라 데이터를 주고 받기 위한 프로토콜이다. 즉, http는 인터넷에서 하이퍼텍스트를 교환하기 위한 통신 규약으로, 80번 포트를 사용하고 있다. 따라서 http 서버가 80번 포트에서 요청을 기다리고 있으며, 클라이언트는 80번 포트로 요청을 보내게 된다. HTTP의 구조 http는 애플리케이션 레벨의 프로토콜로 TCP/IP 위에서 작동한다. http는 상태를 가지고 있지 않는 Stateless 프로토콜이며 Method, Path, Version, Headers, Body 등으로 구성된다. 하지만 http는 암호화가 되지 .. 2023. 5. 23.
힙(Heap), 셋(Set) 1. 힙(Heap) 1) 우선순위 큐(Priority Queue) 순서가 아닌 우선순위를 기준으로 가져올 요소를 결정(dequeue)하는 큐 2) 힙 (Heap) 최대값 또는 최소값을 빠르게 찾아내도록 만들어진 데이터구조 완전 이진 트리의 형태로 느슨한 정렬 상태를 지속적으로 유지한다. 힙 트리에서는 중복 값을 허용한다. (1) 힙은 언제 사용해야 할까? 데이터가 지속적으로 정렬되야 하는 경우 데이터의 삽입/삭제가 빈번할때 (2) 파이썬의 heapq 모듈 Minheap(최소힙)으로 구현되어 있음(가장 작은 값이 먼저 온다.) 삽입, 삭제, 수정, 조회 연산의 속도가 리스트보다 빠르다. (배열, 연결리스트, 힙으로 구현 가능) 3) 힙 메서드 https://buyandpray.tistory.com/30 (.. 2023. 5. 4.
스택, 큐 (Stack, Queue) 1. 스택 (Stack) Stack 쌓는다. 마치 접시를 쌓고 빼듯이 데이터를 한쪽에서만 넣고 빼는 자료구조, 가장 마지막에 들어온 데이터가 가장 먼저 나가므로 LIFO(Last in First out, 후입선출) 방식이다. 파이썬은 리스트를 이용하여 스택을 편하게 구현할 수 있다. 1) 스택의 사용 예 되돌리기, 되돌아가기 등등 뒤로가기 버튼을 누르면 ▼ 2. 큐(Queue) 한쪽 끝에서 데이터를 넣고, 다른 한쪽에서 데이터를 빼는 자료구조 가장 먼저 들어온 데이터가 가장 먼저 나가므로 FIFO(First in First out, 선입선출) 방식 큐도 파이썬의 리스트로 간편하게 사용할 수 있다. 리스트를 이용한 큐 자료구조는 데이터를 뺄때 큐 안에 많은 데이터가 있으면 인덱스가 하나씩 줄어들면서 효율이.. 2023. 4. 19.
딕셔너리 (Dictionary) 1. 해시 테이블 파이썬에는 딕셔너리가 내장되어 있다. 리스트를 이용해서도 key value를 저장할 수는 있다. 딕셔너리는 해시 테이블(hash table)을 이용하여 key : value를 저장한다. 해시 함수 : 임의의 길이를 가지는 데이터를 고정 길이의 데이터로 맵핑하는 함수 해시 : 해시 함수를 통해 얻어진 값 파이썬의 딕셔너리는 해시 함수와 해시 테이블을 이용하여 연산 속도가 리스트보다 빠르다. 2. 딕셔너리 기본 문법 딕셔너리 선언 딕셔너리 삽입/수정 딕셔너리 삭제 딕셔너리 조회 딕셔너리 문법 정리 3. 딕셔너리 메서드 1) .keys() 딕셔너리의 key목록이 담긴 dict_keys 객체 반환 2) .values() 딕셔너리의 value 목록이 담긴 dict_values 객체 반환 3) ... 2023. 4. 19.