반응형

알고리즘 공부

17장) 그래프 기본 개념 정리

# 그래프노드: 데이터를 표현하는 단위엣지: 노드를 연결하는 선트리도 그래프의 일종임.1. 유니온 파인드 - 그래프의 사이클이 성성되는지 판별하는 알고리즘 2. 위상정렬 - 사이클 없이, 방향이 있는 그래프 - 값이 유일하지 않다는 특징이 있음. - [예시] 1. 수강신청: 수학1 이수 후 수학2 이수 가능 2. 게임에서 아이템 구매시 선순위 아이템이 있어야지 후순위 아이템을 살 수 있음 → 방향은 있으나, 사이클은 없는 그래프 # 최단거리 알고리즘들3. 다익스트라 - 시작점이 있음. 다른 모든 노드로 가는 최단거리를 구하는 알고리즘 - 단, 음수 간선은 안됨 4. 벨만-포드 - 음수 간선도 허용함. - 그러나 이건 최단거리를 구하는 문제보다는, '음수 사이클이 있는가?'를 판별할 때 더 많이 ..

코딩테스트정리 2026.05.13 0
16장) 유클리드 호제법

# 유클리드 호제법MOD: 두 값을 나눈 나머지 값 (10 MOD 4 = 2) == (10 % 4 = 2)MOD로 구현하는 유클리드 호제법큰 수를 작은수로 나누는 MOD 연산을 수행한다.앞 단계에서의 작은수와 MOD 연산 결과값(나머지)로 MOD를 수행한다.단계 2를 반복하다가 나머지가 0이 되는 순간의 작은 수를 최대공약수로 선택한다.gcd( ) → 최대공약수 구하기# 손 풀이 예제1 # 손 풀이 예제2 # 최소공배수 구하기(백준 1934)문제두 자연수 A와 B에 대해서, A의 배수이면서 B의 배수인 자연수를 A와 B의 공배수라고 한다. 이런 공배수 중에서 가장 작은 수를 최소공배수라고 한다. 예를 들어, 6과 15의 공배수는 30, 60, 90등이 있으며, 최소 공배수는 30이다.두 자연수 A와 ..

코딩테스트정리 2026.05.12 0
15장) 오일러피

# 오일러피 P[N]: 1부터 N까지 범위에서 N과 서로소인 자연수의 개수 - 서로소란?) 두 개의 수 사이에서 공통되는 약수(공약수)가 1밖에 없는 것. # 문제 해결 접근은 에라토스테네스의 체와 비슷하게 접근오일러피 범위만큼 배열을 자기자신의 인덱스 값으로 초기화한다.2부터 시작해 현재 배열의 값과 인덱스가 같으면(=소수일 때) 현재 선택된 숫자(k)의 배수에 해당하는 수를,배열의 끝까지 탐색하며 P[i] = P[i] - P[i]/k 연산을 수행한다. (i는 k의 배수)배열의 끝까지 2를 반복하며 오일러피 함수를 완성한다.k로지정되는기준 → ϕ[k] == k(k가 아직 어떤 작은 소수의 배수로도 갱신되지 않았다.)즉, 위의 2번에서 "현재 배열의 값과 인덱스가 같으면(=소수일 때)"에 해당

코딩테스트정리 2026.05.11 0
14장) 그리디 알고리즘, 소수 구하기

# 그리디 알고리즘그리디 알고리즘의 수행 과정해선택 - 현재 상태에서 가장 최선이라고 생각하는 해 선택적절성 검사 - 현재 선택한 해가 전체 문제의 제약조건에 벗어나지 않는지 검사해검사 - 현재까지 선택한 해집합이 전체 문제를 해결할 수 있는지 검사. 만약 전체 문제를 해결하지 못한다면 1로 돌아가야함.그리디 알고리즘은 최적의 해를 보장하지 않는다는 이슈가 있다. # 소수 구하기소수: 1과 자기자신 이외에 약수가 존재하지 않는 수소수구하기 - 에라토스테네스의 채구하고자 하는 범위만큼 1차원 배열 생성2부터 시작하고, 현재 숫자가 지워지지 않을 때는 현재 선택된 숫자의 배수에 해당하는 수를 배열에서 끝까지 탐색하면서 지운다. 이 때 처음으로 선택된 숫자는 지우지 않는다배열의 끝까지 2를 반복한 후 배열에 ..

코딩테스트정리 2026.05.07 0
13장) 너비우선탐색(BFS), 이진탐색

