분류 전체보기 (20) 썸네일형 리스트형 자료구조 in C# C#에서 사용되는 대표적인 **자료구조(Data Structure)**에는 배열, 리스트, 스택, 큐, 딕셔너리, 해시셋 등이 있습니다. 각각의 자료구조는 특정한 상황에서 더 적합하게 사용할 수 있도록 설계되어 있습니다.C# 기본 자료구조 개요자료구조설명배열(Array)고정 크기의 연속된 메모리 블록리스트(List)동적 크기 조절 가능, 배열과 유사스택(Stack)후입선출(LIFO) 방식큐(Queue)선입선출(FIFO) 방식딕셔너리(Dictionary)키-값 쌍 저장, 빠른 조회해시셋(HashSet)중복 없는 유일한 값 저장링크드 리스트(LinkedList)노드 기반의 동적 자료구조정렬된 리스트(SortedList)키를 기준으로 자동 정렬되는 리스트배열(Array)1. 특징고정된 크기를 가지며, 연속된 .. C#과 유니티3D의 가비지 컬렉터(GC) 이해하기 가비지 컬렉터(Garbage Collector, GC)는 더 이상 사용되지 않는 메모리를 자동으로 회수하여 프로그램의 메모리 누수를 방지하는 기능입니다. C#과 유니티(Unity)에서는 .NET의 GC 시스템을 활용하여 자동으로 메모리를 관리합니다.하지만, GC의 동작 방식과 최적화 방법을 이해하지 못하면 **프레임 드롭(Frame Drop)**이나 불필요한 메모리 사용 증가와 같은 성능 저하 문제가 발생할 수 있습니다.C#에서의 가비지 컬렉터 동작 원리C#의 GC는 세대별(Generational) 관리 방식을 사용하여 메모리를 최적화합니다.Gen 0 (1세대): 새로 생성된 객체 (GC가 자주 실행됨)Gen 1 (2세대): 한 번 GC를 통과한 객체Gen 2 (3세대): 장기간 유지되는 객체 (GC 실.. BFS(너비 우선 탐색)와 DFS(깊이 우선 탐색) in C# 그래프 탐색 알고리즘인 BFS(너비 우선 탐색)와 DFS(깊이 우선 탐색)는 다양한 문제 해결에 활용됩니다. 이번 글에서는 C#으로 구현한 BFS와 DFS 예제 코드와 함께 탐색 과정 테이블을 포함하여 설명하겠습니다.그래프 구조탐색을 수행할 그래프는 아래와 같은 구조를 가지고 있습니다. 1 / | \ 2 3 4 / \ |5 6 7 그래프의 인접 리스트 표현노드인접 노드12, 3, 425, 6374없음5없음6없음7없음BFS (너비 우선 탐색)BFS는 가까운 노드부터 차례대로 방문하는 탐색 방법으로, **큐(Queue, FIFO)**를 활용하여 구현됩니다.1. BFS 알고리즘 동작 방식탐색 시작 노드를 큐에 삽입하고 방문 처리큐에서 노드를 꺼낸 후, 해당 노드의 인접 노드를 큐에 삽입큐.. 해시테이블(Hash Table)과 해시함수(Hash Function) 해시테이블은 데이터를 효율적으로 저장하고 검색할 수 있는 자료구조이며, 해시함수는 이러한 저장과 검색을 돕는 핵심 역할을 합니다.해시테이블(Hash Table)이란?해시테이블은 **키(Key)와 값(Value)**을 저장하는 자료구조로, 특정한 키를 해시함수를 이용하여 배열의 인덱스로 변환하여 값을 저장하는 방식입니다.이러한 방식 덕분에 빠른 검색, 삽입, 삭제가 가능합니다.1. 해시테이블의 핵심 원리키(Key)를 해시함수(Hash Function)에 적용하여 특정 인덱스를 얻음해당 인덱스에 데이터를 저장 (해당 위치가 비어있다면 바로 저장)검색 시 같은 해시함수를 사용하여 인덱스를 찾아 빠르게 접근2. 해시테이블의 특징평균 시간복잡도: O(1) → 검색, 삽입, 삭제 연산이 매우 빠름공간 활용 효율성 .. 이전 1 2 3 다음