일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Snn
- MNIST
- 이상 탐지
- 뉴럴네트워크
- Deep Learning
- rnn
- map
- Wavelet Transform
- autoencoder
- 머신러닝
- 인공신경망
- Spiking Neural Network
- Bagging
- 이상 현상 탐지
- Deep Neural Network
- Generative Model
- 머신러닝 논문리뷰
- 논문 해석
- anomalydetection
- 논문리뷰
- Fast Fourer Transform
- MLE
- 기계학습
- ML
- 딥러닝
- Python
- Machine Learning
- 논문 리뷰
- ae
- 레이텍
- Today
- Total
목록Algorithm (6)
MATH & ML
1. for문에 따른 내용이 한줄이여도 for문 밑에 다음줄로 넘겨서! 대신 괄호는 생략해서2.if문으로 경우를 나눌때 A경우일때만 실행을 하고싶으면 if(~A)면 return; 으로 처리해서 if문 전체를 끝내버릴수 있도록 한다.return; 을 잘 활용해서 함수를 딱 그 시점에 종료하는걸로 사용하면 좋다.3. 딱 정확히 2가지로만 나뉘는 경우 if(A) a else b 는 삼항연산자로 A? a:b 로 써주면 좋다.(예시)int factorial(int number){ return (!number) ? 1 : number * factorial(number-1);}
정렬 알고리즘 중 몇 가지 유명한 것들을 정리해보자. 1. 삽입정렬왼쪽의 이미 정렬된 리스트에 그 다음 수를 삽입한다. 이 방식으로 왼쪽 끝부터 오른쪽 끝까지 진행한다.최악 : O(n^2) 2. 선택정렬왼쪽의 이미 정렬된 리스트를 제외한 나머지 중 가장 작은 수를 정렬된 리스트 바로 다음(바로 왼쪽) 수와 바꾸어준다. 이 방식으로 왼쪽 끝부터 오른쪽 끝까지 진행한다.최악 : O(n^2)3. 버블정렬이웃한 둘을 모두 비교하여 왼쪽 둘 부터 오른쪽에 큰수가 가도록 순서를 모두 바꾼다. 그렇게 되면 가장 큰 수가 제일 오른쪽에 가게된다. 이 방식을 반복한다.최악 : O(n^2) 4. 병합정렬전체 리스트를 딱 반으로 나눠 각각에 대해 병합정렬을 한다. 그렇게 하다보면 모두 하나의 데이터를 가지는 리스트가 될 것..
알고리즘 문제에서는 항상 이 2가지 제한이 걸려있고 그 제한내에 문제를 해결하는 것이 중요하다.즉 알고리즘을 짤 때 이 2가지 제한에 대한 감을 미리 잡는것이 중요하다. 1. 시간 제한시간 제한에서는 연산을 10^8번 정도 해야 1초가 걸린다는 사실을 알고 있으면 된다. 연산을 몇 번 실행하게 될지 어림짐작으로 계산하여 시간제한을 잘 지킬 수 있는지 미리 생각하고 그에 맞게 여러 생각을 해보는 것이 중요하다. 그 연산을 실행하게 될 때 시간복잡도를 O(n)에대한식)으로 계산해보고 이를 이용하여 시간을 예측해보는것도 좋은 방법이다.예를 들어 O(n^2)이면 n이 10^4보다 작아야 되겠다 하며 생각하는거고O(n^3) -> n n
컴파일이란 프로그래밍 언어로 작성된 코드를 컴퓨터 이해할 수 있는 0, 1로 이루어진 기계어로 번역해주는 과정이다.그런 컴파일을 해주는 도구가 컴파일러인데 우리가 잘아는 visual studio가 컴파일러이다. 언어의 종류에는 크게 2가지 컴파일언어 와 인터프리터언어 가 있다. 1. 컴파일 언어컴파일을 하게되면 실행 가능한 파일이 생성되는데 이 과정을 번역과정리하고 하고, 이 번역된 파일을 실행하는 순서로 진행이 된다.C, java, c++등이 컴파일 언어이다. 단점은 컴파일이 달라질때마다 소스코드고 조금씩 그에 맞게 바뀌어야 하기 때문에 여러 프로세서들을 자유롭게 옮겨다니며 사용되기 힘들다.2. 인터프리터 언어컴파일언어와는 다르게 번역과 실행이 동시에 줄 단위로 일어난다. 소스코드를 한줄 한줄 읽어들이..