본문 바로가기

분류 전체보기113

# 0. VSCode C++ 환경설정 https://sourceforge.net/projects/mingw/files/ MinGW - Minimalist GNU for Windows - Browse Files at SourceForge.net × sourceforge.net 위 링크에서 최신 버전의 MinGW.exe을 다운로드한다. 그 다음 다운로드 받은 실행파일을 펀쿨섹좌 빙의하여 continue 하고 다음과 같은 4개의 패키지를 체크한다. 체크하는 방법은 우클릭 후 "Mask for Installation"을 클릭하면 된다. 체크를 마치면 좌측 상단의 Installation 탭의 Apply Change를 클릭한 후, 새로 뜬 창에서 Apply 버튼을 누르면 된다. 그리고 환경변수를 지정할 차례이다. Windows 10 검색에서 "시스템 .. 2021. 6. 14.
# 2. LU 분해 (LU Decomposition) https://dev-ryuon.tistory.com/46 # 1. 가우스 소거법 (Gauss Elimination) [서론] 선형 시스템은 해를 가지는 케이스가 총 3가지로 나누어진다. 1. 해가 하나인 경우 - x=2 인경우에만 성립한다. ex) 3x = 6 2. 해가 여러개인 경우 - 어떠한 x를 대입하더라도 성사된다. ex) 0x = 0 dev-ryuon.tistory.com 이 포스트는 가우스 소거법에 대해 숙지하고 보시는 것을 추천합니다. 이론 LU 분해는 Gauss Elimination 을 행렬이라는 자료구조로 표현한 것을 의미한다. 숫자는 인수분해가 가능하다. 행렬도 숫자와 마찬가지로 분해가 가능하다. 행렬을 분해하는 방법에는 대표적으로 세 가지가 있다. LU Decomposition QR.. 2021. 6. 13.
# 1. 가우스 소거법 (Gauss Elimination) https://dev-ryuon.tistory.com/45 # 0. 선형 시스템 (Linear System) [이론] 중고등학교때 다들 '함수'라는 개념은 익히 알고있을 것이다. 함수는 방정식으로써 표현이 가능하고, 미지수가 적을 경우 수기로도 충분히 해를 구할 수 있다. 하지만, 방대한 양의 데이 dev-ryuon.tistory.com 이 포스트는 선형 시스템에 대해 숙지하고 보시는 것을 추천합니다. 이론 선형 시스템은 해를 가지는 케이스가 총 3가지로 나누어진다. 1. 해가 하나인 경우 - x=2 인경우에만 성립한다. ex) 3x = 6 2. 해가 여러개인 경우 - 어떠한 x를 대입하더라도 성사된다. ex) 0x = 0 3. 해가 존재하지 않는 경우 - 어떠한 x를 대입하더라도 성사되지 않는다. ex.. 2021. 6. 10.
# 0. 선형 시스템 (Linear System) 이론 중고등학교때 다들 '함수'라는 개념은 익히 알고있을 것이다. 함수는 방정식으로써 표현이 가능하고, 미지수가 적을 경우 수기로도 충분히 해를 구할 수 있다. 하지만, 방대한 양의 데이터들의 상관관계를 수학으로 표현하기란 쉽지 않다. 우리는 이러한 상관관계를 파악하고 해를 구하기 위해 선형 시스템이라는 개념을 숙지해야 한다. 선형 시스템이란 선형 방정식 (Linear Equation)들의 집합이다. 선형 방정식은 말 그대로 직선형태의 함수 즉, 1차 함수 방정식을 의미한다. 예를 들어보자. $3x + y + z = 4$ $x - 2y - z = 1$ $x + y + z = 2$ 다음과 같이 세 가지 방정식이 있다. 각각의 방정식은 Linear Equation이 된다. 그리고 미지수(Unknow, Var.. 2021. 6. 10.
# 15. [Tip] chunk 리스트를 원하는 원소 수대로 묶는 방법! from math import ceil def chunk(lst, size): return list(map(lambda x: lst[x * size:x * size + size], list(range(0, ceil(len(lst) / size))))) 좀 복잡해보이는 방법.. math 모듈의 ceil (올림) 메소드를 사용하여 구현한 것이다. 좀더 깔끔하게 짤 수 있는 방법을 알아보겠다. def chunk(lst, n): return [lst[i:i+n] for i in range(0, len(lst), n)] 파이썬의 슬라이싱을 활용하여 간결하게 구현할 수 있다! 2021. 6. 2.
# 14. dictionary setdefault, defaultdict 그동안 여러모로 일이 많아서 포스트가 미뤄졌습니다.. (--) (__) 그동안 새로 알게된 사실들을 차근차근 정리하고자 한다.. 우선 딕셔너리에 기본값을 설정하는 깔끔한 방법부터 정리하겠다! 이번 포스트에서 다룰 내용은 크게 두 가지이다. 첫 번째는 setdefault() 메소드를 활용하여 단일 키값에 대한 기본값 설정, 두 번째는 defaultdict 컬렉션을 활용하여 대입되는 키값에 대한 기본값 설정이다. 바로 코드로 확인해보겠다. # setdefault 를 알기 전, 각 키별로 기본값을 설정하는 방법 def set_default_value(): d = dict() keys = [1, 2, 3, 4, 5] for k in keys: d[k] = list() print(d) 만약 각 키값에 리스트를 기.. 2021. 5. 28.