# 너비우선탐색(BFS)그래프 완전탐색 중 하나시작 노드를 기준으로 가까운 노드를 먼저 방문하면서 탐색하는 알고리즘BFS는 선입선출(FIFO)탐색으로, 큐를 이용해 구현해야함.탐색 시작노드와 가까운 노드를 먼저 탐색 후, 목표 노드에 도착하는 경로가 여러개일때 최단 경로를 보장함1. BFS를 시작할 노드를 정한 후 사용할 자료구조 초기화하기BFS도 DFS와 동일하게 방문한 노드는 재방문하지 않음 → Visit 배열 필요.그래프를 인접리스트로 표현 → DFS와 동일BFS는 큐 사용 (DFS는 스택 사용했었음) 2. 큐에서 노드를 꺼낸 후 꺼낸 노드의 인접 노드를 다시 큐에 삽입 3. 큐 자료구조에 값이 없을 때까지 반복 # 이진 탐색데이터가 정렬되어 있는 상태에서 사용 가능대상 데이터의 가운데 값과, 찾..

코딩테스트정리 2026.05.06 0

Master를 위한 공부

more

[논문리뷰 ICLR] AnimateDiff: Animate Your Personalized Text-to-Image Diffusion Models without Specific Tuning

AnimateDiff: Animate Your Personalized Text-to-Image Diffusion Models without Specific Tuning 1. About AnimateDiff기존의 다양한 Text-to-Image diffusion 모델을 fine-tuning 없이 애니메이션 생성기로 전환하기 위한 일종의 모듈이라고 보면 된다.즉, 기존의 T2I 디퓨전 모델에 사전 학습된 motion module(AnimateDiff)을 plug-and-play 형태로 삽입해 애니메이션 생성 가능하다고 한다.2. Background & Motivation Limitation of Previous Approaches and Key Differentiation최근 Text-to-Image dif..

Paper Review 2025.10.17 0

R 프로그래밍에서 결측치(NA) 처리 및 연산 방법

결측치(NA) 처리R 프로그래밍에서 결측치(missing value)는 NA(Not Available)라는 문자로 처리됩니다. 또한, NaN(Not a Number)은 분모를 0으로 나누는 것과 같이 계산이 불가능한 경우 출력되는 문자입니다. 이 글에서는 NA를 처리하는 방법과 결측치가 포함된 데이터에 대한 연산 방법을 알아보겠습니다. 1. 결측치의 기본 이해R에서 결측치는 NA로 표시됩니다. 예를 들어, 다음과 같은 벡터 y가 있을 때:y  is.na() 함수는 벡터에 결측치가 존재하는 경우 TRUE를 반환합니다.is.na(y)# [1] FALSE FALSE FALSE TRUE 결측치가 포함된 벡터 y에 대해 요약 통계를 구하면 다음과 같이 결과에 NA's 항목이 포함됩니다.summary(y)# Mi..

AI & Computer Science 2024.09.01 7

통계적 이상치 탐지: R을 활용한 단계별 가이드

