Software Development 378

메모_

[C] char *str와 char str[] 의 차이 C/C++ 2014/06/06 15:54 http://blog.naver.com/chhh92/220022245722 전용뷰어 보기 ​char *str와 char str[]은 문자열을 담기위해 사용합니다. 용도는 같더라도 담는 방법이 다릅니다. 잘 알고 상황에 맞게 문자열을 담으면 되겠습니다. 당연한 소리지만, char *str는 포인터고 char str[]는 배열입니다. 얼핏 보면 둘다 문자열을 담거나 작업할때 쓰여서 같아보일지라도, char *str도 char str[]처럼 "선언과 동시에 초기화"를 할 경우 확실하게 차이가 납니다. 우선 역할을 보면 char *str은 주소를 담고, char str[]은 값을 담습니다. 만약 선언과 동시에 초기화..

알고리즘 메모

- 잘하는 사람과 못하는 사람의 생산성 차이가 스무배- 대부분 컴퓨터 과학 교육 과정이 프로그래밍의 기술과 지식을 가르칠 뿐, 그것을 스스로 응용할 수 있는 능력을 주지 못하기 때문.- 대부분의 교과서에서는 발전 과정의 최종 결과물인 복잡한 개념과 도구를 먼저 제시하고, 그 개념의 이론에 대해 설명한 뒤, 곧장 연습문제를 풀도록 합니다. -> 이러한 방법은 학문 발전의 결과물에 대한 체계적인 지식을 학생에게 주입하는 데는 좋을지 몰라도, 문제의 답을 슷로 고안할 수 있는 학생을 기르기에는 턱없이 부족합니다. : 프로그래밍은 어려운 만큼 재미있는 작업이기도 합니다. 문제를 푸는 것도 그렇습니다. 문제가 풀리지 않을 때의 괴로움은 문제가 풀렸을 때의 기쁨과 그 과정에서 얻은 통차을 자신의 것으로 만들었을 때..

동적 계획법(Dynamic Programming)_1.개념

1. 동적 계획법(Dynamic Programming)이란?분할 정복과 같은 접근방식을 갖고 있습니다. 처음 주어진 문제를 더 작은 문제들로 나눈 뒤 각 조각의 답을 계산하고, 이 답들로부터 원래 문제에 대한 답을 계산해 내기 때문입니다. 차이가 발생하는 부분은 문제를 나누는 방식입니다. 부분문제가 여러번 사용될 수 있을 때 여러번 중복 계산하는 것이 아닌, 한번만 계산하고 저장해둬 재활용해 사용합니다. (a)서로 연관이 없는 부분문제 (b)서로 의존하고 있는 부분문제 (a)는 서로 연관이 없어 단순히 재귀 호출을 통해 문제를 풀어도 한 부분문제를 한 번만 해결합니다. (b)는 부분문제가 서로 의존하고 있어, 단순 재귀로 풀면 중복 계산이 많아집니다. 예를 들면 cde는 abcde를 해결할 때, cdef..

6. Matrices

행렬은 공간상의 한 점을 변환시킬 수 있는 수학적 도구이며, 행렬의 곱을 통해 여러 변환을 한꺼번에 적용할 수 있습니다. 1. 행렬 구조체 - D3DMATRIX : 4행 4열을 가지는 구조체 변수 typedef struct _D3DMATRIX { union { struct { float _11, _12, _13, _14; float _21, _22, _23, _24; float _31, _32, _33, _34; float _41, _42, _43, _44; }; float m[4][4]; }; } D3DMATRIX; - D3DXMATRIX : D3DMATRIX를 상속한 행렬 클래스, 행렬에 관한 오버로딩 연산자를 가집니다. #ifdef __cplusplus typedef struct D3DXMATRIX..