[CS] 네트워크 (1) : OSI 7계층
OSI 7계층 통신이 일어나는 과정을 단계별로 알 수 있고, 특정한 곳에 이상이 생기면 그 단계만 수정할 수 있기 때문에 7계층으로 나눈다. Layer 1. 전기신호를 사용하여 비트 스트림을 전송 Layer 2. 물리적인 네트워크 사이에 데이터 전송을 담당, 전송 오류 감지 (MAC 주소로 통신) Layer 3. 주소(IP)를 정하고, 경로(Route) 선택, 패킷을 전달 (데이터를 목적지까지 경로를 찾아 전송) Layer 4. 데이터 전송, 속도 조절 등 Layer 5. TCP/IP 세션을 만들고 유지, 종료, 복구 기능 ex. OS Layer 6. 인코딩 및 디코딩 암호화, Layer 7에서 데이터를 이해할 수 있게 변환, 포맷 구분 Layer 7. 사용자(어플리케이션)를 위한 인터페이스 지원, 네트..
[CS] 자료구조 (2) : 이진탐색트리 (BST), B 트리, 힙 (Heap)
이진탐색트리 (BST) 노드의 왼쪽은 노드의 값보다 작은 값들, 오른쪽은 노드의 값보다 큰 값으로 구성한다. 목적 : 이진탐색 + 연결리스트 : 이 두가지를 합하여 장점을 모두 얻는 것이 이진탐색트리이다. - 이진탐색 : 탐색에 소요되는 시간복잡도는 O(logN), 삽입/삭제는 불가능 - 연결리스트 : 삽입, 삭제의 시간복잡도는 O(1), 탐색하는 시간복잡도는 O(N) 시간 복잡도 : 삽입 및 삭제, 탐색까지 이상적일 때는 모두 O(logN) 가능하지만, 만약 편향된 트리면 O(N)으로 최악의 경우가 발생한다. 문제 : 편향된 트리 (정렬된 상태 값을 트리로 만들면 한쪽으로만 뻗음), 이를 바로 잡도록 도와주는 개선된 트리가 AVL, RedBlack 트리이다. 특징 높이 : logN 각 노드의 자식이 2..