알파고 이후 인공지능에 대한 요구가 커지고 있고,또한 이에 대한 개발자에 대한 요구도 많아지고 있다. 110여개국 1,300개 이상의 대학에서 교제로 쓰이는 인공지능 바이블이라는"인공지능: 현대적 접근방식" 목차CHAPTER 1 소개 1 1.1 인공지능이란 무엇인가? 2 1.2 인공지능의 기반 학문 6 1.3 인공지능의 역사 20 1.4 인공지능의 현재 수준 35 1.5 요약 37 연습문제 39 CHAPTER 2 지능적 에이전트 43 2.1 에이전트와 환경 44 2.2 좋은 행동: 합리성 개념 46 2.3 환경의 본성 51 2.4 에이전트의 구조 58 2.5 요약 73 연습문제 76 CHAPTER 3 검색을 통한 문제 해결 79 3.1 문제 해결 에이전트 80 3.2 문제의 예 86 3.3 해답의 검색 ..
두 개의 문자열 비교 함수에 대해 작성해 보자. 배열int strcmp_1(char *str1, char str2) {int i;for(i=0;str1[i]==str2[i];i++) {if(str1[i] == 0)return 0;}return str1[i] - str2[i];} 포인터int strcmp_2(char *str1, char str2){while(*str1==*str2){if(*str1 == 0)return 0;str1++;str2++;}return *str1 - *str2;}
문자열 복사하는 함수. 배열을 사용하면 아래와 같이 할 수 있다.void strcpy_1(char *src, char *dst){int i =0;while((dst[i]=src[i]) != 0)i++;} 포인터로 사용시 아래와 같이 할 수 있다.void strcpy_2(char *src, char *dst){while((*dst =*src) != 0) {dst ++;src ++;}} 이것을 아래와 같이 간단한 코드로 구현 가능하다.void strcpy_3(char *src, char *dst){while(*dst++=*src++);}
Character string input을 역순으로 변환하는 함수. 기본 흐름은 아래와 같이 생각할 수 있다.1. String input의 길이를 구한다.2. 처음과 끝의 문자를 swap하고, 중간까지 반복. 배열 형태로 구현시char* strrev_1(char* str){int startIdx, endIdx;if(!str || !*str) return (char *)-1;startIdx = 0;endIdx = strlen(str)-1;while(startIdx
문자열의 길이를 구하는 함수에 대한 코드 예제임. 간단히 배열형태로 구현시 아래와 같이 구현할 수 있다. int strlen_1(char *str) { int i; for(i=0; str[i] != 0; i++); return i; } 이를 포인터 연산의 형태로 바꾸면 아래와 같이 개선할 수 있다.int strlen_2(char *str) { char *tmp = str; while(*tmp != 0) tmp ++; return tmp - str; }여기서 아래와 같이 수정할 경우 변수 참조 빈도를 줄일 수 있다.int strlen_3(char *str) { char *tmp = str; while(*tmp++); return (tmp - 1) - str; }
- Total
- Today
- Yesterday
- 미국달러하이일드
- 카라이프
- T카라이프
- vim
- 전국은행연합회
- 게릿
- 티카라이프
- 월세혁명
- 조영환
- 메타세콰이어길
- 월지급식
- Gerrit
- 먹통
- 하이일드
- 호이안
- 외화송금수수료
- insertionsort
- 메타세쿼이어길
- 삽입정렬
- 외화수취수수료
- 에센스
- Linux
- 담양
- 블랙록
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |