사이클로매틱 복잡도 (Cyclomatic Complexity) 1. 개요 사이클로매틱 복잡도(Cyclomatic Complexity)란 프로그램의 소스 코드 내에 존재하는 독립적인 실행 경로의 수를 측정하여 소프트웨어의 논리적 복잡성을 정량화한 지표이다. 1976년 토마스 맥케이브(Thomas J. McCabe)에 의해 제안되었으며, 소프트웨어 공학에서 코…
검색 결과
"재귀 호출"에 대한 검색 결과 (총 8개)
점화식 (Recurrence Relation) 점화식은 수열의 각 항이 이전 항(들)과의 관계를 통해 정의되는 식을 의미하며, 수열의 일반항을 구하거나 수열의 성질을 분석하는 데 사용되는 수학적 도구입니다. 1. 개요 점화식은 수열 에서 번째 항 을 와 같은 이전 항들의 함수로 표현한 식입니다. 이는 수학적 귀납법(Mathematical Induction)…
무한 루프 (Infinite Loop) 1. 개요 무한 루프(Infinite Loop)란 프로그램의 반복문(Loop)에서 종료 조건이 결코 충족되지 않아, 루프 내부의 명령문이 끝없이 반복해서 실행되는 상태를 의미한다. 이는 프로그래머의 실수로 발생하는 논리적 오류(Logical Error)일 수도 있고, 시스템의 지속적인 작동을 위해 의도적으로 설계된 구…
메모리 프로파일링 (Memory Profiling) 1. 개요 메모리 프로파일링이란 실행 중인 소프트웨어가 메모리를 어떻게 할당하고 사용하는지를 동적으로 분석하여, 메모리 사용 패턴을 파악하고 최적화하는 기술적 과정을 의미한다. 현대 소프트웨어 개발에서 메모리 분석은 단순히 메모리 사용량을 줄이는 것을 넘어, 애플리케이션의 안정성 확보와 직결된다. 메모리 …
무타입 -대수 (Untyped Lambda Calculus) 1. 개요 무타입 -대수(Untyped Lambda Calculus)는 알론조 처치(Alonzo Church)가 1930년대에 제안한 함수 정의, 함수 적용, 그리고 변수 바인딩을 다루는 형식 체계로, [[계산 가능성]](Computability)을 연구하기 위한 수학적 모델이자 현대 함수형 프로…
깊이 우선 탐색 (Depth-First Search, DFS) 1. 개요 깊이 우선 탐색(Depth-First Search, DFS)은 그래프나 트리 구조에서 루트 노드(혹은 임의의 시작 노드)에서 시작하여 다음 분기(branch)로 넘어가기 전에 해당 분기를 완벽하게 탐색하는 깊이 중심의 그래프 탐색 알고리즘입니다. DFS는 한 방향으로 갈 수 있을 때까…
공간 복잡도 (Space Complexity) 개요 공간 복잡도(Space Complexity)는 알고리즘이 실행되는 동안 필요한 메모리 자원의 양을 정량적으로 나타내는 척도입니다. 시간 복잡도가 알고리즘의 실행 속도를 분석하는 데 초점을 맞춘다면, 공간 복잡도는 알고리즘이 얼마나 많은 메모리(주로 RAM)를 사용하는지를 분석합니다. 이는 특히 메모리 제약…
함수 호출 (Function Call) 개요 함수 호출(Function Call)은 컴퓨터 프로그래밍에서 정의된 함수의 코드를 실행하기 위해 프로그램의 제어 흐름을 해당 함수로 넘기는 과정을 의미합니다. 이는 소프트웨어의 모듈화, 재사용성, 그리고 추상화를 가능하게 하는 프로그래밍의 핵심 개념 중 하나입니다. 함수 호출이 발생하면, 호출된 함수는 매개변수(…