반응형

알고리즘 공부

CHAPTER 4. 효율적인 탐색 & 우선순위 (우선순위 큐, 이진 탐색)

데이터의 양이 많을 때(N >= 100,000) 선형 탐색(O(N))으로는 시간 초과를 피할 수 없다. 이때 탐색 시간을 O(log N)으로 대폭 줄여주는 우선순위 큐(Heap)와 이진 탐색(Binary Search)을 핵심 메커니즘 및 필수 템플릿으로 볼 수 있다. 4-1. 우선순위 큐 (Heapq)들어온 순서와 상관없이 항상 최솟값(또는 최댓값)을 최상단(O(1))에 유지하며, 새로운 원소 추가 및 제거 시 O(log N) 만에 트리를 재정렬하는 자료구조임. 1. 최소 힙(Min-Heap) 기본 사용법 파이썬의 heapq 모듈은 기본적으로 가장 작은 수가 맨 위에 오는 최소 힙으로 동작.import heapq# 1. 빈 리스트 생성 및 heappush로 원소 추가heap = []heapq.heappu..

CHAPTER 3. 핵심 선형 자료구조 (큐, 스택, 해시)

데이터를 일렬로 나열하여 관리하는 선형 자료구조 중 코딩테스트에 매번 출제되는 큐(Queue), 스택(Stack), 해시(Hash/Dict)의 성능적 차이와 시그니처 활용 패턴을 다뤄보고자 한다. 3-1. 큐 (Queue & Deque)가장 먼저 들어온 데이터가 가장 먼저 나가는 선입선출 (FIFO, First-In First-Out) 구조. 1. 왜 list.pop(0) 대신 deque.popleft()를 써야 하는가? list.pop(0) (O(N)): 맨 앞 원소를 빼면 뒤에 있는 모든 원소들이 앞으로 한 칸씩 이동해야 하므로 데이터가 많을 때 시간 초과의 주범이 됨.deque.popleft() (O(1)): 양방향 연결 리스트 구조로 되어 있어 위치 이동 없이 맨 앞 원소를 즉시 제거함.from ..

CHAPTER 2. 탐색 & 탐색 알고리즘 (격자, BFS, DFS)

본 챕터에서는 코딩테스트 탐색 문제의 80% 이상을 차지하는 격자(2D 배열) 탐색, BFS(너비 우선 탐색), DFS(깊이 우선 탐색)의 핵심 원리와 필수 템플릿 코드를 다뤄보고자 한다. 2-1. 격자 탐색 & 방향 벡터2차원 배열 grid에서 상,하,좌,우로 이동할 때 x, y 축 좌표 변화를 테크닉화한 것임. 1. 방향 벡터 가산 원리 (dx, dy) 행(row)을 x, 열(column)을 y라 할 때, 4방향 이동 시 변동되는 좌표값을 리스트로 미리 선언함.# 상, 하, 좌, 우 (순서는 상관없으나 쌍을 맞춰야 함)dx = [-1, 1, 0, 0]dy = [0, 0, -1, 1]# 현재 위치 (x, y) = (2, 2)일 때 4방향 다음 위치(nx, ny) 구하기x, y = 2, 2for i in..

CHAPTER 1. 실전 대비 & 필수 문법 (전략 & 기본 도구)

SKT 개발직군에 지원하게 되면서 이제 진짜 코딩테스트를 준비해야할 때가 왔다. 그러나 사실상 노베이스나 마찬가지라, 상당히 시간이 제한적인 상태이다. 지금 본 게시글을 올리는 시점에서 약 5일정도밖에 시간이 주어지지 않은 상황이나 마찬가지다. 그래서 최소한의 시간투자로 최대한의 결과물을 얻어보고자 아주 필수적인 코딩테스트 기초부터 진행해보고자 한다. 우선 챕터는 4가지로 나눠보며, 이 4개 챕터동안 코딩테스트의 아주 기초를 잡고자 한다. 단, 어느정도 파이썬을 썼던 사람이라고 가정하고 4개 챕터로 나누었다. 이후에는 프로그래머스로 해당 챕터에서 다루었던 기초를 실제 적용해보는 시간을 가져보고자 한다. 본 게시글은 챕터 1을 다루고 있으며, 아래 목차 순서대로 포스팅을 이어나갈 예정이다.- 목차 개요 C..

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
반응형