재로그
nil}" alt="Preview Image" >

완전탐색

완전탐색 완전탐색 알고리즘은 가능한 모든 경우의 수를 탐색하여 문제를 해결하는 방식이다. 모든 가능성을 시도하면서 필요한 답을 찾아내는 방식으로 동작한다. 이는 간단하고 직관적이지만, 많은 경우에 있어 효율성이 낮은 편이다. 완전 탐색의 특징으로는 다음이 있다: 모든 가능한 경우 고려: 문제에 대한 모든 가능한 경우의 수를 검사한...

nil}" alt="Preview Image" >

Exceptional Control Flow

ECF 예외적인 제어흐름 (exceptional control flow, ECF)은 운영체제가 입출력, 프로세스, 가상메모리 등을 구연하기 위해 사용하는 기본 메커니즘이다. ECF를 이해하면 응용 프로그램들이 어떻게 운영체제와 상호작용 하는지 이해하는데에 도움이 된다. 응용 프로그램은 트랩 또는 시스템 콜이라고 알려진 ECF의 한 가지 형태를 사용해...

nil}" alt="Preview Image" >

동적 메모리 할당기

동적 메모리 할당기 저수준의 mmap과 munmap 함수들을 사용하여 가상메모리의 영역을 생성하고 삭제할 수 있지만, 대개 추가적인 가상메모리를 런타임에 획득할 필요가 있을 때 동적 메모리 할당기라는 것을 사용하는 것이 편리하고 호환성이 좋다고 여겨진다. 동적 메모리 할당기는 heap, 즉 프로세스의 가상 메모리 영역을 관리한다. 할당기는 힙을 다...

가상화

가상화란 컴퓨터 리소스의 추상화를 의미한다. 추상화라는 단어가 CS에는 매우 자주 등장하는 듯 한데, 개인적으로 무언가를 추상화 하려면 이미지가 중요하다고 생각해서 이미지를 찾아보니 이런 걸 찾았다: </img> 가상화란, 하나의 물리 리소스를 여러개의 논리 리소스처럼 기능 시키거나, 여러 개의 물리 리소스를 하나의 논리 리소스처럼 기...

nil}" alt="Preview Image" >

힙 정렬

힙 힙이란 완전 이진 트리의 일종이며, 여러 개의 값들 중에서 최대값이나 최솟값을 빠르게 찾아내도록 만들어진 자료구조이다. 최대 힙 기준으로 큰 키값이 상위 레벨에 있고 작은 키값이 하위 레벨에 있으며 이러한 특징으로 인해 부모 노드의 키값이 자식 노드의 키값보다 항상 큰 이진 트리이다. 자세한 내용은 힙에 정리되어있다. 힙 정렬 힙 자료구조를...

nil}" alt="Preview Image" >

스택과 큐

컴퓨터에서 자주 사용되는 스택과 큐라는 자료구조에 대해서 알아보자. 스택 스택은 데이터의 삽입과 삭제가 한 쪽에서만 이루어지는 선형 자료구조이다. 이러한 삽입과 삭제 구조로 인해 스택에서의 데이 터 삭제는 삽입된 순서의 역순으로 삭제되는 특징을 가지며, 이를 선입후출 또는 후입선출, 영어로 Last In First Out, 줄여서 LIFO라고...