--------------------****19 KMP알고리즘 코드로 이해하기 InitNext(char *p) { int i, j, M; M = strlen(p); next[0] = -1; for(i = 0,j = -1; i = 0 && p[i] != p[j]) j = next[j]; } 이번에 살펴볼 내용은 KMP알고리즘을 코드로 확인해 보는 것입니다. 패턴은 지난번과 마찬가지로 ababbaaa입니다. 따라서 M=strlen(p)에서 M은 8이 됩니다. InitNext()를 보면, next[0]=-1이 들어가 있습니다. 그리고 for()안쪽을 확인해보면 다음과 같습니다. for(i = 0,j = -1; i = 0 && p[i] != p[j]) j =.. 2019. 12. 23. KMP 알고리즘/개선된 KMP 알고리즘 & next[]의 FSM 다이어그램 KMP알고리즘 코드를 간단히 확인 후, 어떻게 next[]를 채우는지 알아보자. 우선은 어떻게 KMP에 접근할 것인지 표로 관찰해보고, 그 다음에는 코드로 익혀보도록 하자. int KMP_Search(char *p, char *a) { int i, j, M, N; M = strlen(p); N = strlen(a); InitNext(p); //패턴(p)로 next[] 초기화하는 함수 for(i = 0, j = 0; j = 0 && a[i] != p[j]) j = next[j]; if(j == M) return(i-M); else return(N); } InitNext(char *p) { int i, j, M; M = strlen(p); next[.. 2019. 12. 21. 알고리즘 공부했던 방법 2019. 12. 14. mysql mariaDB 백업 cmd실행시 좌클릭대신 우클릭해서 관리자모드로 들어감 명령어 >mysqldump -u계정 -p비밀번호 DB명 > 백업파일명.sql 2019. 12. 9. java cmd에서 실행 cmd에서는 bin파일 위치에서 실행하기 예) >cd 파일경로\workspace\project이름\bin >javac 파일명.java >java 파일명 2019. 12. 9. java와 cmd cmd에서 자주 쓰는 명령어 cd : 해당 폴더위치로 전환 dir : 어떤 파일들이 있는지 확인 javac 메인이들어있는클래스명.java : 컴파일 java 메인이들어있는클래스명 : 자바파일 실행 javac 메인이들어있는클래스명.java -encoding UTF-8 : 한글깨짐으로 인해 컴파일 불가능한 경우(특히 주석) 한글이 깨지지않게 인코딩 2019. 12. 9. Java Applet 자바 애플릿 보호되어 있는 글 입니다. 2019. 12. 9. java awt.*; draw3DRect(), fill3DRect(), drawPolygon() 참고 draw3DRect(), fill3DRect()할 때, 백그라운드색과 테두리색이 같으면 볼록한것처럼 보여지지가 않는다.따라서 도형의 색을 백그라운드색과 다른 값으로 준다면, 볼록함을 시각적으로 확인할 수 있다.draw3DRect()에서 사각형의 좌측과 상단의 테두리는 흰색 느낌이고, 우측과 하단의 테두리는 어두운 회색느낌. drawPolygon()에서는 매개변수에 주의해야 하는데, 처음에 x와 y좌표에 해당하는 int타입의 배열을 선언해주고, 값을 정해준다.int[] x = new int[4]; int[] y = new int[4];x[0]=710;x[1]=810;x[2]=710;x[3]=810; //폴리곤의 x좌표들. 이 배열의 인덱스에 있는 값의 위치로 이동하며 그립니다. y[0]=10;y[1]=10.. 2019. 11. 26. java cmd에서 실행시, 오류: 기본 클래스 을(를) 찾거나 로드할 수 없습니다. 오류: 기본 클래스 **을(를) 찾거나 로드할 수 없습니다.오류가 발생하는 경우, java에서 프로젝트 생성시 package로 만들어졌는지 확인하기.package로 만들어진 경우 cmd에서 패키지로 만들어지지 않은 경우랑 실행명령이 다른것같다.만약 안된다면 패키지 없애고 해보기 혹은 환경변수 설정을 제대로 안해줬거나 C드라이브에서 바로 하면 안될수도 있다는 글을 보긴 했다. 2019. 11. 26. 이전 1 2 3 다음