2025/03/12 3

[알고리즘] Recursion 2

문자열의 길이 계산if the string is empty return 0;else return 1 + the length of the string that expcludes the first character;수도 코드 형태로 적은 것입니다. 받은 문자열에서 첫글자를 뗀 나머지 분자열을 받는 것입니다.  int length(char *str){ if (*str == '\0') return 0; else return 1 + length(str + 1);} 문자열의 프린트void printChars(char *str){ if (*str == '\0') return; else { printf("%c", *str); printChars(str + 1); }} 문자열을 뒤집어 프린트void ..

[알고리즘] Recursion

순환이란? Recursion자기 자신을 호출하는 함수void func(...){ ... func(...); ...}  int main() { int result = func(4);}int func(int n) { if (n==0) return 0; else return n + func(n-1);}    무한루프에 빠지지 않으려면 Base case 즉 적어도 하나의 recursion에 빠지지 않는 경우가 존재해야 합니다.  단순하게 base case가 무한루프에 빠지지 않는다고 볼 수는 없으며 Recursion을 반복하다 보면 Base case로 반드시 수렴해야 된다는 것입니다.  Recursion의 대표적인 예 : factorial: n!0! = 1n! = n * (n-1)..

[인공지능] 인공신경

인공신경자극을 전달받고 전달하는 것  단순화해서 표현을 할 수 있습니다.  자극이 와서 얼마나 전달할지 정해지는 것입니다. 노드가 받은 것을 출력할 때는 0, 1로 출력을 합니다. 입력값은 어떤 자극이 들어오냐에 따라 변할 수 있는 변수입니다.  노드( 빨간 원 ) 에서 전달할지 말지 정하는 것입니다. 들어오는 값이 어느정도 이상이면 1, 아니면 0을 출력하는 방식으로 진행됩니다. 양수가 들어오면 1, 음수가 들어오면 0이 들어온다고 가정을 해봅시다.  어떤 Input에 따라서 상황이 다를 것입니다. Weight의 역할은 어떠한 중요도의 역할을 하는 것입니다. Input에 똑같은 1을 곱해주는 것이 아닌 중요한 부분에 가중치를 높여주는 작업이 필요합니다.  노드와 엣지로 이루어져 있는 것이 인공신경입니다..