Hack my life
*이 글은 책 Clean Code를 기반으로 작성하였습니다.*Java 문법을 알고 있어야 이해하기 쉽습니다. 1. 프로그래밍 명명 규칙을 배워야 하는 이유 프로그래밍을 할 때 이름이 굉장히 많이 쓰인다. 변수에도 이름을 붙이고, 함수, 임수, 클래스, 패키지 에도 이름이 필요하다. 심지어 소스파일, 소스파일이 담긴 디렉터리에도 이름이 필요하다. 이렇게 이름이 많이 쓰이므로 이름을 잘 지으면 프로그래밍을 할 때 아주 편하다. 2. 의도를 분명히 밝혀라 조금 시간이 들더라도 이름을 지을때는 그 것의 존재 의도, 기능, 사용법이 잘 드러나게 지어야 한다. 1int d; //경과 시간(단위: 날짜)cs d 라는 이름은 그 자체만 봤을 때 아무 의미도 드러나지 않는다. 다음과 같이 바꿀 수 있다. 1234int ..
핸즈온 머신러닝 3장 실습중 12from sklearn.datasets import fetch_mldatamnist = fetch_mldata("MNIST original")cs 다음과 같이 실습 데이터를 다운받는 과정에서 오류가 생겼다 해결방법은 먼저http://mldata.org/repository/data/download/matlab/mnist_original.mat이 링크에서 데이터 셋을 다운받는다.//2019-02-26 사이트가 접속이 안된다.. 데이터 파일을 첨부하겠다 12from sklearn import datasetsdatasets.get_data_home()cs 이 코드를 통해 data_home의 위치를 알아낸다. 나같은 경우는'C:\\Users\\(사용자 이름)\\scikit_lear..
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970#include #include #include using namespace std; const int INF = 987654321, MAXN = 12;int c, n, k, m, l;//n:전공과목수 k:들어야할과목의수 m:학기의수 l:최대로들을수있는과목의수int prerequisite[MAXN];int classes[10];int cache[10][1 n >> k >> m >> l; for (int i = 0; i > r; for (int j = 0; j > temp; ..
123456789101112131415161718192021222324252627282930313233343536373839#include #include #include #define INF 100000000using namespace std; int dp[16][1
안녕하세요. 이번 글에선 비트마스크의 개념과 사용법, 그리고 간단한 예제를 알아보도록 하겠습니다.시작하기 전에 비트마스크의 개념을 이해하기 위해서 비트의 표현법과 비트 연산, 보수연산 등을 알면 좋습니다. 1. 비트마스크란?현대의 모든 CPU는 이진수를 이용해 모든 자료를 표현합니다. 따라서 컴퓨터들은 이진법과 관련된 연산들을 아주 빠르게 할 수 있습니다. 이와 같은 특성을 이용해 이진수 표현을 자료구조(특히 집합)로 쓰는 기법을 비트마스크(bitmask)라고 합니다. 엄밀히 말하면 비트마스크는 자료구조의 한 종류라기보단 이진수 표현을 이용해 집합을 표현하는 하나의 테크닉이라고 할 수 있습니다. 2. 비트마스크를 쓰면 좋은 점(1) 빠른 수행시간 : 비트마스크 연산은 O(1)에 구현되는 것이 많기 때문에..