#1. 개념 1. 정의 nth_element 알고리즘은 C++ 표준 라이브러리에서 제공하는 알고리즘으로, 주어진 범위 내에서 n번째 요소를 찾아 n번째에 위치시키고, 이 요소보다 작은 모든 요소를 해당 위치 왼쪽(앞으로), 반대로 큰 모든 요소를 해당 위치의 오른쪽(뒤쪽으로)으로 이동시키는 부분 정렬을 수행합니다. 이 알고리즘은 전체 컬렉션을 정렬하는 것보다 효율적이며, 특정 위치의 요소만 필요할 때 유용합니다. 2. 헤더 #include 3. sytax // 기본 사용법 void nth_element(RandomIt first, RandomIt nth, RandomIt last); // 사용자 정의 비교 함수를 사용하는 버전 void nth_element(RandomIt first, RandomIt n..
#1. 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #2. 풀이 1. BFS, 너비 우선 탐색 [자료구조]#6_그래프 #0. 개념 1. 그래프? [정의] : 그래프는 노드와 간선들의 집합으로 이루어진 비 선형 자료구조입니다. 그래프의 노드들은 간선을 통해 연결되어 일종의 네트워크를 형성합니다. 그래프는 노드와 webddevys.tistory.com BFS(너비 우선 탐색)은 그래프의 모든 정점을 탐색하는 방법 중 하나입니다. BFS는 현재 정점과 인접한 정점들을 우선적으로 탐색합니다. 일반적으로, BFS는 큐 자료구조를 활용하여 구현합니다. 2. ..
#1. 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #2. 풀이 1. 깊이 우선 탐색 [자료구조]#6_그래프 #0. 개념 1. 그래프? [정의] : 그래프는 노드와 간선들의 집합으로 이루어진 비 선형 자료구조입니다. 그래프의 노드들은 간선을 통해 연결되어 일종의 네트워크를 형성합니다. 그래프는 노드와 webddevys.tistory.com DFS(깊이 우선 탐색)은 그래프의 모든 정점을 탐색하는 방법 중 하나입니다. DFS는 출발 정점으로부터 더 이상 확장 불가능한 단말 노드까지 우선 탐색하는 방법입니다. 일반적으로, DFS는 재귀 호출 혹은 스택..
#1. 개념 1. 게임 개발의 '충돌' 게임 개발에서 '충돌'은 게임 객체 간의 상호작용을 결정하는 핵심 요소 중 하나입니다. 일반적으로, 사각형-사각형 충돌, 원-원 충돌, 그리고 원-사각형(생략) 충돌 감지 방법이 활용됩니다. 특히, '사각형' 간 충돌 감지에 활용되는 알고리즘으로 AABB(Aligned-Axis Bounding Box)와 OBB(Oriented Bounding Box) 방식을 활용합니다. #2. 사각형 충돌 1. AABB(Aligned Axis Bounding Box) 충돌 1. 개념 AABB는 축에 정렬된 경계 상자를 의미합니다. 이는 모든 면이 X,Y, 그리고 Z과 평행한 정육면 모양의 상자, 3D 공간에서 객체를 감싸는 데 사용되는 상자입니다. AABB는 고정되어 회전하지 않고..
#1. 개념 트라이(Trie)는 검색 트리의 일종으로, 주로 문자열 검색에 사용되는 자료구조입니다. 트라이 검색 트리의 각 노드는 문자열의 특정 문자를 나타내며, 자식 노드에 대한 링크(배열 혹은 맵)를 가지고 있는 트리 자료구조 중 하나입니다. #2. 동작 방식 1. 검색 트라이 검색 트리에서 특정 문자열을 검색할 경우, 해당 문자열의 각 노드를 트라이 검색 트리의 루트 노드를 시작으로 순차적으로 탐색합니다. 만약, 해당 문자열의 각 문자를 나타내는 노드를 모두 성공적으로 찾고, 그 끝에 문자열의 끝을 나타내는 마커가 존재하면, 해당 문자열은 트라이 검색 트리에 존재합니다. 2. 삽입/삭제 트라이 검색 트리에 새로운 문자열을 삽입할 때, 트리의 루트 노드부 시작하여 각 문자에 해당하는 노드를 순차적으로..
#1. 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #2. 풀이 1. 우선순위 큐 [자료구조]#7_우선순위 큐 [자료구조]#7_우선순위 큐 우선순위 큐 자료구조에 대해 알아보겠습니다. Overview 개념 구현 참고 #0. 개념 1. 우선순위 큐 정의 : 우선순위 큐(Priority Queue)는 원소들이 우선순위에 따라 정렬된 연결 webddevys.tistory.com 우선순위 큐는 원소들이 우선순위에 따라 정렬된 연결 자료구조입니다. 우선순위 큐는 삽입 순서와 무관하게, 우선순위가 가장 높은 원소가 먼저 제거되는 특징을 갖고 있습니다. 일반적..
#1. 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #2. 풀이 1. 트라이 검색 트리 // 링크 추가 2. unorderd_set 컨테이너 [Basic C++] #29_Set, STL 컨테이너 [Basic C++] #29_Set, STL 컨테이너 C++ 개발에서 STL 컨테이너에 대해 알아보겠습니다. C++가 제공하는 STL 컨테이너 중 Set과 MultiSet을 살펴보겠습니다. #0. 개념 1. 개념 Set은 STL에서 제공하는 연관 컨테이 webddevys.tistory.com unordered_set 컨테이너는 중복을 허용하지 않는 연관 컨..
#1. 문제 Input Component 혹은 Character Movement Component에 대한 별도의 사용자 정의 함수 및 변수들을 추가하기 위해 이들을 상속하는 하위 클래스를 선언할 수 있습니다. 하지만, 미리 정의된 액터 컴포넌트들을 두고 캐릭터 객체에 이들의 하위 컴포넌트들을 추가적으로 붙이기 애매한 상황. #2. 해결 1. 생성자 변경 UCLASS() class AGEOFWOLVES_API APlayerCharacter : public ACharacterBase { public: // Sets default values for this character's properties APlayerCharacter(const FObjectInitializer& ObjectInitializer);..
#1. 문제 Unreal Engine에서 제공하는 "UE_LOG" 매크로는 코드 작성 시 특정 이벤트/오류 발생 원인을 파악하기 위해 활용됩니다. 이때, 로그에 출력될 내용을 한글로 작성하게 될 경우, 알 수 없는 외계어로 로그가 출력되는 문제가 발생합니다. #2. 해결 1. save wtih encoding 헤더 파일 혹은 cpp 파일 열기 Visual Studio 오른쪽 상단의 'File" 드롭다운 메뉴 선택 현재 열려있는 파일에 대한 "~ save as" 선택 "Save" 버튼 옆 드롭 다운 메뉴 열기, 그리고 "Save with Encoding" 선택 2. Unicode (UTF-8 without signature) "Encoding" 드롭다운 메뉴 선택 "Unicode (UTF-8 without..
#1. 브랜치 구조 - main, develop, feature 1. main - Final Productmain 브랜치는 배포 용 최종 코드가 관리되는 브랜치입니다. 임의의 코드를 push 하는 것이 불가능하고, 적절한 프로세스를 거쳐 최대한 깔끔하고, 완성된 코드만 push 하도록 합니다. 2. develop - Factorydevelop 브랜치는 실질적으로 개발이 진행되는 브랜치입니다. 각 Issue로부터 파생된 작업물들이 PR을 통해 reveiwer들로부터 Approval(승인)을 받으면 develop 브랜치로 최종 merge 됩니다. 3. feature - Unit Taskfeature 브랜치는 발행된 Issue와 연계하여 develop 브랜치로부터 파생되는 브랜치입니다. 쉽게 말해, 각 팀원..