Dev Notes

[알고리즘] 이진 탐색(이분 탐색, Binary Search)

이분 탐색 (이진 탐색, Binary Search) 이진 탐색은 정렬된 배열에서 특정한 값의 위치를 찾아내는 탐색 알고리즘이다. 이 알고리즘의 기본 원리는 탐색 범위를 반으로 줄여가며 데이터를 찾는 것이며, 이 과정을 반복함으로써 검색 속도를 향상시킨다. 이진 탐색은 선형 탐색에 비해 훨씬 빠른 $O(\log n)$의 시간 복잡도를 가...

[선형대수학] 행렬의 곱셉(Matrix Multiplication)

행렬의 곱셉 (Matrix Multiplication) 행렬의 곱셈을 알아야하는 이유는 다음과 같다. 데이터 표현: 머신러닝에서 데이터를 행렬로 표현하며, 행렬 곱셈을 사용해 데이터를 변환하고 분석한다. 선형 변환 적용: 선형대수에서 행렬은 선형 변환을 나타내고, 행렬 곱셈으로 이 변환을 적용한다. 신경망 연산: 신경망에서 행렬 곱셈을...

[선형대수학] Introduction

머신러닝을 위한 선형대수학 왜 선형대수학을 알아야 할까? 행렬이라고 하면 고등학생 시절부터 익히 들어왔지만, 교육과정에서 빠지면서 배우지 못했고 대학에 입학한 후 개념도 모르는 상태에서 수업에서 쓰이는 바람에 인터넷을 뒤져가며 혼자 공부를 해본 적은 있지만 체계적으로 배운적이 없어 늘 내 마음 속 한구석에 불편하게 남아있는 존재였다. 그렇지만 선형...

[알고리즘] 버블 정렬(Bubble Sort)

버블 정렬 거품이 유리잔 바닥에서 올라오는 것처럼 정렬 과정에서 큰 값이나 작은 값이 배열을 통해 거품(Bubble)처럼 상승하거나 이동한다고 해서 버블 정렬이다. 간단하지만 비효율적인 알고리즘이라 실제로 많이 쓰이지는 알고리즘인데 코딩테스트에서 이 알고리즘을 쓴다면 높은 확률로 시간초과가 나올 것이다. 보통 알고리즘을 공부하지 않고 문제를 냅...