데이터 구조 - 직렬 과 kmp 알고리즘

1416 단어 데이터 구조
꿰미
4. 567917. 정의: 0 개 또는 여러 문자 로 구 성 된 유한 한 서열 이다
4. 567917. 문자열 의 순서 저장: a. 각 단원 에 한 글자 만 저장 하고 비 긴축 형식 (저장 밀도 가 작다) 이 라 고 합 니 다
  •                          b. 한 단원 에 여러 문 자 를 저장 하 는 것 을 긴축 형식 (저장 밀도 가 높다) 이 라 고 합 니 다

  • 4. 567917. 직렬 저장 소:
    4. 567917. 한 노드 는 여러 문 자 를 저장 할 수 있 고 링크 의 모든 노드 에 저 장 된 문자 개 수 를 노드 크기 라 고 부른다

     
    KMP 알고리즘 과 BF 알고리즘
    제목:
    【  】       SA SB,SA   ,SB   ,   SB     SA    。
                           ,    "NO" 
    【    】    SA(1 <=    <= 100 0000) 
       SB(1 <=    <= 1000) 
    【    】   SB SA                     ,    "NO" 
    【  1  】 aaaaabaa aab
    【  1  】 4 6 
    【  2  】 aaaaabaa aax 
    【  2  】 NO

    게 으 름 피 우 는 BF 알고리즘 사용:
    /**
    	 *      :   BP
    	 */
    	public static void firstWay(String SA, String SB) {
    		int start = 0;
    		int end = 0;
    		for (int i = 0; i < SA.length(); i++) {
    			if (SA.length() - i >= SB.length()) {
    				String substring = SA.substring(i, i + SB.length());
    				if (substring.equals(SB)) {
    					start = i;
    					end = i + SB.length();
    					System.out.println(start + " " + end);
    				}
    			}
    		}
    		if (start == 0 && end == 0) {
    			System.out.println("NO");
    		}
    	}

    String 의 방법 을 직접 빌 렸 습 니 다. 사실 궁 거 orz 까지 연습 한 것 을 느끼 지 못 했 습 니 다. 생각 이 많 지 않 지만.심지어 이게 KMP 알고리즘 의 하나 라 고 생각 할 정도 로??????????????????나 는 역시 제대로 이해 하지 못 했다.
     
    KMP 알고리즘:

    좋은 웹페이지 즐겨찾기