Development152 [멋쟁이사자처럼 부트캠프 TIL 회고] Unity 게임 개발 3기 15일차 목차자료구조Tree: 계층적 구조를 표현하는 비선형 자료구조 --> 노드와 노드를 연결하는 간선으로 구성※ 이때까지 배운 자료구조 (Array, LinkedList, Stack, Queue)는 선형적인 자료구조 특징하나의 root 노드를 가진다.각 노드는 0개 이상의 자식 노드를 가질 수 있다.사이클이 존재하지 않는다.용어노드(Node) : 트리를 구성하는 기본요소로, 데이터를 저장한다.간선(Edge) : 노드와 노드를 연결하는 선루트 노드(Root Node) : 트리의 최상위에 있는 노드부모 노드(Parent Node) : 직접적인 상위 노드자식 노드(Child Node) : 직접적인 하위 노드리프 노드(Leaf Node) : 자식이 없는 노드로, 트리의 끝단에 위치깊이 (Depth) : 루트에서 특정.. 2024. 12. 10. [멋쟁이사자처럼 부트캠프 TIL 회고] Unity 게임 개발 3기 14일차 목차자료구조Queue: First In First Out (FIFO) 원칙을 따르는 선형 자료구조 Queue의 주요 연산Enqueue : Queue의 뒤쪽(rear)에 새로운 요소를 추가한다.Dequeue : Queue의 앞쪽(front)에서 요소를 제거하고 반환한다.Peek/Front : Queue의 맨 앞 요소를 조회한다. (제거 X)IsEmpty : Queue가 비어있는지 확인한다.Size : Queue에 있는 요소의 개수를 반환한다.Queue 구현해보기└ 배열 기반 Queue 구현하기 구현한 Queue의 특징Generic 타입을 사용하여 다양한 데이터 타입을 저장할 수 있다.배열을 기반으로 한 원형 Queue 구조를 사용하여 메모리를 효율적으로 사용한다.Queue가 가득 찼을 때, 자동으로 크기를.. 2024. 12. 7. [멋쟁이사자처럼 부트캠프 TIL 회고] Unity 게임 개발 3기 13일차 목차Stack을 활용하여 Undo와 Redo 만들기 (with Command)>> 전체 코드using System.Collections;using System.Collections.Generic;using UnityEngine;public interface ICommand{ void Execute(); void Undo();}public class CommandManager : MonoBehaviour{ private Stack undoStack = new Stack(); private Stack redoStack = new Stack(); public void ExecuteCommand(ICommand command) { command.Execute(); /.. 2024. 12. 6. [멋쟁이사자처럼 부트캠프 TIL 회고] Unity 게임 개발 3기 12일차 목차자료구조Stack: Last In First Out (LIFO) 원칙을 따르는 자료구조 Stack의 연산Push(x) : 주어진 요소 x를 Stack의 맨 위에 추가한다.Pop() : 스택이 비어있지 않으면 맨 위에 있는 요소를 삭제하고 반환한다.Peek() : 스택이 비어있지 않으면 맨 위에 있는 요소를 반환한다. Stack 구현해보기 using System.Collections;using System.Collections.Generic;using UnityEngine;public class StackNode{ public T data; public StackNode prev;}public class StackCustom where T : new(){ public StackNode .. 2024. 12. 4. [멋쟁이사자처럼 부트캠프 TIL 회고] Unity 게임 개발 3기 11일차 목차자료구조연결 리스트(Linked List): 데이터 요소들을 순차적으로 연결한 자료구조각 노드는 데이터와 다음 노드를 가리키는 포인터로 구성메모리 상에서 연속적이지 않은 위치에 저장 가능구조Node : 데이터를 저장하는 기본 단위Data : 실제 저장되는 정보Next : 다음 노드를 가리키는 포인터(참조)null : 리스트의 끝을 나타냄종류단일 연결 리스트(Singly Linked List) : 각 노드가 다음 노드만을 가리킴이중 연결 리스트(Doubly Linked List) : 각 노드가 이전 노드와 다음 노드를 모두 가리킴원형 연결 리스트(Circular Linked List) : 마지막 노드가 첫 번째 노드를 가리켜 원형을 이룸장점동적 크기 : 필요에 따라 크기 조절 가능삽입/삭제의 효율성 :.. 2024. 12. 3. [멋쟁이사자처럼 부트캠프 TIL 회고] Unity 게임 개발 3기 10일차 목차자료구조정의: 데이터 요소들을 체계적으로 구조화하는 방식 목적데이터의 효율적인 저장과 검색메모리 사용 최적화알고리즘의 성능 향상주요 자료구조배열(Array)연결 리스트(Linked List)스택(Stack)큐(Queue)트리(Tree)그래프(Graph)해시 테이블(Hash Table)배열(Array): 동일한 데이터 타입의 요소들을 연속된 메모리 공간에 저장 장점빠른 요소 접근 : Index를 통한 O(1) 시간 복잡도 --> Random Access 가능메모리 효율성 : 연속된 메모리 할당으로 캐시 효율 높음간단한 구현 : 기본적인 프로그래밍 구조로 쉽게 사용 가능다차원 데이터 표현 : 행렬, 이미지 등의 데이터 표현에 적합※ 임의 접근(Random Access): 무작위로 뽑아서 출력하는 것을 의.. 2024. 12. 2. 이전 1 ··· 21 22 23 24 25 26 다음