전체 글

#1. 문제 https://www.acmicpc.net/problem/11780   #2. 풀이 1. 플로이드-워셜(Floyd-Warshall) [알고리즘]#2_길 찾기 알고리즘#1. 개념 1. 길 찾기 알고리즘[정의] : 길 찾기 알고리즘은 그래프 자료구조에서 출발점에서 도착점 사이의 경로를 탐색하는 알고리즘입니다. 노드와 노드 간 연결 관계를 나타내는 간선으로 구webddevys.tistory.com플로이드-워셜은 최단 경로 알고리즘으로 그래프의 전체-쌍 최단 경로를 찾는 알고리즘입니다. 플로이드-워셜 알고리즘은 총 3개의 중첩 for문을 통해 구현되며, 최악의 시간 복잡도는 O(n³)입니다. 주로, 플로이드-워셜은 주어진 문제에서 '경유 정점' 개념이 강조될 때 활용합니다. 2. 플로이드-워셜 중 ..
#1. 문제 https://www.acmicpc.net/problem/15683   #2. 풀이 1. 백트래킹 [알고리즘]#6_백트래킹[알고리즘]#6_백 트래킹 백 트래킹 알고리즘에 대해 알아보겠습니다.  Overview 개념예제 #0. 개념1. 백 트래킹백 트래킹 알고리즘은 문제 해결을 위해 여러 후보 해결책들을 점진적으로 탐색하webddevys.tistory.com백트래킹은 문제의 여러 후보 해결책들을 점진적으로 탐색하며, 현재 선택한 경로가 해결책으로 이어질 수 없다고 판단되면, 이전 단계로 돌아가 다른 후보 경로에 대한 탐색을 시도하는 방법입니다. 일반적으로, 재귀 DFS를 활용하여 구현됩니다. 2. DFS [자료구조]#6_그래프#0. 개념 1. 그래프?[정의] : 그래프는 노드와 간선들의 집합으..
#1. 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   #2. 풀이 1. deque [Basic C++] #68_deque[Basic C++] #68_deque C++의 STL에서 제공하는 deque 컨테이너에 대해 알아보겠습니다.  Overview 개념선언멤버 함수예제 #0. 개념1. 덱? [자료 구조]#0_선형 자료구조[자료 구조] #0_선형 자료구조 선형 자webddevys.tistory.comdeque은 C++의 STL에서 제공하는 순차 컨테이너로, 컨테이너의 양 쪽 끝에서 접근/삽입/제거 작업이 모두 가능해, 사용자에게 유연함을 제공합니다. ..
1. UI 성능 1. PaintPaint 함수는 Unreal Engine에서 UI 요소를 화면에 그리기 위해 호출됩니다. 이 함수는 위젯의 렌더링 정보를 Slate Element Batcher에 전달합니다. 위젯 트리의 상속 구조에서 Paint 함수는 모든 자손 위젯에 대하여 재귀적으로 호출되며, 각 위젯의 BP 함수 호출 및 Tick 함수를 호출합니다. 이 함수들은 Hit Test Grid(쿼드 트리로 위젯의 Hit Testing과 Navigation을 수행)의 재 빌드를 유발하며, 성능에 많은 영향을 끼칩니다. 더불어, 위젯 트리의 과도한 상속 구조는 CPU의 잦은 Vtable 접근을 유발하며, 캐시 미스가 발생합니다. *Unreal Insight의 Draw Window를 통해 확인 가능합니다.   ..
#1. UFUNCTION 매크로 1. 개념UFUNCTION()은 언리얼 엔진에서 C++ 함수를 엔진의 에디터에서 상호 운용이 가능하도록 해주는 매크로입니다. 이를 통해, C++ 환경에서 선언한 함수를 블루프린트에서 호출하거나, 정의하거나, 혹은 오버라이딩 할 수 있습니다. 2. 특징블루프린트와 C++간 상호 운용성 제공리플렉션 시스템 지원으로 런 타임에 함수 정보 접근 가능네트워크 리플리케이션, RPC 등 고급 기능 활성화 3. 종류BlueprintCallableBlueprintImplementableEventBlueprintNativeEventServerClientNetMulticastExec  #1. BlueprintCallable 1. 개념BlueprintCallable 키워드는 UFUCNTION ..
#1. 문제 https://www.acmicpc.net/problem/2156   #2. 풀이 1. DP [알고리즘]#5_동적 계획법[알고리즘]#5_동적 계획법 동적 계획 알고리즘에 대해 알아보겠습니다. Overview 개념 예제 #0. 개념 1. 동적 계획법(Dynamic Programming) 동적 계획법은 최적화 문제를 해결하는 데 사용되는 알고리즘 디webddevys.tistory.comDP는 주어진 문제의 입력 크기에 따라서 중복되는 하위 문제를 재귀적으로 해결하고, 이 결과 값들을 기억하는 것으로 중복 계산을 방지해 최적화를 수행하고, 결과적으로 최적 해를 찾아냅니다. 2. 3가지 경우 고려하여, dp [i]를 업데이트//@조건1: i-2, i-1 번째 와인 마시고, i 번째 와인 안 마시기=..
#1. 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  #2. 풀이 1. queue [Basic C++] #67_queue[Basic C++] #67_queue C++의 STL에서 제공하는 queue 컨테이너에 대해 알아보겠습니다. Overview 개념 선언 멤버 함수 예제 #0. 개념 1. 큐 [자료 구조]#0_선형 자료구조 [자료 구조] #0_선형 자료구조 선형 자료webddevys.tistory.comC++의 STL에서 제공하는 queue 컨테이너는 선입 선출 방식으로 동작하는 순차 컨테이너로, 한쪽 끝에서 삽입 작업, 다른 한쪽 끝에서는 제거 작..
#1. 문제 https://www.acmicpc.net/problem/5972   #2. 풀이 1. 다익스트라 [알고리즘]#2_길 찾기 알고리즘#1. 개념 1. 길 찾기 알고리즘[정의] : 길 찾기 알고리즘은 그래프 자료구조에서 출발점에서 도착점 사이의 경로를 탐색하는 알고리즘입니다. 노드와 노드 간 연결 관계를 나타내는 간선으로 구webddevys.tistory.com다익스트라 알고리즘은 단일-출발 최단 경로 알고리즘으로, 그래프 내 어떤 출발 정점으로부터 다른 모든 정점에 대하여 최단 경로 값을 찾는 알고리즘입니다. 다익스트라 알고리즘은 양수 가중치를 가지며, 순환 구조가 없는 그래프에서 활용 가능한 '단일-출발' 혹은 '단일-쌍' 최단 경로 알고리즘입니다. 2. 단일-출발 최단 경로 알고리즘 통해 ..
#1. 문제 https://www.acmicpc.net/problem/13325   #2. 풀이 1. 이진트리 [자료구조]#5_트리[자료구조]#5_트리 트리 자료구조에 대해 알아보겠습니다.  Overview 개념이진트리순회이진 탐색 트리균형 이진트리AVL 트리레드-블랙 트리Map, Set힙 #0. 개념1. 트리? [정의] : 트리는 1:n 관계의webddevys.tistory.com이진트리는 트리 자료구조의 한 종류로, 각 노드의 차수를 2 이하로 제한하여 전체 트리의 차수가 2 이하인 트리 자료구조입니다. 따라서, 이진트리의 각 노드는 왼쪽 자식 노드와 오른쪽 자식 노드를 가지며, 부모-자식 관계가 하위 레벨에서도 순환적으로 반복되는 계층 구조를 형성해, 전체 트리의 각 서브트리도 모두 이진트리가 됩니..
#1. 개념 1. 비동기 프로그래밍비동기 프로그래밍은 프로그램의 주 실행 흐름을 차단하지 않고, 작업을 병렬적으로 수행할 수 있게 해주는 프로그래밍 패러다임입니다. 이는 이전 작업의 완료를 기다리지 않고, 병렬적으로 작업들을 수행하며 프로그램의 응답성 향상과 리소스의 효율적인 활용을 목표로 합니다. 다만, 비동기 프로그래밍은 코드 복잡성 증가, 디버깅 어려움, 그리고 오 사용 시 발생하는 race condition 등의 몇 가지 단점 혹은 주의할 점이 있습니다.  2. 특징비 차단 실행: 시간이 오래 걸리는 작업을 호출한 뒤, 해당 작업의 완료까지 기다리지 않고 즉시 다음 작업을 실행합니다. 이를 통해, 프로그램의 응답성을 향상할 수 있습니다.병렬성: 여러 작업을 동시에 수행합니다. Promise/Fut..