Home | History | Annotate | Download | only in research

Lines Matching refs:lcp

54 void BuildLCP(input_type* storage, sarray_type* sarray, lcp_type* lcp,
60 lcp[size - 1] = 0;
70 lcp[pos[i]] = k;
75 inline void PrintReference(sarray_type* sarray, lcp_type* lcp, size_t size,
91 inline void GoLeft(sarray_type* sarray, lcp_type* lcp, int idx, int left_ix,
96 if (lcp[left_ix] < left_lcp) break;
103 inline void GoRight(sarray_type* sarray, lcp_type* lcp, int idx, size_t size,
108 if (lcp[right_ix] < right_lcp) break;
115 inline void StoreReference(sarray_type* sarray, lcp_type* lcp, size_t size,
120 GoLeft(sarray, lcp, idx, left_ix, left_lcp, &entries[idx]);
123 GoRight(sarray, lcp, idx, size, right_ix, right_lcp, &entries[idx]);
125 GoLeft(sarray, lcp, idx, left_ix, left_lcp, &entries[idx]);
126 GoRight(sarray, lcp, idx, size, right_ix, right_lcp, &entries[idx]);
130 void ProcessReferences(sarray_type* sarray, lcp_type* lcp, size_t size,
137 if (left_lcp == -1 || left_lcp > lcp[left_ix]) {
138 left_lcp = lcp[left_ix];
147 if (right_lcp == -1 || right_lcp > lcp[right_ix]) {
148 right_lcp = lcp[right_ix];
158 process_output(sarray, lcp, size, idx, left_ix, right_ix, left_lcp,
224 lcp_type* lcp = new lcp_type[input_size];
225 BuildLCP(storage, sarray, lcp, input_size, pos);
226 printf("LCP array constructed.\n");
245 ProcessReferences(sarray, lcp, input_size, pos,