no image
[Algorithm] 합병 정렬 (Merge Sort)
I. 합병 정렬 (Merge Sort)의 개요가. 합병 정렬의 정의리스트를 두 개로 나누어, 각각을 정렬한 다음, 다시 하나로 합치는 정렬 방법 나. 합병 정렬의 특징분할과 정복 : 분할(Divide) -> 정복(Conquer) -> 결합(Combine) 과정 수행재귀적 수행 : 분할을 마친 후 분할된 부분의 반복적 수행정렬을 위한 별도의 공간이 필요수행시간 복잡도: O(n·log2n) Ⅱ. 합병 정렬의 단계 및 사례가. 합병 정렬의 단계  나. 합병 정렬 개념 void mergeSort(int arr[], int l, int r){if (l {int m = l+(r-l)/2; //Same as (l+r)/2, but avoids overflow for large l and hmergeSort(arr, ..
2024.09.14
no image
[Algorithm] 이진 탐색 (Binary Search)
I. 이진 탐색 (Binary Search)의 개요가. 이진 탐색의 정의정렬된 데이터 집합에서 탐색 범위를 1/2씩 줄여 나가면서 수행하는 방식 나. 이진 탐색의 특징분할과 정복 기반정렬된 데이터 집합에서 사용고속 탐색 Ⅱ. 이진 탐색 단계 및 사례가. 이진 탐색 단계 및 사례- 데이터 집합의 가운데 있는 기준값과 찾는 키 값 비교(1) 찾는 키 값 > 기준 값 : 오른쪽 부분 검색(2) 찾는 키 값 - 키 값을 찾을 때까지 이진 검색을 순환적으로 반복 /*searchnum 에 대해 list [0]찾으면 그 위치를 반환하고 못 찾으면 –1을 반환한다.*/int binsearch(int list[],int searchnum, int left,int right){int middle;while(left mid..
2024.09.14
no image
[Algorithm] 삽입 정렬 (Insert Sort)
I. 삽입 정렬 (Insert Sort)의 개요가. 삽입 정렬의 정의첫번째 키는 정의된 것으로 보고 두번째 키부터 순서에 맞는 위치에 삽입시켜 정렬하는 방법 나. 삽입 정렬의 특징간단하지만 레코드의 이동이 많은 알고리즘비교적 크기가 작은 데이터 집합 정렬에 유리함.수행시간 복잡도: O(n2) Ⅱ. 삽입 정렬의 단계 및 사례가. 삽입 정렬의 단계  삽입 대상 위치를 2번째부터 마지막까지 지정비교 대상을 처음부터 바로 전까지 지정정렬 대상의 값들과 뽑아낸 요소와 비교삽입할 값보다 큰 값을 가진 모든 요소들을 한 자리씩 오른쪽으로 이동새로 생긴 빈 자리에 해당 요소를 삽입전체 데이터 집합의 정렬이 완료될 때까지 반복 나. 삽입 정렬의 사례  void insertion_sort(element list[], in..
2024.09.14
[Algorithm] 순차 탐색 (Sequential Search)
I. 순차 탐색 (Sequential Search)의 개요가. 순차 탐색의 정의정렬되지 않은 배열의 항목들을 처음부터 마지막까지 하나씩 검사하여 원하는 항목을 찾아가는 방법 나. 순차 탐색의 종류전진 이동법 (Move To Front): 탐색된 데이터는 가장 앞으로 이동전위법 (Transpose): 바로 앞 데이터와 탐색된 데이터의 위치 변경계수법 (Frequency Count): 데이터마다 탐색된 횟수를 새로 저장하며, 그 횟수를 내림차순 정렬 Ⅱ. 순차 탐색의 종류 및 사례가. 전진 이동법 단계구현 사례 LinkedList* FindDataMove( LinkedList* Node, int Data){LinkedList* List = Node;LinkedList* Previous = NULL;while..
2024.09.14
no image
[Algorithm] 철학자들의 만찬 - 다익스트라 제안 알고리즘
A. 다익스트라 제안 알고리즘 - 개 념다익스트라를 비롯한 개념 없는 철학자들의 한정된 포크를 공유하는 기아상태 유발의 식사 행태I.  다익스트라가 제안한 기아상태가 가능한 철학자의 식사가. 철학자의 식사의 개요다익스트라를 비롯한 개념없는 철학자들의 한정된 포크를 공유하는 기아상태 유발의 식사 행태 나. 철학자 식사의 테이블 구성도 II. 철학자 식사의 문제와 해결 구조가. 철학자의 식사의 기본조건 구분설명실환경환경원탁에서 둥글게 앉아서 사이에 포크를 공유 한다.공유자원선형조건행위철학자는 먹거나 사색한다.대기와 실행행위조건반드시 2개의 포크로 식사를한다.다른 상대의 포크는 뺏을수 없다.왼쪽 포크를 항상 먼저집는다.하나를 가지면 하나를 기다린다.아무도 식사에 간섭하지 않는다.식사를 마치면 포크를 내려놓는다..
2024.09.14
no image
CCNA - 스위치 보안
A. Access Layer 보안기술1. DHCP SnoopingDHCP 트래픽을 특정 신뢰하는 포트(인터페이스)를 통해서만 주고 받는 기술로써 신뢰받는 포트를 통해 들어오는 DHCP 트래픽이 아닌경우 해당 트래픽을 폐기한다. 신뢰하는 포트의 개념은 DHCP 서버에서 직접적으로 연결된 포트를 뜻하며 PC까지 이어지는 스위치간 링크를 뜻하기도 한다. 구성방법으로는 스위치에서ip dhcp snoopingip dhcomp snooping vlan ?   -> vlan level에서도 활성화int "interface name"  -> dhcp 트래픽이 들어올 인터페이스ip dhcp snooping trust 2. DAI Dynamic ARP Inspection의 줄임말로 Middle ARP spoofing 방지..
2024.09.14
no image
CCNA - Etherchannel
A. Etherchannel 개념1. 들어가기 앞서... 종단 호스트는 항상 네트워크 트래픽을 보내지 않는다.이는 하위층에서 상위층의 업링크가 호스트 수만큼 필요하지 않다는 의미이다.  실제로 엑세스 계층과 분배층의 일반적인 비율은 20:1로 액세스 계층에 1gbps의 호스트가 20개 있다면 분배층으로의 업링크는 1gbps 1개만 있어도 된다는 뜻이다.  물론 더 높은 대역폭을 지원하는 업링크라면 그 수는 더 줄어든다. 예를들어 1gbps인 호스트가 40개 있다고 할때 업링크는 1gbps 2개 또는 2gbps 1개로 대체 가능하다.  2. 왜 Etherchannel이 필요한가? 앞서 설명한 내용처럼 캠퍼스 디자인 같이 엑세스 계층에서 분배층 계층의 업링크가 여러 개 존재하는 경우 2계층 스위치의 경우 S..
2024.09.13
금융 보안 교육 - 금융회사 임직원이 준수해야 하는 금융 IT 내부통제
A. 금융회사의 IT 내부통제1. 정보보호 컴플라이언스정보보호 컴플라이언스란 준법감시를 뜻하며 기업 내 모든 임직원들이 정보보호 관련 법률, 규정 등을 보다 철저하게 준수하도록 사전 또는 상시적으로 통제, 감독하는 것전산 정보보호 사고의 증가로 다양한 분야에서 규제가 강화되고 있는 추세임컴플라이언스 위험에 적극적으로 대처 못할시 기업의 생존과 직결되는 중대한 결과 초래 2. 금융회사가 준수해야하는 정보보호 관련 법률전자금융거래법전자금융감독규정신용정보보호법정보통신망법개인정보보호법정보통신기반보호법3. 정보보호 정책의 필요성다양한 요구사항 및 법률 등을 충족시킬 정보보호 정책 수립이 필요함.금융회사는 서비스의 안정성 및 정보의 신뢰성 확보를 위해 내부의 규정을 수립하여 모든 임직원 및 관련자에게 상기시킴으로 ..
2024.09.13
no image
CCNA - STP
A. Spanning Tree Protocol 개념1. 개요제2계층 네트워크 전반에 걸쳐 루프를 방지하는 기술이다.3계층은 IP 헤더에 TTL 값으로 인해 루프방지가 된다. TTL은 패킷이 라우터를 통과할때마다 TTL 값을 1씩 감소시키는 방식으로 작동한다.동적 라우팅 프로토콜에는 루프방지가 기본으로 내장되어 있다. 2. 왜 STP가 필요할까?2계층의 이더넷 헤더에는 TTL값이 없다. 루핑이 발생하게 되면 멈출수 있는 방법이 없다. STP는 물리적으로 연결된 인터페이스를 비활성화 시켜 루프를 방지하며 장애 조치를 자동화한다. STP의 단점으로는 대역폭을 절반으로 낮추며 수렴시간이 느리단 점이 있다.   B. Spanning Tree Protocol 동작원리1. 개요표준 프로토콜로 모든 제조사 스위치에서 ..
2024.09.12