이상치란?통계에서 이상치(outlier)는 데이터 샘플에서 관측된 값이 다른 관측값들과 큰 차이를 보일 때를 의미합니다. 이는 데이터의 가변성 때문일 수 있으며, 경우에 따라 잘못된 실험으로 인해 발생한 에러일 수도 있습니다. 후자의 경우 데이터 분석 이전에 반드시 이상치를 제거해야 합니다. 이 포스팅에서는 R 프로그래밍을 활용해 다양한 이상치 검출 방법을 알아보겠습니다. 0. 데이터 샘플링이상치 검출 테스트를 위해 이상치가 포함된 데이터를 생성해보겠습니다.1) 데이터 생성정규분포를 따르는 100개의 데이터를 생성하고, 그 중 일부 데이터에 이상치를 추가합니다.data 2) 데이터 분포 시각화생성된 데이터의 분포를 시각화하여 이상치를 확인합니다.hist(data, breaks=20, probability..

AI & Computer Science 2024.09.01 1

DICOM (DCM) 이미지를 PNG, JPG로 변환하기

의료 영상 데이터를 활용한 머신러닝 학습을 위해 DICOM 파일을 PNG나 JPG와 같은 이미지 포맷으로 변환해야 할 때가 많습니다. 예전에 어떤 라이브러리를 사용했는지 기억이 나지 않아 다시 찾아보니, 간단하면서도 강력한 패키지를 발견했습니다. 바로 mritopng입니다. mritopng 패키지 소개mritopng는 DICOM 파일을 PNG 포맷으로 손쉽게 변환할 수 있는 파이썬 패키지입니다. 설치와 사용법이 매우 간단하며, 폴더 내의 모든 DICOM 파일을 일괄적으로 변환하는 기능도 지원합니다. mritopng 설치 방법먼저 GitHub에서 소스 코드를 다운로드합니다: mritopng GitHub Repository.다운로드한 zip 파일을 압축 해제합니다.터미널(콘솔)에서 다음 명령어로 패키지를 설..

AI & Computer Science 2024.09.01 3

DeLong’s Test를 활용한 AUC 비교: Python 구현 가이드

머신러닝과 딥러닝 모델을 평가할 때, AUC(Area Under the ROC Curve)는 중요한 성능 지표 중 하나입니다. 특히, 두 모델 간의 성능을 비교할 때는 단순히 AUC 값을 비교하는 것 이상으로, 그 차이가 통계적으로 유의한지를 확인하는 것이 중요합니다. 이를 위해 DeLong’s test라는 강력한 통계 검정 방법을 사용할 수 있습니다. 이번 포스트에서는 Python을 사용하여 DeLong’s test를 구현하는 방법과 그 작동 원리에 대해 설명하겠습니다.  DeLong’s Test란? DeLong’s test는 두 개의 ROC(Receiver Operating Characteristic) 곡선의 AUC를 비교하여 두 모델 간의 성능 차이가 통계적으로 유의한지를 평가하는 방법입니다. 이 ..

AI & Computer Science 2024.08.30 11

잡다한 지식들

more

[내돈내산] LG 울트라기어 34G600A 34인치 160Hz WQHD 게이밍모니터 구매후기

요즘 컴퓨터 앞에 앉아있는 시간이 많아지다 보니까 모니터 욕심이 조금씩 생기더라구요. 원래 쓰던 모니터도 못 쓸 정도는 아니었는데, 게임할 때 화면이 조금 답답하게 느껴지기도 하고 작업할 때 창 여러 개 띄워놓으면 공간이 부족한 느낌이 계속 있었어요. 그래서 이번에 큰맘 먹고 구매한 제품이 바로 LG 울트라기어 34G600A 34인치 게이밍모니터입니다. 일단 제가 보고 구매한 포인트는 34인치 와이드 화면, WQHD 해상도, 160Hz 주사율, HDR, 스테레오 스피커 이 정도였고요. 게이밍 모니터라고 해서 게임만 보고 산 건 아니고, 평소에 인터넷 창 여러 개 띄워놓거나 영상 보고 작업할 때도 확실히 넓은 화면이 있으면 편하겠다 싶어서 선택했어요. 결론부터 말하면 설치하고 처음 켰을 때 화면이 넓어서 ..

Hardware 2026.06.16 2

[윈도우 자동로그인 설정] 윈도우 자동 로그온 설정이 보이지 않을 때 해결방법

1. 실행창 – netplwiz 에서 상태 확인원래라면 저 빨간박스 위치에 "사용자 이름과 암호를 입력해야 이 컴퓨터를 사용할 수 있음(E)" 이렇게 떠야한다. 근데 요즘 윈도우10이던 윈도우 11이던 관계없이 레지스트리 편집을 안해주면 저 박스가 나오지를 않는다. 2. 레지스트리 편집하기컴퓨터\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\PasswordLess\Device 경로로 이동> DevicePasswordLessBuildVersion 의 값 데이터를 0으로 수정 3. 다시 netplwiz 에서 체크 박스 활성화 확인체크 해제 후 "적용" 버튼을 누르면 비밀번호를 요구하는데, 비밀번호를 입력하면 끝난다. 4. 재부팅 시 계정..

Windows Setting 2026.01.14 1

[Ubuntu] 삼바(Samba)를 설치해서 홈 NAS를 만들어보자 (하드 자동 마운트 방법)

홈 나스를 우분투로 구축해놓고 쓰는데, 가끔 포맷할때마다 설정을 까먹어 매번 찾아보는 나를 위해 글을 쓴다. 지금 홈 나스로 2TB용량의 컴퓨터를 두고 있는데, 원래는 운영체제를 하드에다가 동시에 설치했었다.이렇게 하면 단점이, 시스템 자체가 HDD에서 동작하므로 NAS접속과 무관하게 계속 하드가 읽기/쓰기 모드로 작동한다는거다. 따라서 이번에 USB에 우분투를 부팅가능하게 해놓고, 2TB HDD는 온전하게 데이터 저장용으로 설정하고자 우분투를 싹 밀었다. 그러나,,, 우분투는 부팅 디스크 이외의 추가적인 디스크는 자동 마운트가 안되는것이다. 따라서 이번 포스팅에서는1. 우분투에서 추가적인 하드디스크 자동 마운트2. samba설정 이렇게 진행해보려고 한다. 우분투에서 추가적인 하드디스크 자동 마운트 ..

Linux Setting 2025.11.10 0

유용한 프로그램들

[GPU드라이버] RTX Titan 드라이버 566.36버전 (이유없는 블루스크린, 셧다운 등등...)

연구실에서 사용하는 워크스테이션의 그래픽카드가 RTX Titan인데, 연식이 꽤 있어 드라이버를 최신버전으로 설치하면 이슈가 생긴다. 보통 딥러닝 학습에 주로 사용하는데 이유없이 재부팅된다거나, 프리징된다거나, 블루스크린 등...윈도우 로그를 확인해보면 Kernal-Power라고 뜨지만 GPU문제임이 거의 확실한거같다. 우선 엔비디아 GPU 드라이버 버전중에 가장 안정적이라고 평가되는 566.36버전으로 드라이버를 다시 깔았다.https://www.nvidia.com/ko-kr/geforce/drivers/results/237721/ 시스템을 위한 다운받기. 출시" data-og-host="www.nvidia.com" data-og-source-url="https://www.nvidia.com/ko..

Software | Utils 2025.10.17 0
[소프트웨어] CrystalDiskMark 크리스탈 디스크 마크 (SSD 속도측정 프로그램, HDD 속도측정, 저장장치, 외장하드 속도, USB, 무설치, Zip 파일)

새로운 저장장치를 구매하면 내가 산 제품의 속도가 궁금할 것입니다. 윈도우의 탐색기에서 파일을 옮겨가며 속도를 직접 확인할 수 있지만, 객관적이게 확인하긴 어렵다는 단점이 있습니다. 저장장치(SSD, HDD)의 속도를 확인하기 위해선 프로그램을 사용해야 하는데, 이때 가장 범용적으로 사용되는 소프트웨어가 크리스탈 디스크 마크입니다. 크리스탈 디스크 마크는 간단한 몇번의 클릭으로 아주 간편하게 저장장치의 속도를 확인할 수 있다는 장점이 있습니다. ※ CrystalDiskMark 다운로드 바로가기 ※ Download - Crystal Dew World [en] (crystalmark.info) Download [2023/07/12] CrystalDiskInfo 9.1.1 – Manual / History S..

Software | Utils 2023.08.11 0
[소프트웨어] CrystalDiskInfo 크리스탈 디스크 인포 (하드디스크 수명 확인, SSD, HDD, 배드섹터, 하드디스크 가동시간, 무설치, Zip파일)

하드디스크나 SSD는 소모품입니다. 소모품의 특성상 수명이 다하면 속도가 느려지고, 작동이 원할하지 않을 수 있습니다. 내 HDD 또는 SSD의 수명이 얼마나 남았는지 궁금할땐 소프트웨어를 이용하여 확인해주어야 하는데, 이때 가장 범용적으로 사용되는 프로그램이 크리스탈 디스크 인포입니다. 크리스탈 디스크 인포는 무료 소프트웨어이며, 몇번의 클릭으로 간단하게 저장장치의 수명을 확인할 수 있습니다. ※ CrystalDiskInfo 다운로드 바로가기 ※ Download - Crystal Dew World [en] (crystalmark.info) Download [2023/07/12] CrystalDiskInfo 9.1.1 – Manual / History Standard Edition 4 themes / 5..

Software | Utils 2023.08.11 0
[소프트웨어] 기가바이트 그래픽카드 LED색 변경 프로그램 GIGABYRE OC GURU (기가바이트 GTX 980TI LED 색 변경, 그래픽카드 오버클럭, GPU 오버클럭, 기가바이트 LED색 변경)

기가바이트의 그래픽카드중 RGB를 지원하는 제품의 경우 RGB색 변경이 가능합니다. 이 프로그램의 경우 원래 GPU 오버클럭을 위해 나온 프로그램이지만, 여기선 LED 색상 변경을 위주로 다뤄보도록 하겠습니다. 엔비디아의 GTX 980 TI는 2015년에 출시된 제품으로, 출시된지 꽤 된 제품입니다. 하지만 아직 현역으로 사용하기 충분할 만큼의 성능을 제공하므로 쓸만합니다. ※ 기가바이트 OC GURU 다운로드 ※ https://www.techspot.com/downloads/downloadnow/7105/?evp=24a796b8044ffe51090c8278f048157d&file=9346 Gigabyte OC Guru OC Guru II from Gigabyte is all-in-one utility ..

Software | Utils 2023.08.10 0
[소프트웨어] CpuZ 다운로드 (컴퓨터 CPU 확인, 그래픽카드 확인, 컴퓨터 부품 확인, 무설치, Zip파일)

컴퓨터를 사용하다보면 내 컴퓨터에 무슨 부품이 사용되었는지 확인해야할 때가 있습니다. 윈도우 10 및 11의 경우 작업관리자에서 간단하게 확인할 수 있지만, 보다 상세하게 부품의 정보를 알 수는 없습니다. 이때 필요한것이 컴퓨터 부품을 확인해주는 프로그램이며, CpuZ를 많이 사용합니다. ※ HWmonitor 다운로드 바로가기 ※ CPU-Z | Softwares | CPUID CPU-Z | Softwares | CPUID CPU-Z on x86 is a freeware that gathers information on some of the main devices of your system : Processor name and number, codename, process, package, cache le..

Software | Utils 2023.08.10 0
반응형