[수학] GCD(최대공약수), LCM(최소공배수)
GCD(최대공약수), LCM(최소공배수) 정리 수학 및 프로그래밍에서 자주 사용되는 GCD(최대공약수)와 LCM(최소공배수)에 대해 개념, 관계, 구현 방법까지 정리한 문서입니다. 1. GCD(최대공약수)란? 두 수의 공통된 약수 중 가장 큰 수 예: GCD(12, 18) = 6 12의 약수: 1, 2, 3, 4,...
GCD(최대공약수), LCM(최소공배수) 정리 수학 및 프로그래밍에서 자주 사용되는 GCD(최대공약수)와 LCM(최소공배수)에 대해 개념, 관계, 구현 방법까지 정리한 문서입니다. 1. GCD(최대공약수)란? 두 수의 공통된 약수 중 가장 큰 수 예: GCD(12, 18) = 6 12의 약수: 1, 2, 3, 4,...
시간 복잡도 계산 및 계층별 정리 1. 시간 복잡도란? 시간 복잡도(Time Complexity) 는 입력 크기 n이 증가할 때, 알고리즘이 수행하는 기본 연산의 횟수를 수학적으로 표현한 것이다. 2. 시간 복잡도 계산 방법 2.1 반복문 기준 분석 단일 반복문 for (int i = 0; i < n; i++) { ......
C# 이벤트 호출 방식: ?.Invoke vs null 체크 vs Invoke() 상세 정리 1. 이벤트 호출 기본 형태 C#에서는 이벤트를 호출할 때 다음과 같은 방식들이 존재합니다: // 1. 최신 문법 (C# 6.0 이상) OnSelectedUnitChanged?.Invoke(this, EventArgs.Empty); // 2. 전통적...
C#의 다차원 배열(Multidimensional Arrays) C#에서는 [,], [,,]와 같이 쉼표를 사용하여 고정된 형태의 다차원 배열을 선언할 수 있습니다. 또한 [][] 또는 [][][] 형태로 배열의 배열(Jagged Array) 도 선언할 수 있으며, 두 방식은 메모리 구조, 성능, 유연성 면에서 중요한 차이를 가집니다. 1. 다...
C#/Unity/Unreal의 직렬화 개념 및 비교 총정리 1. 직렬화란 무엇인가? 직렬화(Serialization) 는 메모리 상의 객체나 데이터 구조를 파일, 네트워크, DB 등에 저장하거나 전송하기 위해 일련의 데이터(문자열 또는 이진 포맷)로 변환하는 과정이다. 반대로, 이 데이터를 다시 객체로 되돌리는 과정을 역직렬화(Deseriali...
C# 매개변수 키워드 정리 (ref, out, in, params) C#에서 함수에 인자를 넘기는 방법에는 다양한 키워드가 있습니다. 이 문서는 ref, out, in, params의 개념, 차이점, 사용 예시, IL 내부 처리, Unity 활용 사례까지 정리합니다. 1. 비교 요약표 키워드 용도 ...