본문 바로가기

IT27

[알고리즘/C++] - 벨먼-포드(Bellman-Ford) 알고리즘 (웜홀 - 1865, 타임머신-11657) https://suin9643.tistory.com/94 [알고리즘] - SPFA (Shortest Path Faster Algorithm) (웜홀 - 1865) / 이게 BFS가 아니라 SPFA래안냐세요오랜만에 알고리즘으로 돌아왔습니다.오늘은 알고리즘을 먼저 공부한 게 아니라문제를 풀다가 새로운 알고리즘을 [발견!]해서 정리를 좀 해보려고 글을 썼다는 큰 차이가 있습니다.지suin9643.tistory.com 웜홀 문제를 풀던 평화로운 어느날..BFS로 문제를 해결하다가 자신도 모르게 SPFA를 통달한 그녀..하지만 그럼에도 시간초과의 벽을 넘지 못하고벨먼 포드 알고리즘이라는 새로운 알고리즘의 길을 떠나게 된다..그녀의 운명은 어떻게 될 것인가........ 오늘은 이어서 벨먼-포드 알고리즘에 대해서 .. 2025. 9. 10.
[개발] - 게임인재원 6기 2학기(프로그래밍) 후기 안녕하세요1학기가 끝나기 무섭게 2학기를 끝마치고..좀 쉬다가 돌아왔습니다거두절미하고 이번학기에 대한 후기를 작성해보겠읍니다. 1. 정규수업정규수업은 1학기와 진행 방식이 같지만 과목이 다릅니다. 위처럼 구성되어있습니다. 디지털모델링 중급이번 디지털모델링에서는 이전 학기에서 만들던 3D캐릭터를 이어서 만들어보고,이후에는 3D 캐릭터에 이미지를 입혀보는? 작업을 해보았습니다.추가적으로 본 (뼈대)를 이용하여 캐릭터를 움직여보는 작업도 간단하게 해보았고, 이 작업은 3학기로 넘어가서 더 자세하게 배우기로 되어있었습니다.디지털모델링은 끊임없는 코드의 향연 속에서 잠깐 쉴 수 있는 쉼터같은 존재입니다..교수님께서 항상 모르는 부분이 있는지 학생들 한 명 한 명을 체크하고 도와주면서 수업을 진행해주시고, 수업 내.. 2025. 7. 17.
[알고리즘/C++] - 이분 탐색(이진 탐색, Binary Search) 안녕하세요?안녕하세요?안녕하세요?안녕하세요?안녕하세요?안녕합니다.오늘 알아볼 알고리즘은 이분탐색입니다. 이분 탐색(이진 탐색, Binary Search): 오름차순으로 정렬된 리스트를 같은 크기의 두 부분 리스트로 나누고, 두 리스트 중 목표에 해당하는 숫자가 존재하는 리스트를 선택하는 과정을 반복하며 점점 탐색의 범위를 줄여나가는 방법 발그림이지만 (진짜발그림주의) 이해를 높이기 위해 제가 직접 그림을 그려왔습니다. 탐색 절차1. 오름차순으로 정렬된 리스트 하나를 준비합니다.2. 우리가 찾고자하는 값을 a, 리스트의 중간값을 b라고 가정하고 목표값과 리스트의 중간값을 비교합니다. 2-1. 만약 중간값 b가 a보다 크다면 중간값의 왼쪽에 해당하는 구간만을 검사하면 되고, 그 반대의 경우엔 오른쪽 구간을.. 2025. 6. 24.
IPC(Inter Process Communication) - 프로세스 간 통신 안녕허세염오늘 알아볼 내용은 IPC입니당이전에 공부한 바와 같이 우리가 알고있는 프로세스들은 각각 독립적으로 실행됩니다.이말은 즉슨 프로세스 각각은 다른 프로세스로 인해 영향을 받지 않는다는 말과 같습니다.하지만 이런 프로세스들 간에도 서로 통신을 해야하는 경우가 있습니다. 다른 프로세스의 자원을 읽어와야 한다던지.. 하는 경우가 종종 있습니다이때 나오는 개념이 바로 프로세스 간 통신수단인 IPC입니다!IPC(Inter Process Communication): 프로세스 간 통신을 가능하게 해주는 수단이 통신수단은 커널에 탑재되어있는 설비 수단입니다.IPC 통신에서는 프로세스 간의 데이터를 공유하는 과정에서 데이터가 손상되거나 문제가 발생하는 것을 막고, 동기화를 원활하게 돕기 위해 이전에 배웠던 세마포.. 2024. 12. 2.
데드락(DeadRock, 교착상태) 안녕하세요오늘은 데드락에 대해서 배워보겠습니다…..우우..햄드러요그래도어떠케해야지.데드락(DeadRock, 교착상태) : 두 개 이상의 프로세스나 스레드가 서로 자원을 얻지 못해 제대로 된 작동이 되지 않고 무한한 대기상태에 빠지는 현상자원이 한정적인데 비해 자원이 필요한 프로세스나 스레드의 개수가 자원의 개수에 비해 많은 경우에 교착 상태가 발생합니다.데드락이 일어나는 경우의 예를 간단하게 들어봅니다.프로세스가 2개가 있고, 각각의 프로세스는 자원 a와 자원 b를 모두 필요로 합니다.프로세스1은 자원1을 얻습니다.프로세스2는 자원1을 프로세스1이 가지고 있으므로, 자원1을 얻지 못하고 자원2를 얻습니다.두 프로세스는 각각의 자원을 하나씩 지니고 있지만 추가로 필요한 자원이 자기자신이 아닌 상대방에게 있.. 2024. 11. 24.
공유 자원을 보호하자 - 세마포어(Semaphore)와 뮤텍스(Mutex) 안녕하세욤 오늘 공부할 내용은 세마포어와 뮤텍스라는 개넘입니다!! 공유 자원의 보호이름이 참 거창합니다. 두가지는 모두 공유자원 보호를 위한 일종의 방법론들인데요 여러개의 프로세스가 실행되는 동안, 공유되는 자원들이 존재합니다. 이 공유되는 자원은 실행중인 프로세스들이 모두 접근 가능합니다. 다만, 여기서 모든 프로세스들이 동시에 같은 공유자원을 접근하고 수정하게 된다면? 이른바 경쟁 상태(Race condition)에 빠지게 될 수 있습니다. + 경쟁 상태(Race condition)와 임계구역 경쟁상태경쟁상태는 두 개 이상의 스레드나 프로세스가 공유 자원에 동시 접근하면서 실행 결과가 접근 순서에 따라 달라지는 상태를 말합니다. 임계 구역아무리 동시에 접근하더라도 경쟁상태에 빠지지 않는 데이터 (ex.. 2024. 11. 19.