
VPN이란? 가상 사설망(VPN: Virtual Private Network)은 사용자가 사설망에 연결된 것처럼 인터넷에 액세스할 수 있도록 하는 인터넷 보안 서비스 정의상 VPN 연결은 다음과 같다. > - 연결 프로세스에 실제 케이블이 없기 때문에 'Virtual

대칭키 암호란 동일한 키로 암호화와 복호화를 수행하는 암호 알고리즘이다.대표적인 알고리즘: AES, DES특징으로는 비대칭키 암호보다 속도가 빠르다.동일한 키로 암호화와 복호화를 수행하니 암호화 하는 사람과 복호화 하는 사람은 동일한 키를 분배 받아야한다. 이를 어떻게
github에 업로드를 할 때 특정 파일을 제외하고 업로드 하고 싶으면 다음과 같이 하면 된다.참고로 git bash를 이용하여 하는 방법이다.VScode로 열기파일 내용을 수정한다.
객체 사이이 연결 관계를 표현할 수 있는 자료 구조정점(vertex)와 간선(edge)들의 유한 집합G = {V, E}무방향 그래프 (undirected graph)방향 그래프 (directed graph)가중치 그래프(weighted graph) 부분 그래프(subg
우선순위 큐는 우선 순위의 개념을 큐에 도입한 자료구조이다.응용되는 사례는 다음과 같다.시뮬레이션 시스템네트워크 트래픽 제어운영 체제에서의 작업 스케쥴링수치 해석적인 계산우선순위 큐는 여러 방법으로 구현이 가능한데, 가장 효율적인 구조는 heap이다.완전 이진 트리의
트리 = 비선형 자료구조 , 계층적인 자료를 표현하는데 적합한 자료구조 인공지능 문제- 결정트리 트리는 한 개 이상의 노드로 이루어진 유한 집합이다. 용어 부모노드(parent node) 자식노드(children node) 형제관계(sibling) 조상노드(an
배열을 이용한 리스트 구현 빠름 크기가 고정됨 연결리스트 크기 제한 안됨 중간에서도 쉽게 삽입 삭제 구현이 복잡함 임의의 항목을 추출할 때 배열보다 오래걸림 하나의 프로그램에서 여러 연결리스트들은 첫번째 데이터로 구별 첫번째 데이터만 알 수 있다면 연결 리스트의 나머
큐는 FIFO: First-In First-Out (선입선출) 구조이다.큐는 현실세계의 실제상황을 시뮬레이션 하는 상황에서 많이 응용된다.1차원 배열을 이용하여 구현한 큐선형큐는 삽입과 삭제를 반복하다보면 rear이 맨 마지막 인덱스를 가리키고 앞에는 비어있을 수 있
스택은 LIFO: Last-In First-Out (후입선출) 이다. 즉 스택은 자료의 출력순서가 입력순서의 역순으로 이루어져야 할 경우에 적합한 자료구조이다. 스택의 대표적인 예로는 다음이 있다. 운영체제가 사용하는 시스템 스택 텍스트 에디터 되돌리기 기능 스마트
return과 exit(1) 둘 다 프로그램을 종료 시킬 수 있지만프로그램을 즉시 종료해야할 때 는 exit(1) 을 사용하는 것이 바람직하다.ex) 치명적인 오류가 발생하여 더 이상 실행할 필요가 없을 경우 전체 프로그램을 종료하지만 메모리 누수나 흐름 제어 문제를
새로운 기능을 개발하거나 버그를 수정할 때 별도의 브랜치를 만들어 독립적으로 작업할 수 있다.✅ 브랜치를 사용하면 여러 명이 동시에 다른 작업을 진행하면서도, 안정적인 코드를 유지할 수 있음브랜치 목록 확인새로운 브랜치 생성브랜치 삭제브랜치 전환두 브랜치가 공통으로 갖
github와 사용하기 위해서는 로컬 저장소와 원격 저장소를 연동하는 작업이 필요하다.참 고 : origin원격 저장소의 이름을 orgin으로 지정하면 된다. master와 마찬가지로 git 공식 명칭은 아니지만 원격 저장소의 이름으로 사용되는 이름이다.처음 push할
git diff - show change브랜치 전환특정 커밋 상태로 이동Stagint Area에 올라간 파일을 Unstaging (git add 명령 취소)reset 옵션\-soft : 커밋 취소, Staging 상태 유지\-mixed : 커밋 취소, Staging 취
특정 파일만 add한번에 addgit에 의해 관리되는 파일들의 상태를 확인하는 명령어에디터로 진입하여 commit 메세지를 입력에디터 없이 commit 메세지를 입력새로 추가된 파일이 없을 때 한정하여 사용commit 히스토리를 조회하는 기능한줄로 보기그래프 형태로 브

cherry_pickgit work_flow그 외 문법들3way merge 2way mergeconflictbranchdetachedcheckoutreset
순환 순환이란 어떤 알고리즘이나 함수가 자기 자신을 호출하여 문제를 해결하는 프로그래밍 기법이다. 순환은 본질적으로 순환적인 문제나 그러한 자료구조를 다루는 프로그램에 적합하다. 그리고 대부분의 순환적인 형태의 코드는 반복적인 형태로도 변환이 가능하다. 장점 순환은

알고리즘 복잡 분석은 코드를 직접 구현하지 않고도 모든 입력을 고려하는 방법이다. 실행 하드웨어나 소프트웨어 환경과는 관계 없이 알고리즘의 효율성을 평가할 수 있다.알고리즘의 수행 시간 분석을 시간 복잡도(time complexity) 라고 한다.연산의 수를 입력의 개
clock() 함수를 사용한 수행시간 측정 알고리즘의 성능을 분석하고자 할 때 동일한 조건의 컴퓨터에서의 동일한 조건에서 수행시간을 측정하는 방법을 알아보자. 실제 사용할 수 있는 경우는 제한적이지만 대단히 정확하고 확실한 방법이다. clock() 함수는 호출 프