을 만들 수 있습니다. 알고리즘의 세부 사항은 here입니다. 이해 구현 내가 Karkkainen, P. 샌더스에 의해 선형 시간 접미사 배열 생성 알고리즘의 구현을 이해하려고 노력하고 접미사 배열 선형 시간
나는 전체 개념을 이해하는 데 성공하지만, 제공하는 구현 및 명확하게 파악 따라서 수 없습니다와 일치하도록 실패. 여기나를 혼동 초기 코드 경로입니다. 용지 당으로서
: 나 코드 당 3 내지 = (0,1,2)
를 개조에서 N0, N1, N2는 트리플렛의 개수가 시작 나타낸다 : N0 = (N + 2)/3, N1 =을 (n + 1)/3, n2 = n/3이고; 이 초기화는 어떻게 유도 되었습니까? ! 종이 당으로
: 우리는 i가 3 모드에서 세 쌍둥이의 연결입니다 T`를 작성해야 = 0 코드 당으로
: N02 =의 N0 + N2; s12 = [n02] ==> 어떻게 된거 야? n12, 즉 n1 + n2 여야합니다.
코드에 따라 : (int i = 0, j = 0, i < n + (n0 - n1); i ++) s12를 i % 3! = 0과 같은 세 쌍으로 채 웁니다. => for 루프가 n + (n0 - n1) 번 실행되는 이유는 무엇입니까? 그것은 단순히 n1 + n2이어야합니다. 그럴 수 없어?
나는 때문에 이러한 :(수 있도록 해주십시오 진행할 수 아니다
이전 답변이지만 접미사 배열 용지의 원본 코드를 이해하는 데 도움을주십시오. 나는 거의 3 일을 보냈다. 나는 그 개념을 이해했다고 믿지만 아직도 코드를 제대로 이해할 수 없다. 두 번째 단계에서 나를 도울 수 있습니까? – Naman
@Naman 알고리즘에서 종이 제목과 구체적인 단계/줄을 지정하면 기꺼이 도와 드리겠습니다. – ezorita
도와 주셔서 감사합니다. 사실 많은 노력 끝에 나는 거의 모든 것을 이해할 수있었습니다. – Naman