목록Basis (25)
Adore__
Source : Inflearn - 'Do it! 알고리즘 코딩테스트 파이썬' 정렬의 종류는 버블, 선택, 삽입, 퀵, 병합, 기수 총 6가지가 있다. Bubble sort ▪️특징 - 인접한 데이터의 크기를 비교해서 정렬하는 방법이다. - 시간 복잡도가 O(n^2)으로, 다른 정렬 알고리즘에 비해 느리다. ▪️방법 첫번째 원소부터 인접한 원소와 크기를 비교한다. 만약 i+1 원소보다 i 원소가 더 크면, 둘이 순서를 바꿔준다. 이렇게 1번부터 N번까지 돌아가면서 바꿔주다보면, 가장 마지막원소는 가장 큰 원소가 된다. 이게 1번의 루프이다. 위 그림에서 파란색 박스는 이미 정렬된 데이터로, 다음 루프에서는 제외된다. 루트 한번을 돌 때는, 모든 원소들을 하나하나 체크해가며 순서를 바꿔야 하기때문에 n번 ..
Source : inflearn 'Do it! 알고리즘 코딩테스트 with python' Array & List 배열 메모리의 연속 공간에 값이 채워져 있는 형태의 자료구조 장점) 값을 index를 통해 직접 접근이 가능하다 단점) 새로운 값의 삽입 혹은 특정 index의 값을 삭제하기 어려움. 메모리가 연속적으로 붙어있다 보니, 삽입 삭제를 하려면 근처 값을 이동시키는 것이 필요 배열의 크기를 한번 선언하면, 이후에 수정할 수 없다. (크기를 늘리거나 줄일 수 없다.) 리스트 노드 (값-pointer) 단위로 연결된 자료구조이다. 다음 노드는 pointer가 가리킨다. 단점) index가 없으므로 head부터 순서대로 접근해야 한다. 따라서 속도가 매우 느리다. 장점) pointer로 연결되어 있어서 ..
Source : Inflearn - 'Do it! 알고리즘 코딩테스트 with python' 사실 알고리즘은 코드로 구현해보는 게 가장 공부가 잘 되는 것 같다. 따라서 이 카테고리는 그냥 이론 공부한 날 일기처럼 혼잣말 하는 그런...느낌.. 절대로 이 글은 지식 전달 목적이 아니니 이 점 유의하시길 바랍니다 ㅎ헤 Time Complexity 보통 컴퓨터는 1초에 2000만개 수행 최악의 상황을 고려했을때도 잘 수행되어야 함 따라서 Big O 시간복잡도를 따지자 (최악의 상황) 코드 안에서 가장 중첩되는 부분 (for문, while문..)을 찾아서 간단하게 바꿔야 한다. [알고리즘] Time Complexity (시간 복잡도) - 하나몬 ⚡️ Time Complexity (시간 복잡도) Time Com..
Source : [BoostCourse '인공지능을 위한 선형대수' - 주재걸 교수님] ▪️Onto 전사 함수는 치역과 공역이 같은 함수를 말한다. 즉, y의 원소들에서 무작위로 한개를 뽑아도, 반드시 이를 가리키는 x가 존재하는 함수이다. 최소한의 필요조건 : X정의역 원소의 개수 >= Y 공역의 원소의 개수 하지만 반대로 X의 원소의 개수 decoder과 같은 모델 구조를 생각해보면 작은 차원에서 기하급수적인 넓은 차원으로 변환하는 과정이 많다. 이 또한 '함수'의 개념이므로, input으로부터 만들어지는 정보 (치역)가 공역의 모든 영역을 설명할 수 없다. 예를들어 얼굴 사진이..
Source : [BoostCourse 인공지능을 위한 선형대수 - 주재걸 교수님] 먼저 우리에게 익숙한 함수의 조건을 인지하고 시작하자 위와 같이 한 정의역이 동시에 두개의 y값을 갖는 것은 함수라고 할 수 없다. ▪️Linear Transformation 선형변환 Linear Transformation이란, case 1) input들을 선형결합 -> 함수에 넣기 -> 나온 output case 2) input을 먼저 함수에 넣음 -> output들로 동일한 선형결합을 수행 이 case 1 값과 case 2 값이 항상 같게 만드는 transformation을 선형 변환이라고 한다. 위 문제에서는 4x1 + 5x2 = 4T(x1) + 5T(x2)를 만족하므로 선형변환이라고 할 수 있다. 여기서 문제! y..
Source : [BoostCourse 인공지능을 위한 선형대수 - 주재걸 교수님] '닫혀 있다'라는 말은 무엇일까? 먼저 '곱셈'에 닫혀있다는 말은, S = {a,b,c,d,..} 가 있을 때 S의 어떤 두 원소의 곱으로도 다른 원소를 표현할 수 있는 것을 말한다. ▪️Subspace 부분공간 이를 벡터의 부분집합으로 옮겨서 생각해보면, S 집합 안에 여러 벡터들이 있을 때, 어떤 벡터들의 선형결합으로도 다른 원소벡터를 표현할 수 있으면 이 집합은 '선형결합'에 닫혀 있다. 공간의 부분 집합으로 S = {[1,2,3],[5,4,2]} 이 있을 때, Subspace의 조건은 모든 원소 벡터들이 선형 결합에 닫혀있어야한다. 만약 선형결합으로 표현하지 못하는 하나의 원소벡터라도 있으면 이는 '닫혔다'라고 말..