코딩

· 코딩/JS
https://github.com/react-grid-layout/react-grid-layout/blob/master/test/examples/11-no-vertical-compact.jsx GitHub - react-grid-layout/react-grid-layout: A draggable and resizable grid layout with responsive breakpoints, for React. A draggable and resizable grid layout with responsive breakpoints, for React. - GitHub - react-grid-layout/react-grid-layout: A draggable and resizable grid layout wi..
퀵 정렬(quick sort)은 기준값(pivot)을 기준으로 작거나 같은 값을 지닌 데이터는 앞으로, 큰 값을 지닌 데이터는 뒤로 가도록 하여 작은 값을 갖는 데이터와 큰 값을 갖는 데이터로 분리해가며 정렬하는 방법이다. 양쪽에 포인트를 잡고, 정렬 기준에 맞는지를 판단하여 맞지않는 점끼리 스왑한다. 스왑이 끝나면 pivot을 기준 위치에 넣어준다. 재귀 voidft_swap(int *l_arr, int *r_arr) { int tmp; tmp = *l_arr; *l_arr = *r_arr; *r_arr = tmp; } voidquick_sort(int *arr, int start, int end) { ints_pnt; inte_pnt; intpivot; s_pnt = start; e_pnt = end..
· 코딩/etc
1) 무엇일까? 유클리드 알고리즘은 두 수의 최대공약수(gcd)를 계산하는 알고리즘 중 하나이다. 유클리드 호제법이라고도 하는데 같은 의미이다. 확장된 유클리드 알고리즘은 특정 a와 b에 대해서 as + bt = gcd(a,b)인 s와 t를 구하는 알고리즘이다. 2) 선후관계 확장된 유클리드 알고리즘은 유클리드 알고리즘을 사용하기 때문에, 유클리드 알고리즘을 먼저 알고 있어야 이해할 수 있다. 3) 유클리드 알고리즘 유클리드 알고리즘은 최대공약수의 두가지 기초 성질을 이용한 알고리즘이다. a(나눠지는 수) = q(몫) * b(나누는 수) + r(나머지) 이라 할 때 (필수조건 : a >= b) 1. gcd(a, 0) = a 이다. 2. gcd(a, b) = gcd (b, r) 4) 유클리드 알고리즘 - ..
· 코딩/R
Data Frame 다수의 벡 터가 열단위로 묶인 것 매트릭스와의 차이점은 매트릭스는 전체가 같은 데이터타입이어야했고 그 자체가 하나라면 데이터 프레임은 벡터 여러개가 묶인 것으로 벡터 하나하나 마다 다른 데이터타입을 가질 수 있다. 데이터 프레임은 무조건 열 이름(변수명)이 존재한다. 매트릭스는 열 이름을 붙이지 않아도 인덱스로 나타낼 수 있었지만 데이터 프레임은 무조건 열 이름이 있어야하며 지정되지 않으면 임의로 이름을 부여한다. #data frame 선언하기 #vector 벡터 생성 후 데이터프레임 만들기 myVector1
· 코딩/R
Matrix 행렬 | 벡터가 1차원적 자료구조라면 matrix는 2차원적 자료구조이다. help 명령어를 통해 사용방법을 익힐 수 있다. 행렬내의 모든 요소는 같은 데이터타입으로 선언되어야하고, matrix[행, 열]로 표현하며, 행전체를 부르고 싶으면 matix[행, ] 열전체를 부르고 싶으면 matrix[, 열]로 나타내면 된다. #matrix 선언하기 #1. myVector
· 코딩/R
Vector 어떤 값들의 묶음 ex) 출석부 출석 번호 1 2 3 이름 김미나 오민수 장기수 출석번호 한 줄이 한 벡터이고, 이름 한 줄이 한 벡터이다. 하나의 벡터에는 같은 데이터 타입만 들어갈 수 있고, 각 벡터는 값이 들어있는 순서대로 인덱스로 나타낼 수 있다. 일반 프로그래밍 언어와는 달리 벡터의 인덱스는 1부터 시작한다. (출석부[1] = 1, 이름[1] = 김미나) R에서는 모든 변수들이 벡터 취급되고, 기본 적인 연산도 모두 벡터 연산으로 이루어진다. vector1 = [1, 2, 3, 4] vector2 = [2, 4, 6, 8] vector1 + vector 2= [3, 6, 9, 12] 길이가 다른 벡터의 경우는 어떻게 연산될까? 1. 길이가 배수인 경우 vector1 = c(1, 2,..
· 코딩/R
강의를 한번 쭉 듣고 언젠간 정리해야지하며 까먹고 있다가 곧 강의가 끝나가길래 이제서야 정리한다... 3달만에 만나니 참 반갑다. 처음 듣는거 같은 느낌 ㅎㅎ 기본 데이터 타입 Numeric : 숫자형 변수 (정수, 실수) Integer : 숫자형 변수 (정수만) Double : 숫자형 변수 (실수만 저장, Integer의 2배의 메모리를 잡아먹음) Character : 문자형 변수 (따옴표로 묶어 표시) Logical : 논리형 변수 (참, 거짓 둘 중 하나) Factor : 카테고리형 변수 (여러 개 중 하나, 키-밸류 묶어 저장) 아래의 코드는 실습 내용이다. (cmd + enter을 누르면 한칸씩 적용된다) #변수 선언하기(변수의 종류) #numeric 타입 변수 one
· 코딩/R
1. 듣게 된 이유 메일함을 보다가 이런 광고를 발견했다. 받은 메일 강의링크 R로 배우는 데이터 시각화 기초 아직도 엑셀만? 데이터 분석을 위한 필수 언어 R taling.me 선착순 + 무료에 참지 못하고 바로 신청했는데 그게 됐다. R을 알려주는 것 같았는데 대충 데이터 관련된 언어라고만 들어보기만 했지, 실제로 보거나 써본 적은 없었다. 별생각은 없었고 이 참에 배워보지 싶었다.(사실 안될거라 생각해서 더 별 생각 없었다) 총 4시간 40분이고 35강이니까 1강에 평균 8분씩이다. 하루에 5강씩 30분 정도만 들어도 일주일이면 끝난다. *참고로 맥에서 탈잉을 들을 때 스크린 캡처를 종료해야 들을 수 있다. (녹화 중이 아니더라도 이전에 사용했다면 활성 상태 보기에서 강제 종료를 해 주어야 한다. ..
continue와 break문을 배우는 도중 예시 코드를 보고 있는데, 이걸로 소수를 출력할 수 있지 않을까 싶었다. 그래서 강의를 멈추고 소수를 출력하는 코드를 만들어 봤다. 로직은 간단하다. 1. num에 숫자를 넣어 소수가 되는 것만 bottle에 담는다. 2. 출력한다. 좀 자세히 쓰면 1) bottle[0]에 제일 작은 소수 2를 담는다. 2) 2가 이미 bottle에 담겨있기 때문에 num은 3부터 시작한다. 3) while문을 이용해 num을 bottle 안에 있는 소수들로 한 번씩 나눠본다. 4) 나눠지면 소수가 아니므로 함수를 탈출하고 num++; 5) 안 나눠지면 num = 소수이다, bottle의 끝자락에 bottle[i]가 위치하게 되고, num출력과 bottle[i]에 num담기 ..
구구단을 for문을 이용해 나타내면 아래와 같다. for (cur = 2; cur < 10; cur++) { for (i = 1; i < 10; i++) { printf("%d * %d = %d \n", cur, i, cur * i); } printf("\n"); } 위와 같은 코드를 짜면 2~9단까지 출력이 된다. 여기서 특정행만 출력하고 싶다면 if로 조건을 주고 continue문을 이용해 특정 조건을 건너뛰면 된다. 예를 들어 짝수단만 나타내고 싶다면 for (cur = 2; cur < 10; cur++) { if (cur % 2 != 0) continue; for (i = 1; i < 10; i++) { printf("%d * %d = %d \n", cur, i, cur * i); } printf..
HEOM
'코딩' 카테고리의 글 목록